Bug #49978 | Replication tests don't clean up replication state at the end | ||
---|---|---|---|
Submitted: | 29 Dec 2009 14:26 | Modified: | 30 Dec 2010 18:52 |
Reporter: | Nirbhay Choubey | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | Tools: MTR / mysql-test-run | Severity: | S3 (Non-critical) |
Version: | 5.1.42 | OS: | Any |
Assigned to: | Sven Sandberg | CPU Architecture: | Any |
[29 Dec 2009 14:26]
Nirbhay Choubey
[29 Dec 2009 14:28]
Nirbhay Choubey
test suite for the bug
Attachment: bug1.tar.gz (application/x-gzip, text), 499 bytes.
[29 Dec 2009 14:49]
MySQL Verification Team
Thank you for the bug report. Which source tree have you tested?. Thanks in advance.
[29 Dec 2009 17:24]
Nirbhay Choubey
Checked it with mysql-5.1.42 builds for linux-32bit and SunOS-SPARC-64bit platforms.
[29 Dec 2009 17:40]
Sveta Smirnova
Thank you for the feedback. First test fails in my environment with error: 091229 20:38:21 [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: 'Binary log is not open', Error_code: 1236 Also I don't see how MyISAM/InnoDB can be related to test which doesn't use any table. Please check if you uploaded correct tests.
[30 Dec 2009 20:30]
Sveta Smirnova
Thank you for the feedback. Fails as described with mysql-advanced-5.1.42-solaris10-sparc-64bit
[12 Jan 2010 11:11]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/96594 2876 Bjorn Munch 2010-01-12 Bug #49978 The second rpl test fails with myisam when first test does a 'change master' Added a 'stop slave' to the general include file master-slave-reset.inc
[12 Jan 2010 11:13]
Bjørn Munch
I was able to reproduce with 5.1 on my Solaris 10 x86 desktop. The added 'stop slave' fixed it. Also ran the whole test suite with this fix and saw no failures.
[19 Jan 2010 17:24]
Magnus Blåudd
Ideally the side effect caused by rpl_test1 should be detected by mtr, which should print a warning and all the restart all the servers before the next test. Such a side effect could be detected by adding a SHOW MASTER STATUS to the check-testcase.test file. It's up to the replication to review a change to master-slave-reset.inc I would say badly written test case and thus possibly not a bug.
[25 Jan 2010 15:28]
Sven Sandberg
I think test1.test is wrongly constructed. The general assumption is that tests clean up after themselves, and they don't need to restore state at the beginning. Unfortunately, this is far from what we really do though, especially with replication tests where I think it's quite common to have the slave still running at the end of the test. Now may be a good time to fix this. I agree with Magnus suggestion: we should make check_testcase detect this inconsistency. It should run 'SHOW SLAVE STATUS', see patch below. And then we probably have to fix a few tests so that they source master-slave-end.inc at the end. === modified file 'mysql-test/include/mtr_check.sql' --- mysql-test/include/mtr_check.sql 2009-03-31 13:39:40 +0000 +++ mysql-test/include/mtr_check.sql 2010-01-25 15:19:24 +0000 @@ -14,6 +14,8 @@ SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE variable_name != 'timestamp' ORDER BY VARIABLE_NAME; + SHOW SLAVE STATUS; + -- Dump all databases, there should be none -- except those that was created during bootstrap SELECT * FROM INFORMATION_SCHEMA.SCHEMATA;
[26 Jan 2010 10:23]
Bjørn Munch
I tried the suggestion of adding to mtr_check.sql but this causes ALL rpl tests (it seems) to complain, even if sourcing include/master-slave-end.inc at the end. The diff includes this (sorry if it gets badly wrapped): --- - 127.0.0.1 root 13000 1 4 slave-relay-bin.000001 4 No No 0 0 0 106 None 0 No NULL No 0 0 + 127.0.0.1 root 13000 1 master-bin.000001 1564 slave-relay-bin.000003 1710 master-bin.000001 No No --- The 'test1' from the original example does show a different diff with (again, looks messy): +Connecting to master 127.0.0.1 root 3306 60 4 mysqld-relay-bin.000001 4 No Yes 0 0 0 106 None
[26 Jan 2010 11:49]
Sven Sandberg
Bjorn: I think you need to do this: === modified file 'mysql-test/include/master-slave-end.inc' --- mysql-test/include/master-slave-end.inc 2006-04-12 13:56:29 +0000 +++ mysql-test/include/master-slave-end.inc 2010-01-26 11:48:48 +0000 @@ -3,4 +3,6 @@ --connection slave --disable_query_log STOP SLAVE; +--source include/wait_for_slave_to_stop +RESET SLAVE; --enable_query_log
[26 Jan 2010 12:06]
Bjørn Munch
Sven: tried that but there is still a diff albeit smaller: ---- - 127.0.0.1 root 13000 1 4 slave-relay-bin. 000001 4 No No 0 0 0 106 None 0 No NULL No 0 0 + 127.0.0.1 root 13000 1 4 slave-relay-bin. 000001 4 No No 0 0 0 125 None 0 No NULL No 0 0 ---- Some number (whatever it is) change from 106 to 125 during the course of the test.
[24 Feb 2010 16:00]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/101343 3372 Sven Sandberg 2010-02-24 BUG#49978: Made all check-testcase verify that replication state is reset after the test finishes. This includes the following changes: - Made check-testcase execute SHOW SLAVE STATUS - Made all tests source include/master-slave-end.inc - ... except circular replication tests, which use include/circular_rpl_end.inc instead - Refactored circular_rpl_end.inc so that it can be used by any number of hosts (in particular, by the existing tests that replicate between two hosts): rewrote include/circular_rpl_for_4_hosts_[init|sync].inc to work for arbitrary numbers of hosts; renamed these files to include/circular_rpl_[init|sync].inc; and made rpl_circular_for_4_hosts, rpl_dual_pos_advance, rpl_flushlog_loop use these files instead. - Made all tests clear Last_[SQL|IO]_Errno before they exit, if they need to. - Made have_innodb.inc output a sensible error message. - Small cleanups where it was needed in files we were touching anyways. @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/circular_rpl_end.inc Added file to clean up after circular replication. @ mysql-test/include/circular_rpl_init.inc Made file work for arbitrary number of servers replicating in a circle. @ mysql-test/include/circular_rpl_sync.inc Made file work for arbitrary number of servers replicating in a circle. @ mysql-test/include/cleanup_fake_relay_log.inc Use RESET SLAVE instead of manual file removal. This also resets other replication state. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/have_innodb.inc Made have_innodb.inc output a sensible error message. @ mysql-test/include/master-slave-end.inc Made master-slave-end.inc work even if one or both of the slave threads is stopped. @ mysql-test/include/master-slave-reset.inc Added assertion that master is not configured as slave (i.e., show slave status returns no rows), and removed call to reset slave on master. @ mysql-test/include/setup_fake_relay_log.inc Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. Added call to die in error case. @ mysql-test/include/sync_slave_io_with_master.inc Made file work with arbitrarily-named connections. @ mysql-test/include/wait_for_slave_param.inc Replaced exit by die. Made it print timeout seconds correctly in error message. @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Made test clean up replication state.Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Added explicit set of binlog_format to avoid useless re-run. @ mysql-test/suite/rpl/r/rpl_000015.result removed useless test. @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result Updated result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result Updated result file @ mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result updated result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result updated result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result Updated result file @ mysql-test/suite/rpl/r/rpl_packet.result Updated result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result updated result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result Updated result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_until.result updated result file @ mysql-test/suite/rpl/r/rpl_server_id1.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_status.result updated result file @ mysql-test/suite/rpl/r/rpl_ssl.result updated result file @ mysql-test/suite/rpl/r/rpl_ssl1.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_temporary.result updated result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result updated result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/t/rpl000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_000015-slave.opt removed useless test @ mysql-test/suite/rpl/t/rpl_000015.cnf removed useless test @ mysql-test/suite/rpl/t/rpl_000015.test Removed useless test. The test did the following: - connect to master and to slave - execute show master status and show slave status - create table, insert rows, and sync slave - check that master and slave have the same data All these are trivial things that hundreds of other tests do too. The test has no comments, the changeset where the test was created has no comments, and the file name is useless. So it was only a source of maintenance. @ mysql-test/suite/rpl/t/rpl_EE_err.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test Use circular_rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (master_[1234] instead of master_[abcd]), we use circular_rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, and we use the new circular_rpl_end.inc to clean up instead of doing it manually. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version-master.opt Got rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_concurrent.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_disabled_slave_key.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_reset_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test Made test clean up replication state. Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test Made test clean up replication state. Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_reset_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_until.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temporary.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_timezone.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables_stm.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state.
[26 Feb 2010 13:12]
Bjørn Munch
Tests giving check-testcase mismatches after patch for 49978
Attachment: 49978-fail (application/octet-stream, text), 3.35 KiB.
[26 Feb 2010 13:14]
Bjørn Munch
Good work! I tried this and got no test failures, but running full default test suite I hed 3 tests reporting check-test mismatches: binlog.binlog_auto_increment_bug33029 rpl.rpl_auto_increment_11932 binlog.binlog_sql_mode I have attached a file with the results from these. All these tests also report the problem if I run only that test.
[24 May 2010 8:42]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/109006 3452 Sven Sandberg 2010-05-24 BUG#49978: Made all check-testcase verify that replication state is reset after the test finishes. This includes the following changes: - Made check-testcase execute SHOW SLAVE STATUS - Made all tests source include/master-slave-end.inc - ... except circular replication tests, which use include/circular_rpl_end.inc instead - Refactored circular_rpl_end.inc so that it can be used by any number of hosts (in particular, by the existing tests that replicate between two hosts): rewrote include/circular_rpl_for_4_hosts_[init|sync].inc to work for arbitrary numbers of hosts; renamed these files to include/circular_rpl_[init|sync].inc; and made rpl_circular_for_4_hosts, rpl_dual_pos_advance, rpl_flushlog_loop use these files instead. - Made all tests clear Last_[SQL|IO]_Errno before they exit, if they need to. - Made have_innodb.inc output a sensible error message. - Small cleanups where it was needed in files we were touching anyways. @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/circular_rpl_end.inc Added file to clean up after circular replication. @ mysql-test/include/circular_rpl_init.inc Made file work for arbitrary number of servers replicating in a circle. @ mysql-test/include/circular_rpl_sync.inc Made file work for arbitrary number of servers replicating in a circle. @ mysql-test/include/cleanup_fake_relay_log.inc Use RESET SLAVE instead of manual file removal. This also resets other replication state. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/have_innodb.inc Made have_innodb.inc output a sensible error message. @ mysql-test/include/master-slave-end.inc Made master-slave-end.inc work even if one or both of the slave threads is stopped. @ mysql-test/include/master-slave-reset.inc Added assertion that master is not configured as slave (i.e., show slave status returns no rows), and removed call to reset slave on master. @ mysql-test/include/setup_fake_relay_log.inc Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. Added call to die in error case. @ mysql-test/include/sync_slave_io_with_master.inc Made file work with arbitrarily-named connections. @ mysql-test/include/wait_for_slave_param.inc Replaced exit by die. Made it print timeout seconds correctly in error message. @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Made test clean up replication state.Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Added explicit set of binlog_format to avoid useless re-run. @ mysql-test/suite/rpl/r/rpl_000015.result removed useless test. @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result Updated result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result Updated result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result updated result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result Updated result file @ mysql-test/suite/rpl/r/rpl_packet.result Updated result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result updated result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result Updated result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_until.result updated result file @ mysql-test/suite/rpl/r/rpl_server_id1.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_status.result updated result file @ mysql-test/suite/rpl/r/rpl_ssl.result updated result file @ mysql-test/suite/rpl/r/rpl_ssl1.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_temporary.result updated result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result updated result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/t/rpl000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_000015-slave.opt removed useless test @ mysql-test/suite/rpl/t/rpl_000015.cnf removed useless test @ mysql-test/suite/rpl/t/rpl_000015.test Removed useless test. The test did the following: - connect to master and to slave - execute show master status and show slave status - create table, insert rows, and sync slave - check that master and slave have the same data All these are trivial things that hundreds of other tests do too. The test has no comments, the changeset where the test was created has no comments, and the file name is useless. So it was only a source of maintenance. @ mysql-test/suite/rpl/t/rpl_EE_err.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test Use circular_rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (master_[1234] instead of master_[abcd]), we use circular_rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, and we use the new circular_rpl_end.inc to clean up instead of doing it manually. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version-master.opt Got rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_concurrent.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_disabled_slave_key.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_reset_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test Made test clean up replication state. Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test Made test clean up replication state. Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_reset_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_until.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temporary.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_timezone.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables_stm.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state.
[24 Jun 2010 17:31]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/112131 3442 Sven Sandberg 2010-06-24 BUG#49978: Replication tests don't clean up replication state at the end Major replication test framework cleanup. This does the following: - Ensure that all tests clean up the replication state when they finish, by making check-testcase check the output of SHOW SLAVE STATUS. This implies: - Slave must not be running after test finished. This is good because it removes the risk for sporadic errors in subsequent tests when a test forgets to sync correctly. - Slave SQL and IO errors must be cleared when test ends. This is good because we will notice if a test gets an unexpected error in the slave threads near the end. - We no longer have to clean up before a test starts. - Ensure that all tests that wait for an error in one of the slave threads waits for a specific error. It is no longer possible to source wait_for_slave_[sql|io]_to_stop.inc when there is an error in one of the slave threads. This is good because: - If a test expects an error but there is a bug that causes another error to happen, or if it stops the slave thread without an error, then we will notice. - When developing tests, wait_for_*_to_[start|stop].inc will fail immediately if there is an error in the relevant slave thread. Before this patch, we had to wait for the timeout. - Remove duplicated and repeated code for setting up unusual replication topologies. Now, there is a single file that is capable of setting up arbitrary topologies (include/rpl_init.inc, but include/master-slave.inc is still available for the most common topology). Tests can now end with include/rpl_end.inc, which will clean up correctly no matter what topology is used. The topology can be changed with include/rpl_change_topology.inc. - Improved debug information when tests fail. This includes: - debug info is printed on all servers configured by include/rpl_init.inc - User can set $rpl_debug=1, which makes auxiliary replication files print relevant debug info. - Improved documentation for all auxiliary replication files. Now they describe purpose, usage, parameters, and side effects. - Many small code cleanups: - Made have_innodb.inc output a sensible error message. - Moved contents of rpl000017-slave.sh into rpl000017.test - Too many to list here: see per-file comments for details. @ mysql-test/extra/rpl_tests/rpl_auto_increment.test Use rpl_reset.inc instead of master-slave-reset.inc @ mysql-test/extra/rpl_tests/rpl_ddl.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test - Replace 'start slave; wait_for_slave_to_start.inc' by include/start_slave.inc. - Reconnect on all connections, since the connections are used by rpl_end.inc. - Use wait_for_slave_param.inc instead of wait_for_slave_io_to_start.inc, since wait_for_slave_io_to_start.inc now fails if the IO thread has an error. In this particular test case, it is normal that the IO thread has an error. @ mysql-test/extra/rpl_tests/rpl_loaddata.test - Use wait_for_slave_sql_error.inc to wait for errors instead of wait_for_slave_sql_to_stop.inc - Use check_slave_no_error.inc instead of print errors to the log. - Use rpl_reset.inc instead of master-slave-reset.inc This means we have to clear the error from the slave threads by calling RESET SLAVE explicitly. @ mysql-test/extra/rpl_tests/rpl_log.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_ndb_apply_status.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_not_null.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_record_compare.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_reset_slave.test - replace wait_for_slave_io_error.inc+stop_slave.inc by wait_for_slave_io_error_and_stop.inc+stop_slave_sql.inc since stop_slave.inc now fails when the io thread has an error. - replace stop_slave.inc by STOP SLAVE + wait_for_slave_sql_to_stop.inc + wait_for_slave_param. stop_slave.inc would fail since the IO thread has an error. - add include/rpl_end.inc to clean up replication state @ mysql-test/extra/rpl_tests/rpl_row_UUID.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_row_basic.test - replaced reset_master_and_slave.inc by rpl_reset.inc - replaced sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_set_null.test replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/extra/rpl_tests/rpl_truncate_helper.test replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/include/analyze-sync_with_master.test improved debug output printed when sync_slave_with_master or sync_with_master fails @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/check_slave_is_running.inc - Use existing framework (check_slave_param.inc) instead of ad-hoc code to check value of slave parameters. - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_no_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_param.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/cleanup_fake_relay_log.inc - Use RESET SLAVE instead of manual file removal. This also resets other replication state. - verify that RESET SLAVE correctly removed files. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/have_innodb.inc Made have_innodb.inc print sensible message when innodb is not supported. @ mysql-test/include/master-slave.inc Use new rpl_init.inc file Now, we don't do 'drop table' in master-slave.inc any more. That's good because drop table has nothing to do with configuring replication servers. @ mysql-test/include/ndb_master-slave.inc use master-slave.inc instead of ad-hoc calls to 'connect' @ mysql-test/include/ndb_master-slave_2ch.inc use rpl_init.inc instead of ad-hoc setup @ mysql-test/include/ndb_not_readonly.inc turn off query log while executing this script. this was previously done by the caller. now it's done in the script. @ mysql-test/include/reset_master_and_slave.inc rpl_reset.inc replaces this file @ mysql-test/include/rpl_begin_include_file.inc New auxiliary file to be used by replication helper files like rpl_init.inc, stop_slave.inc, wait_for_slave_*.inc, etc. Such helper files should source rpl_begin_include_file.inc at the beginning and rpl_end_include_file.inc at the end. That adds the following features: - When a test sources the file, the file name is printed to the result file. This is good because it makes result files easier to follow. - When a helper file sources a second helper file recursively, then the name of the second file is not printed. This is good because it would make the result file harder to follow if all the internal calls of all helper files were printed. - When $rpl_debug is set, all internal calls are printed to the result file. This is good because it helps when debugging test cases. (With $rpl_debug=1, many of the helper files now print other relevant debug info too.) - When a file needs to turn off the query log or the warning log (disable_query_log/disable_warnings), then the file can tell rpl_begin_include_file.inc about it. Then rpl_begin_include_file.inc will turn off the log correctly, and rpl_end_include_file.inc will turn on the log correctly. Note that if rpl_a.inc sources rpl_b.inc and both files need to turn off the log, then the log is not turned on when rpl_b.inc ends (because rpl_a.inc still needs the log off). This makes it easier to program replication helper files. @ mysql-test/include/rpl_change_topology.inc New file to change replication topology on the fly. This is used by rpl_init.inc internally, but is also used by test cases that need to change topology (e.g., rpl.rpl_circular_for_4_hosts, which reconfigures the topology to make a failover). @ mysql-test/include/rpl_connect.inc New file to create a named connection. This file knows about a number of "standard" connections (master, slave, server_1, etc), and knows how each of them should normally be created. This is mostly used internally (e.g., by rpl_init.inc, master-slave.inc, ndb_master-slave_2ch.inc etc), but can also be used by tests that need to bring a connection up after disconnecting. @ mysql-test/include/rpl_connection.inc New file to change connection. This prints the name of the connection. However, for files that source rpl_begin_include_file.inc, it does not print the name of the connection unless $rpl_debug=1. This is good because printing something every time the .inc file changed connection would make the result log harder to read. @ mysql-test/include/rpl_end.inc Renamed master-slave-end.inc to rpl_end.inc, and made it work with arbitrary replication topologies (as configured with rpl_init.inc and possibly rpl_change_topology.inc). Also made it assert that no slave thread has an error. Made it assert that no slave thread is stopped, unless $rpl_only_running_threads=1. @ mysql-test/include/rpl_end_include_file.inc New file to be sourced at the end of auxiliary replication include files. See include/rpl_begin_include_file.inc for details. @ mysql-test/include/rpl_init.inc Made file work for arbitrary topologies instead of just 4-server circle. This file is used by master-slave.inc, rpl_master-slave_2ch.inc etc, and also by tests that need other specific replication topologies. @ mysql-test/include/rpl_reset.inc Made file work for arbitrary replication topologies, check for errors, and sync all threads. Also removed 'drop table' because that has nothing to do with replication. @ mysql-test/include/rpl_start_slaves.inc New auxiliary file to start all slaves configured by rpl_init.inc This is used internally by rpl_init.inc but may also be used by tests that want to bring all slaves up. @ mysql-test/include/rpl_stop_slaves.inc New auxiliary file to stop all slaves configured rpl_init.inc. This is used internally by rpl_end.inc, but may also be used by tests that want to stop all slaves. @ mysql-test/include/rpl_sync.inc Made file work for arbitrary replication topologies (as configured by rpl_init.inc and possibly rpl_change_topology.inc) instead of just 4-server circle. @ mysql-test/include/save_master_pos.inc Auxiliary file to save the master position. @ mysql-test/include/setup_fake_relay_log.inc Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. Added call to die in error case. @ mysql-test/include/show_rpl_debug_info.inc Made file print NOW() Made file print both SHOW MASTER STATUS and SHOW SLAVE STATUS. Made file print debug info for all connections configured by rpl_init.inc @ mysql-test/include/show_slave_status.inc - Made file use echo instead of SELECT to print variables. - Improved comments. - Use variable names that are less likely to be used by other tests. @ mysql-test/include/start_slave.inc - Made test use rpl_begin_include_file.inc to improve debug capabilities. - improved documentation @ mysql-test/include/stop_slave.inc - Made script capable to detect which threads are running and stop only those. - Improved documentation @ mysql-test/include/stop_slave_io.inc Added file to stop the slave IO thread. @ mysql-test/include/stop_slave_sql.inc Added file to stop the slave SQL thread. @ mysql-test/include/sync_io_with_master.inc Added file to sync the IO thread of the current connection, up to a previously saved position. @ mysql-test/include/sync_slave_io_with_master.inc - Made file work with arbitrarily-named connections. - Made file use rpl_begin_include_file.inc to improve debug capabilities. @ mysql-test/include/sync_slave_sql_with_io.inc Added file to sync only the SQL thread, up to the position copied in the IO thread. @ mysql-test/include/wait_for_query_to_fail.inc Added file to wait for a query to fail. @ mysql-test/include/wait_for_slave_io_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Use existing atom include/show_slave_status.inc to print error message. - Improve comments. @ mysql-test/include/wait_for_slave_io_error_and_stop.inc Added file that waits for the slave IO thread to reach an error state, and then stop it. For some errors, the IO thread does not stop automatically; instead it tries to reconnect. @ mysql-test/include/wait_for_slave_io_to_start.inc - Made script fail if the IO thread has an error. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_io_to_stop.inc - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_param.inc - Added $slave_error_param. This variable can be set to Slave_IO_Errno or Slave_SQL_Errno, in which case the script fails if the corresponding column in the output from SHOW SLAVE STATUS is nonzero. - Replaced exit by die. - Made it print timeout seconds correctly in error message. - Removed $slave_error_message. This is not needed. - Use rpl_begin_include_file.inc for better debug capabilities. @ mysql-test/include/wait_for_slave_sql_error.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation - Use existing atom show_slave_status.inc to print error. @ mysql-test/include/wait_for_slave_sql_error_and_skip.inc - Use rpl_begin_include_file.inc and rpl_connection.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_stop.inc - Fail if Last_SQL_Errno is nonzero. - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_stop.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sql_mode.result updated result file @ mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt This test replicates, so it should be in the rpl suite. Then we can remove this .opt file too. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Since test sets binlog_format internally, it's useless to re-run it. Hence we source have_binlog_format_statement.inc @ mysql-test/suite/binlog/t/binlog_sql_mode.test - Test does not use replication, so we remove master-slave.inc. - mysqltest magically adds --force-if-open to $MYSQL_BINLOG in test files that source master-slave.inc. So now we have to add --force-if-open explicitly. @ mysql-test/suite/parts/t/rpl_partition.test Make test clean up replication state. @ mysql-test/suite/rpl/r/rpl000010.result update result file @ mysql-test/suite/rpl/r/rpl000011.result update result file @ mysql-test/suite/rpl/r/rpl000013.result update result file @ mysql-test/suite/rpl/r/rpl000017.result update result file @ mysql-test/suite/rpl/r/rpl_EE_err.result update result file @ mysql-test/suite/rpl/r/rpl_LD_INFILE.result update result file @ mysql-test/suite/rpl/r/rpl_alter.result update result file @ mysql-test/suite/rpl/r/rpl_alter_db.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_11932.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result update result file @ mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file update result file @ mysql-test/suite/rpl/r/rpl_binlog_grant.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result fileupdate result file @ mysql-test/suite/rpl/r/rpl_bit.result update result file @ mysql-test/suite/rpl/r/rpl_bit_npk.result update result file @ mysql-test/suite/rpl/r/rpl_blackhole.result update result file @ mysql-test/suite/rpl/r/rpl_bug26395.result update result file @ mysql-test/suite/rpl/r/rpl_bug31076.result update result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result fileupdate result file @ mysql-test/suite/rpl/r/rpl_bug38694.result update result file @ mysql-test/suite/rpl/r/rpl_change_master.result update result file @ mysql-test/suite/rpl/r/rpl_charset.result update result file @ mysql-test/suite/rpl/r/rpl_charset_sjis.result update result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_commit_after_flush.result update result file @ mysql-test/suite/rpl/r/rpl_concurrency_error.result update result file @ mysql-test/suite/rpl/r/rpl_create_database.result update result file @ mysql-test/suite/rpl/r/rpl_create_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result fileupdate result file @ mysql-test/suite/rpl/r/rpl_deadlock_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_delete_no_where.result update result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_drop.result update result file @ mysql-test/suite/rpl/r/rpl_drop_db.result update result file @ mysql-test/suite/rpl/r/rpl_drop_temp.result update result file @ mysql-test/suite/rpl/r/rpl_drop_view.result update result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result update result file @ mysql-test/suite/rpl/r/rpl_empty_master_crash.result update result file @ mysql-test/suite/rpl/r/rpl_err_ignoredtable.result update result file @ mysql-test/suite/rpl/r/rpl_events.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_failed_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result update result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result update result file @ mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_found_rows.result update result file @ mysql-test/suite/rpl/r/rpl_free_items.result update result file @ mysql-test/suite/rpl/r/rpl_geometry.result update result file @ mysql-test/suite/rpl/r/rpl_get_lock.result update result file @ mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result update result file @ mysql-test/suite/rpl/r/rpl_grant.result update result file @ mysql-test/suite/rpl/r/rpl_idempotency.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_grant.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_revoke.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table_update.result update result file @ mysql-test/suite/rpl/r/rpl_incident.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result update result file @ mysql-test/suite/rpl/r/rpl_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug28430.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug30888.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result update result file @ mysql-test/suite/rpl/r/rpl_insert.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id_pk.result update result file @ mysql-test/suite/rpl/r/rpl_insert_ignore.result update result file @ mysql-test/suite/rpl/r/rpl_insert_select.result update result file @ mysql-test/suite/rpl/r/rpl_invoked_features.result update result file @ mysql-test/suite/rpl/r/rpl_killed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result update result file @ mysql-test/suite/rpl/r/rpl_load_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_load_table_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_charset.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_concurrent.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_fatal.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_m.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_map.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_s.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_simple.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_symlink.result update result file @ mysql-test/suite/rpl/r/rpl_loaddatalocal.result update result file @ mysql-test/suite/rpl/r/rpl_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_locale.result update result file @ mysql-test/suite/rpl/r/rpl_log_pos.result update result file @ mysql-test/suite/rpl/r/rpl_manual_change_index_file.result update result file @ mysql-test/suite/rpl/r/rpl_many_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_master_pos_wait.result update result file @ mysql-test/suite/rpl/r/rpl_misc_functions.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_engine.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update3.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update4.result update result file @ mysql-test/suite/rpl/r/rpl_mysql_upgrade.result update result file @ mysql-test/suite/rpl/r/rpl_name_const.result update result file @ mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_packet.result update result file @ mysql-test/suite/rpl/r/rpl_plugin_load.result update result file @ mysql-test/suite/rpl/r/rpl_ps.result update result file @ mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result update result file @ mysql-test/suite/rpl/r/rpl_read_only.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_relayrotate.result update result file @ mysql-test/suite/rpl/r/rpl_relayspace.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_do.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result update result file @ mysql-test/suite/rpl/r/rpl_report.result update result file @ mysql-test/suite/rpl/r/rpl_rewrt_db.result update result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result update result file @ mysql-test/suite/rpl/r/rpl_row_001.result update result file @ mysql-test/suite/rpl/r/rpl_row_4_bytes.result update result file @ mysql-test/suite/rpl/r/rpl_row_NOW.result update result file @ mysql-test/suite/rpl/r/rpl_row_USER.result update result file @ mysql-test/suite/rpl/r/rpl_row_UUID.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_8partition.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_row_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_row_delayed_ins.result update result file @ mysql-test/suite/rpl/r/rpl_row_drop.result update result file @ mysql-test/suite/rpl/r/rpl_row_find_row.result update result file @ mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_row_func001.result update result file @ mysql-test/suite/rpl/r/rpl_row_func002.result update result file @ mysql-test/suite/rpl/r/rpl_row_func003.result update result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_row_log.result update result file @ mysql-test/suite/rpl/r/rpl_row_log_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp001.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp003.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp005.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp008.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp009.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp010.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp011.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp012.result update result file @ mysql-test/suite/rpl/r/rpl_row_stop_middle_update.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig001.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig002.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig003.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig004.result update result file @ mysql-test/suite/rpl/r/rpl_row_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result update result file @ mysql-test/suite/rpl/r/rpl_row_until.result update result file @ mysql-test/suite/rpl/r/rpl_row_view01.result update result file @ mysql-test/suite/rpl/r/rpl_row_wide_table.result update result file @ mysql-test/suite/rpl/r/rpl_server_id1.result update result file @ mysql-test/suite/rpl/r/rpl_server_id2.result update result file @ mysql-test/suite/rpl/r/rpl_session_var.result update result file @ mysql-test/suite/rpl/r/rpl_set_charset.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_show_slave_running.result update result file @ mysql-test/suite/rpl/r/rpl_skip_error.result update result file @ mysql-test/suite/rpl/r/rpl_slave_grp_exec.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_in.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_skip.result update result file @ mysql-test/suite/rpl/r/rpl_slave_status.result update result file @ mysql-test/suite/rpl/r/rpl_slow_query_log.result update result file @ mysql-test/suite/rpl/r/rpl_sp.result update result file @ mysql-test/suite/rpl/r/rpl_sp004.result update result file @ mysql-test/suite/rpl/r/rpl_sp_effects.result update result file @ mysql-test/suite/rpl/r/rpl_sporadic_master.result update result file @ mysql-test/suite/rpl/r/rpl_ssl.result update result file @ mysql-test/suite/rpl/r/rpl_ssl1.result update result file @ mysql-test/suite/rpl/r/rpl_start_stop_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_000001.result update result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_stm_binlog_direct.result update result file @ mysql-test/suite/rpl/r/rpl_stm_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_stm_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_stm_log.result update result file @ mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result update result file @ mysql-test/suite/rpl/r/rpl_stm_multi_query.result update result file @ mysql-test/suite/rpl/r/rpl_stm_no_op.result update result file @ mysql-test/suite/rpl/r/rpl_stm_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_sql_mode.result update result file @ mysql-test/suite/rpl/r/rpl_stm_until.result update result file @ mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result update result file @ mysql-test/suite/rpl/r/rpl_temporary.result update result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result update result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result update result file @ mysql-test/suite/rpl/r/rpl_trigger.result update result file @ mysql-test/suite/rpl/r/rpl_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_typeconv_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_udf.result update result file @ mysql-test/suite/rpl/r/rpl_user.result update result file @ mysql-test/suite/rpl/r/rpl_user_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables_stm.result update result file @ mysql-test/suite/rpl/r/rpl_view.result update result file @ mysql-test/suite/rpl/t/rpl000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_EE_err.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_bug33029.test - This test replicates, so moved it to rpl suite. - This test uses a fake relay log, so use include/setup_fake_relay_log.inc and cleanup_fake_relay_log.inc instead of ad-hoc code. - Made test clean up replication state (rpl_end.inc) @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test renamed rpl_end.inc to master-slave-end.inc @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test - Use rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (server_[1234] instead of master_[abcd]), we use rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, we use the new rpl_end.inc to clean up instead of doing it manually, and we use rpl_change_topology.inc instead of manual reconfiguration. - Added comment to make test understandable. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_create_tmp_table_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version-master.opt Got rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. renamed master-slave-end.inc to rpl_end.inc use include/check_slave_no_error.inc instead of ad-hoc construction @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_geometry.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_idempotency.test use check_slave_no_error.inc instead of ad-hoc tests use wait_for_slave_sql_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug28430.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug30888.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test Made test clean up replication state. removed wait_for_slave_sql_to_stop.inc, because it already does wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_concurrent.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test Made test clean up replication state. replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. replace stop_slave.inc by stop_slave_sql.inc since the io thread is already stopped. @ mysql-test/suite/rpl/t/rpl_manual_change_index_file.test use wait_for_slave_io_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test Made test clean up replication state. replace wait_for_slave_io_to_stop.inc by wait_for_slave_io_error.inc replace master-slave-reset.inc by rpl_reset.inc + drop table t1. @ mysql-test/suite/rpl/t/rpl_plugin_load.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. removed lots os useless junk @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - removed useless cleanup at beginning of test - did not make test use the standard replication framework (master-slave.inc + rpl_end.inc), because it won't work. i don' know why. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_conflicts.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_create_table.test replace master-slave-end.inc by rpl_end.inc replace master-slave-reset.inc by rpl_reset.inc replace long sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_find_row.test Made test clean up replication state. replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. replace wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_rec_comp_myisam.test replace master-slave-reset.inc by rpl_reset.inc Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test replaced master-slave-reset.inc by rpl_reset.inc replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trunc_temp.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test Replaced ad-hoc setup of circular replication by call to rpl_init.inc Made test clean up replication state. Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_show_slave_running.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc - replaced stop_slave.inc by stop_slave_io.inc where the sql thread was already stopped. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test Made test clean up replication state. Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc Replaced ad-hoc repliction setup by call to master-slave.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. replaced check that IO thread has stopped by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state, and replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_conflicts.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test replaced master-slave-end.inc by rpl_end.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_reset_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_sql_mode.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_stm_until.test - Made test clean up replication state. - replaced master-slave-reset.inc by rpl_reset.inc - the relay log is now called slave-relay-bin.000003 instead of .000004, because master-slave.inc doesn't rotate it as much as before. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. replaced ad-hoc call to 'connect' by include/rpl_connect.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_temporary.test Made test clean up replication state. This test sources include/delete_anonymous_users.inc on master. This means it updates the user table in the mysql database manually on the master. This causes failure in the slave sql thread when binlog_format=row. Hence, we stop the slave first and source include/delete_anonymous_users.inc on both master and slave. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_timezone.test - Made test clean up replication state. - stop slave before last sub-test, because that test does not use the slave connection. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test - Made test clean up replication state. - replace master-slave-reset.inc by rpl_reset.inc - the rpl_end.inc and rpl_reset.inc scripts use the connections server_1 and server_2. hence, we must reconnect to those after the server has been restarted. @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_typeconv_innodb.test made test clean up replication state removed unnecessary call to master-slave-reset.inc @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_variables_stm.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state. @ mysql-test/suite/rpl_ndb/r/rpl_ndb_2other.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_UUID.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_apply_status.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_auto_inc.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_2ch.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_simplex.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_commit_afterflush.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ctype_ucs2_def.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_delete_nowhere.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_db.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_table.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_func003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_idempotent.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb_trans.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_insert_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_log.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_engines_transactions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_tables.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update3.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_rep_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_row_001.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_set_null.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp006.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_stm_innodb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sync.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_trig004.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_row_basic_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2innodb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2myisam.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2ndb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2other.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_UUID.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_apply_status.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_auto_inc.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_bank.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_basic.test replaced master-slave-end.inc by rpl_end.inc removed wait_for_slave_sql_to_stop since it is followed by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob2.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular.test made test use rpl_init.inc to setup circular replication, instead of ad-hoc setup made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.cnf removed automatic configuration of server as slave. this is not needed because rpl_init.inc does it. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.test made test clean up replication state it seems that sync_slave_with_master does not work deterministically here, so instead we wait for 'drop table' to replicate by checking when the table disappears on slave. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_simplex.test make test clean up replication state use rpl_change_topology.inc to reconfigure replication topology, instead of ad-hoc call to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_commit_afterflush.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ctype_ucs2_def.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_basic.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_partitions.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ddl.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_delete_nowhere.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_db.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_table.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_extraCol.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_func003.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_idempotent.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb_trans.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_insert_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_load.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_log.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_engines_transactions.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_tables.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi.test make test clean up replication state use rpl_change_topology.inc to change replication topology, instead of ad-hoc calls to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update2.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update3.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_rep_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_row_001.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_set_null.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp003.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp006.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_stm_innodb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sync.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_trig004.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndbapi_multi.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_row_basic_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2.test make test clean up replication state
[12 Jul 2010 17:46]
Sven Sandberg
I timed the rpl suite once before and once after patch. Before: real 49m33.513s user 10m59.061s sys 4m35.101s After: real 47m26.491s user 10m58.529s sys 4m40.746s So no significant difference (the small improvement is probably within the error margin).
[13 Jul 2010 7:23]
Bjørn Munch
I get different results running on my OpenSolaris desktop with --parallel=4. Averaged over two runs, roughly: before: spent 500/560s, 203 user, 103 sys after: spent 560/590s, 246 user, 121 sys So it uses about 20% more CPU in total, takes 12% longer to run the test scripts, and 5-6% longer to finish the whole suite. I had to remove one test that failed after the patch and it also says 472 (vs. 482) tests had been run.
[26 Jul 2010 13:33]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/114350 3497 Sven Sandberg 2010-07-26 BUG#49978: Replication tests don't clean up replication state at the end Major replication test framework cleanup. This does the following: - Ensure that all tests clean up the replication state when they finish, by making check-testcase check the output of SHOW SLAVE STATUS. This implies: - Slave must not be running after test finished. This is good because it removes the risk for sporadic errors in subsequent tests when a test forgets to sync correctly. - Slave SQL and IO errors must be cleared when test ends. This is good because we will notice if a test gets an unexpected error in the slave threads near the end. - We no longer have to clean up before a test starts. - Ensure that all tests that wait for an error in one of the slave threads waits for a specific error. It is no longer possible to source wait_for_slave_[sql|io]_to_stop.inc when there is an error in one of the slave threads. This is good because: - If a test expects an error but there is a bug that causes another error to happen, or if it stops the slave thread without an error, then we will notice. - When developing tests, wait_for_*_to_[start|stop].inc will fail immediately if there is an error in the relevant slave thread. Before this patch, we had to wait for the timeout. - Remove duplicated and repeated code for setting up unusual replication topologies. Now, there is a single file that is capable of setting up arbitrary topologies (include/rpl_init.inc, but include/master-slave.inc is still available for the most common topology). Tests can now end with include/rpl_end.inc, which will clean up correctly no matter what topology is used. The topology can be changed with include/rpl_change_topology.inc. - Improved debug information when tests fail. This includes: - debug info is printed on all servers configured by include/rpl_init.inc - User can set $rpl_debug=1, which makes auxiliary replication files print relevant debug info. - Improved documentation for all auxiliary replication files. Now they describe purpose, usage, parameters, and side effects. - Many small code cleanups: - Made have_innodb.inc output a sensible error message. - Moved contents of rpl000017-slave.sh into rpl000017.test - Too many to list here: see per-file comments for details. @ mysql-test/extra/rpl_tests/rpl_auto_increment.test Use rpl_reset.inc instead of master-slave-reset.inc @ mysql-test/extra/rpl_tests/rpl_ddl.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test - Replace 'start slave; wait_for_slave_to_start.inc' by include/start_slave.inc. - Use new file rpl_connect.inc to reconnect on all connections, since the connections are used by rpl_end.inc. - Use wait_for_slave_param.inc instead of wait_for_slave_io_to_start.inc, since wait_for_slave_io_to_start.inc now fails if the IO thread has an error. In this particular test case, it is normal that the IO thread has an error. @ mysql-test/extra/rpl_tests/rpl_loaddata.test - Use wait_for_slave_sql_error.inc to wait for errors instead of wait_for_slave_sql_to_stop.inc - Use check_slave_no_error.inc instead of print errors to the log. - Use rpl_reset.inc instead of master-slave-reset.inc This means we have to clear the error from the slave threads by calling RESET SLAVE explicitly. @ mysql-test/extra/rpl_tests/rpl_log.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_ndb_apply_status.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_not_null.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_record_compare.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_reset_slave.test - replace wait_for_slave_io_error.inc+stop_slave.inc by wait_for_slave_io_error_and_stop.inc+stop_slave_sql.inc since stop_slave.inc now fails when the io thread has an error. - replace stop_slave.inc by STOP SLAVE + wait_for_slave_sql_to_stop.inc + wait_for_slave_param. stop_slave.inc would fail since the IO thread has an error. - add include/rpl_end.inc to clean up replication state @ mysql-test/extra/rpl_tests/rpl_row_UUID.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_row_basic.test - replaced reset_master_and_slave.inc by rpl_reset.inc - replaced sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_set_null.test replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/extra/rpl_tests/rpl_test_framework.inc Auxiliary file used by rpl_test_framework.test. This checks that rpl_change_topology.inc works correctly. @ mysql-test/extra/rpl_tests/rpl_truncate_helper.test replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/include/analyze-sync_with_master.test improved debug output printed when sync_slave_with_master or sync_with_master fails @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/check_slave_is_running.inc - Use existing framework (check_slave_param.inc) instead of ad-hoc code to check value of slave parameters. - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_no_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_param.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/cleanup_fake_relay_log.inc - Use RESET SLAVE instead of manual file removal. This also resets other replication state. - verify that RESET SLAVE correctly removed files. @ mysql-test/include/diff_tables.inc Use rpl_begin_include_file.inc to improve debug capabilities. Improved documentation. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/have_innodb.inc Made have_innodb.inc print sensible message when innodb is not supported. @ mysql-test/include/kill_query_and_diff_master_slave.inc Renamed diff_master_slave.inc to rpl_diff.inc @ mysql-test/include/master-slave.inc Use new rpl_init.inc file Now, we don't do 'drop table' in master-slave.inc any more. That's good because drop table has nothing to do with configuring replication servers. @ mysql-test/include/ndb_master-slave.inc use master-slave.inc instead of ad-hoc calls to 'connect' @ mysql-test/include/ndb_master-slave_2ch.inc use rpl_init.inc instead of ad-hoc setup @ mysql-test/include/ndb_not_readonly.inc turn off query log while executing this script. this was previously done by the caller. now it's done in the script. @ mysql-test/include/report-features.test add newline at end of file @ mysql-test/include/reset_master_and_slave.inc rpl_reset.inc replaces this file @ mysql-test/include/rpl_begin_include_file.inc New auxiliary file to be used by replication helper files like rpl_init.inc, stop_slave.inc, wait_for_slave_*.inc, etc. Such helper files should source rpl_begin_include_file.inc at the beginning and rpl_end_include_file.inc at the end. That adds the following features: - When a test sources the file, the file name is printed to the result file. This is good because it makes result files easier to follow. - When a helper file sources a second helper file recursively, then the name of the second file is not printed. This is good because it would make the result file harder to follow if all the internal calls of all helper files were printed. - When $rpl_debug is set, all internal calls are printed to the result file. This is good because it helps when debugging test cases. (With $rpl_debug=1, many of the helper files now print other relevant debug info too.) - When a file needs to turn off the query log or the warning log (disable_query_log/disable_warnings), then the file can tell rpl_begin_include_file.inc about it. Then rpl_begin_include_file.inc will turn off the log correctly, and rpl_end_include_file.inc will turn on the log correctly. Note that if rpl_a.inc sources rpl_b.inc and both files need to turn off the log, then the log is not turned on when rpl_b.inc ends (because rpl_a.inc still needs the log off). This makes it easier to program replication helper files. @ mysql-test/include/rpl_change_topology.inc New file to change replication topology on the fly. This is used by rpl_init.inc internally, but is also used by test cases that need to change topology (e.g., rpl.rpl_circular_for_4_hosts, which reconfigures the topology to make a failover). @ mysql-test/include/rpl_connect.inc New file to create a named connection. This file knows about a number of "standard" connections (master, slave, server_1, etc), and knows how each of them should normally be created. This is mostly used internally (e.g., by rpl_init.inc, master-slave.inc, ndb_master-slave_2ch.inc etc), but can also be used by tests that need to bring a connection up after disconnecting. @ mysql-test/include/rpl_connection.inc New file to change connection. This prints the name of the connection. However, for files that source rpl_begin_include_file.inc, it does not print the name of the connection unless $rpl_debug=1. This is good because printing something every time the .inc file changed connection would make the result log harder to read. @ mysql-test/include/rpl_diff.inc - Made file capable to compare many servers - Hence renamed it to rpl_diff.inc - If no server list is specified, use all servers from server_1 to server_$rpl_server_count - It now writes the statement to file before executing it. That means it will be subject to SQL string interpolation, but not shell string interpolation (which may be platform-dependent) @ mysql-test/include/rpl_diff_tables.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Don't sync, because syncing and diffing are different things - Improve documentation - Restore previous connection at end of script. @ mysql-test/include/rpl_end.inc Renamed master-slave-end.inc to rpl_end.inc, and made it work with arbitrary replication topologies (as configured with rpl_init.inc and possibly rpl_change_topology.inc). Also made it assert that no slave thread has an error. Made it assert that no slave thread is stopped, unless $rpl_only_running_threads=1. @ mysql-test/include/rpl_end_include_file.inc New file to be sourced at the end of auxiliary replication include files. See include/rpl_begin_include_file.inc for details. @ mysql-test/include/rpl_init.inc Made file work for arbitrary topologies instead of just 4-server circle. This file is used by master-slave.inc, rpl_master-slave_2ch.inc etc, and also by tests that need other specific replication topologies. @ mysql-test/include/rpl_reconnect.inc New auxiliary file that will reconnect many clients to a given server. All clients configured by rpl_init.inc will reconnect. @ mysql-test/include/rpl_reset.inc Made file work for arbitrary replication topologies, check for errors, and sync all threads. Also removed 'drop table' because that has nothing to do with replication. @ mysql-test/include/rpl_start_slaves.inc New auxiliary file to start all slaves configured by rpl_init.inc This is used internally by rpl_init.inc but may also be used by tests that want to bring all slaves up. @ mysql-test/include/rpl_stop_slaves.inc New auxiliary file to stop all slaves configured rpl_init.inc. This is used internally by rpl_end.inc, but may also be used by tests that want to stop all slaves. @ mysql-test/include/rpl_sync.inc Made file work for arbitrary replication topologies (as configured by rpl_init.inc and possibly rpl_change_topology.inc) instead of just 4-server circle. @ mysql-test/include/save_master_pos.inc Auxiliary file to save the master position. @ mysql-test/include/setup_fake_relay_log.inc - Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. - Added call to die in error case. @ mysql-test/include/show_rpl_debug_info.inc Made file print NOW() Made file print both SHOW MASTER STATUS and SHOW SLAVE STATUS. Made file print debug info for all servers configured by rpl_init.inc @ mysql-test/include/show_slave_status.inc - Made file use echo instead of SELECT to print variables. - Improved comments. - Use variable names that are less likely to be used by other tests. @ mysql-test/include/start_slave.inc - Made test use rpl_begin_include_file.inc to improve debug capabilities. - improved documentation @ mysql-test/include/stop_slave.inc - Made script capable to detect which threads are running and stop only those. - Improved documentation @ mysql-test/include/stop_slave_io.inc Added file to stop the slave IO thread. @ mysql-test/include/stop_slave_sql.inc Added file to stop the slave SQL thread. @ mysql-test/include/sync_io_with_master.inc Added file to sync the IO thread of the current connection, up to a previously saved position. @ mysql-test/include/sync_slave_io_with_master.inc - Made file work with arbitrarily-named connections. - Made file use rpl_begin_include_file.inc to improve debug capabilities. @ mysql-test/include/sync_slave_sql_with_io.inc Added file to sync only the SQL thread, up to the position copied in the IO thread. @ mysql-test/include/wait_for_query_to_fail.inc Added file to wait for a query to fail. @ mysql-test/include/wait_for_slave_io_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Use existing atom include/show_slave_status.inc to print error message. - Improve comments. @ mysql-test/include/wait_for_slave_io_error_and_stop.inc Added file that waits for the slave IO thread to reach an error state, and then stop it. For some errors, the IO thread does not stop automatically; instead it tries to reconnect. @ mysql-test/include/wait_for_slave_io_to_start.inc - Made script fail if the IO thread has an error. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_io_to_stop.inc - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_param.inc - Added $slave_error_param. This variable can be set to Slave_IO_Errno or Slave_SQL_Errno, in which case the script fails if the corresponding column in the output from SHOW SLAVE STATUS is nonzero. - Replaced exit by die. - Made it print timeout seconds correctly in error message. - Removed $slave_error_message. This is not needed. - Use rpl_begin_include_file.inc for better debug capabilities. @ mysql-test/include/wait_for_slave_sql_error.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation - Use existing atom show_slave_status.inc to print error. @ mysql-test/include/wait_for_slave_sql_error_and_skip.inc - Use rpl_begin_include_file.inc and rpl_connection.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_stop.inc - Fail if Last_SQL_Errno is nonzero. - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_stop.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/r/mysqldump_restore.result update result file @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sql_mode.result updated result file @ mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt This test replicates, so it should be in the rpl suite. Then we can remove this .opt file too. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Since test sets binlog_format internally, it's useless to re-run it. Hence we source have_binlog_format_statement.inc @ mysql-test/suite/binlog/t/binlog_sql_mode.test - Test does not use replication, so we remove master-slave.inc. - mysqltest magically adds --force-if-open to $MYSQL_BINLOG in test files that source master-slave.inc. So now we have to add --force-if-open explicitly. @ mysql-test/suite/parts/t/rpl_partition.test Make test clean up replication state. @ mysql-test/suite/rpl/r/rpl000010.result update result file @ mysql-test/suite/rpl/r/rpl000011.result update result file @ mysql-test/suite/rpl/r/rpl000013.result update result file @ mysql-test/suite/rpl/r/rpl000017.result update result file @ mysql-test/suite/rpl/r/rpl_EE_err.result update result file @ mysql-test/suite/rpl/r/rpl_LD_INFILE.result update result file @ mysql-test/suite/rpl/r/rpl_alter.result update result file @ mysql-test/suite/rpl/r/rpl_alter_db.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_11932.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result update result file @ mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file @ mysql-test/suite/rpl/r/rpl_binlog_grant.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result file @ mysql-test/suite/rpl/r/rpl_bit.result update result file @ mysql-test/suite/rpl/r/rpl_bit_npk.result update result file @ mysql-test/suite/rpl/r/rpl_blackhole.result update result file @ mysql-test/suite/rpl/r/rpl_bug26395.result update result file @ mysql-test/suite/rpl/r/rpl_bug31076.result update result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result file @ mysql-test/suite/rpl/r/rpl_bug38694.result update result file @ mysql-test/suite/rpl/r/rpl_change_master.result update result file @ mysql-test/suite/rpl/r/rpl_charset.result update result file @ mysql-test/suite/rpl/r/rpl_charset_sjis.result update result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_commit_after_flush.result update result file @ mysql-test/suite/rpl/r/rpl_concurrency_error.result update result file @ mysql-test/suite/rpl/r/rpl_create_database.result update result file @ mysql-test/suite/rpl/r/rpl_create_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result file @ mysql-test/suite/rpl/r/rpl_current_user.result update result file @ mysql-test/suite/rpl/r/rpl_deadlock_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_delete_no_where.result update result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_drop.result update result file @ mysql-test/suite/rpl/r/rpl_drop_db.result update result file @ mysql-test/suite/rpl/r/rpl_drop_temp.result update result file @ mysql-test/suite/rpl/r/rpl_drop_view.result update result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result update result file @ mysql-test/suite/rpl/r/rpl_empty_master_crash.result update result file @ mysql-test/suite/rpl/r/rpl_err_ignoredtable.result update result file @ mysql-test/suite/rpl/r/rpl_events.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_failed_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result update result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result update result file @ mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_found_rows.result update result file @ mysql-test/suite/rpl/r/rpl_free_items.result update result file @ mysql-test/suite/rpl/r/rpl_geometry.result update result file @ mysql-test/suite/rpl/r/rpl_get_lock.result update result file @ mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result update result file @ mysql-test/suite/rpl/r/rpl_grant.result update result file @ mysql-test/suite/rpl/r/rpl_idempotency.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_grant.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_revoke.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table_update.result update result file @ mysql-test/suite/rpl/r/rpl_incident.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result update result file @ mysql-test/suite/rpl/r/rpl_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug28430.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug30888.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result update result file @ mysql-test/suite/rpl/r/rpl_insert.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id_pk.result update result file @ mysql-test/suite/rpl/r/rpl_insert_ignore.result update result file @ mysql-test/suite/rpl/r/rpl_insert_select.result update result file @ mysql-test/suite/rpl/r/rpl_invoked_features.result update result file @ mysql-test/suite/rpl/r/rpl_killed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result update result file @ mysql-test/suite/rpl/r/rpl_load_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_load_table_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_charset.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_concurrent.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_fatal.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_m.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_map.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_s.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_simple.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_symlink.result update result file @ mysql-test/suite/rpl/r/rpl_loaddatalocal.result update result file @ mysql-test/suite/rpl/r/rpl_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_locale.result update result file @ mysql-test/suite/rpl/r/rpl_log_pos.result update result file @ mysql-test/suite/rpl/r/rpl_manual_change_index_file.result update result file @ mysql-test/suite/rpl/r/rpl_many_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_master_pos_wait.result update result file @ mysql-test/suite/rpl/r/rpl_misc_functions.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_engine.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update3.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update4.result update result file @ mysql-test/suite/rpl/r/rpl_mysql_upgrade.result update result file @ mysql-test/suite/rpl/r/rpl_name_const.result update result file @ mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_packet.result update result file @ mysql-test/suite/rpl/r/rpl_plugin_load.result update result file @ mysql-test/suite/rpl/r/rpl_ps.result update result file @ mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result update result file @ mysql-test/suite/rpl/r/rpl_read_only.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_relayrotate.result update result file @ mysql-test/suite/rpl/r/rpl_relayspace.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_do.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result update result file @ mysql-test/suite/rpl/r/rpl_report.result update result file @ mysql-test/suite/rpl/r/rpl_rewrt_db.result update result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result update result file @ mysql-test/suite/rpl/r/rpl_row_001.result update result file @ mysql-test/suite/rpl/r/rpl_row_4_bytes.result update result file @ mysql-test/suite/rpl/r/rpl_row_NOW.result update result file @ mysql-test/suite/rpl/r/rpl_row_USER.result update result file @ mysql-test/suite/rpl/r/rpl_row_UUID.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_8partition.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_row_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_row_delayed_ins.result update result file @ mysql-test/suite/rpl/r/rpl_row_drop.result update result file @ mysql-test/suite/rpl/r/rpl_row_find_row.result update result file @ mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_row_func001.result update result file @ mysql-test/suite/rpl/r/rpl_row_func002.result update result file @ mysql-test/suite/rpl/r/rpl_row_func003.result update result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_row_log.result update result file @ mysql-test/suite/rpl/r/rpl_row_log_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp001.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp003.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp005.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp008.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp009.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp010.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp011.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp012.result update result file @ mysql-test/suite/rpl/r/rpl_row_stop_middle_update.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig001.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig002.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig003.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig004.result update result file @ mysql-test/suite/rpl/r/rpl_row_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result update result file @ mysql-test/suite/rpl/r/rpl_row_until.result update result file @ mysql-test/suite/rpl/r/rpl_row_view01.result update result file @ mysql-test/suite/rpl/r/rpl_row_wide_table.result update result file @ mysql-test/suite/rpl/r/rpl_server_id1.result update result file @ mysql-test/suite/rpl/r/rpl_server_id2.result update result file @ mysql-test/suite/rpl/r/rpl_session_var.result update result file @ mysql-test/suite/rpl/r/rpl_set_charset.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_show_slave_running.result update result file @ mysql-test/suite/rpl/r/rpl_skip_error.result update result file @ mysql-test/suite/rpl/r/rpl_slave_grp_exec.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_in.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_skip.result update result file @ mysql-test/suite/rpl/r/rpl_slave_status.result update result file @ mysql-test/suite/rpl/r/rpl_slow_query_log.result update result file @ mysql-test/suite/rpl/r/rpl_sp.result update result file @ mysql-test/suite/rpl/r/rpl_sp004.result update result file @ mysql-test/suite/rpl/r/rpl_sp_effects.result update result file @ mysql-test/suite/rpl/r/rpl_sporadic_master.result update result file @ mysql-test/suite/rpl/r/rpl_ssl.result update result file @ mysql-test/suite/rpl/r/rpl_ssl1.result update result file @ mysql-test/suite/rpl/r/rpl_start_stop_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_000001.result update result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_stm_binlog_direct.result update result file @ mysql-test/suite/rpl/r/rpl_stm_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_stm_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_stm_log.result update result file @ mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result update result file @ mysql-test/suite/rpl/r/rpl_stm_multi_query.result update result file @ mysql-test/suite/rpl/r/rpl_stm_no_op.result update result file @ mysql-test/suite/rpl/r/rpl_stm_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_sql_mode.result update result file @ mysql-test/suite/rpl/r/rpl_stm_until.result update result file @ mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result update result file @ mysql-test/suite/rpl/r/rpl_temporary.result update result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result update result file @ mysql-test/suite/rpl/r/rpl_test_framework.result updated result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result update result file @ mysql-test/suite/rpl/r/rpl_trigger.result update result file @ mysql-test/suite/rpl/r/rpl_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_typeconv_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_udf.result update result file @ mysql-test/suite/rpl/r/rpl_user.result update result file @ mysql-test/suite/rpl/r/rpl_user_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables_stm.result update result file @ mysql-test/suite/rpl/r/rpl_view.result update result file @ mysql-test/suite/rpl/t/rpl000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_EE_err.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. don't drop database twice @ mysql-test/suite/rpl/t/rpl_auto_increment_bug33029.test - This test replicates, so moved it to rpl suite. - This test uses a fake relay log, so use include/setup_fake_relay_log.inc and cleanup_fake_relay_log.inc instead of ad-hoc code. - Made test clean up replication state (rpl_end.inc) @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test renamed rpl_end.inc to master-slave-end.inc @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test - Use rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (server_[1234] instead of master_[abcd]), we use rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, we use the new rpl_end.inc to clean up instead of doing it manually, and we use rpl_change_topology.inc instead of manual reconfiguration. - Added comment to make test understandable. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_create_tmp_table_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version-master.opt Got rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_current_user.cnf use environment variables recognized by rpl_init.inc @ mysql-test/suite/rpl/t/rpl_current_user.test - Use rpl_init.inc instead of ad-hoc three-server setup. Hence, rename connection slave2 to server_3 - don't drop lots of things at the beginning of the test - rpl_diff_tables.inc does not sync any more, so we have to sync here instead - renamed $diff_table to $rpl_diff_table and $diff_table_list to $rpl_diff_table_list @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. renamed master-slave-end.inc to rpl_end.inc use include/check_slave_no_error.inc instead of ad-hoc construction @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_geometry.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_idempotency.test use check_slave_no_error.inc instead of ad-hoc tests use wait_for_slave_sql_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug28430.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug30888.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test - Made test clean up replication state. - removed wait_for_slave_sql_to_stop.inc, because it already does wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_concurrent.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test Made test clean up replication state. replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. replace stop_slave.inc by stop_slave_sql.inc since the io thread is already stopped. @ mysql-test/suite/rpl/t/rpl_manual_change_index_file.test use wait_for_slave_io_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test Made test clean up replication state. replace wait_for_slave_io_to_stop.inc by wait_for_slave_io_error.inc replace master-slave-reset.inc by rpl_reset.inc + drop table t1. @ mysql-test/suite/rpl/t/rpl_plugin_load.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. removed lots os useless junk @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - removed useless cleanup at beginning of test - did not make test use the standard replication framework (master-slave.inc + rpl_end.inc), because it won't work. i don' know why. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_conflicts.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_create_table.test replace master-slave-end.inc by rpl_end.inc replace master-slave-reset.inc by rpl_reset.inc replace long sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_find_row.test Made test clean up replication state. replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. replace wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_rec_comp_myisam.test replace master-slave-reset.inc by rpl_reset.inc Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test replaced master-slave-reset.inc by rpl_reset.inc replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trunc_temp.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test Replaced ad-hoc setup of circular replication by call to rpl_init.inc Made test clean up replication state. Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_show_slave_running.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc - replaced stop_slave.inc by stop_slave_io.inc where the sql thread was already stopped. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test Made test clean up replication state. Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc Replaced ad-hoc repliction setup by call to master-slave.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. replaced check that IO thread has stopped by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state, and replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_conflicts.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test replaced master-slave-end.inc by rpl_end.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_sql_mode.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_stm_until.test - Made test clean up replication state. - replaced master-slave-reset.inc by rpl_reset.inc - the relay log is now called slave-relay-bin.000003 instead of .000004, because master-slave.inc doesn't rotate it as much as before. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. replaced ad-hoc call to 'connect' by include/rpl_connect.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_temporary.test Made test clean up replication state. This test sources include/delete_anonymous_users.inc on master. This means it updates the user table in the mysql database manually on the master. This causes failure in the slave sql thread when binlog_format=row. Hence, we stop the slave first and source include/delete_anonymous_users.inc on both master and slave. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_test_framework.cnf new cfg file for new test @ mysql-test/suite/rpl/t/rpl_test_framework.test new test case that verifies that include/rpl_change_topology.inc works @ mysql-test/suite/rpl/t/rpl_timezone.test - Made test clean up replication state. - stop slave before last sub-test, because that test does not use the slave connection. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test - Made test clean up replication state. - replace master-slave-reset.inc by rpl_reset.inc - the rpl_end.inc and rpl_reset.inc scripts use the connections server_1 and server_2. hence, we must reconnect to those after the server has been restarted. ****** use new file rpl_reconnect.inc instead of ad-hoc code @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_typeconv_innodb.test made test clean up replication state removed unnecessary call to master-slave-reset.inc @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_variables_stm.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state. @ mysql-test/suite/rpl_ndb/r/rpl_ndb_2other.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_UUID.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_apply_status.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_auto_inc.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_2ch.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_simplex.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_commit_afterflush.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ctype_ucs2_def.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_delete_nowhere.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_db.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_table.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_func003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_idempotent.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb_trans.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_insert_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_log.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_engines_transactions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_tables.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update3.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_rep_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_row_001.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_set_null.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp006.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_stm_innodb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sync.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_trig004.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_row_basic_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2innodb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2myisam.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2ndb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2other.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_UUID.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_apply_status.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_auto_inc.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_bank.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_basic.test replaced master-slave-end.inc by rpl_end.inc removed wait_for_slave_sql_to_stop since it is followed by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob2.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular.test made test use rpl_init.inc to setup circular replication, instead of ad-hoc setup made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.cnf removed automatic configuration of server as slave. this is not needed because rpl_init.inc does it. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.test made test clean up replication state it seems that sync_slave_with_master does not work deterministically here, so instead we wait for 'drop table' to replicate by checking when the table disappears on slave. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_simplex.test make test clean up replication state use rpl_change_topology.inc to reconfigure replication topology, instead of ad-hoc call to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_commit_afterflush.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ctype_ucs2_def.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_basic.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_partitions.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ddl.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_delete_nowhere.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_db.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_table.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_extraCol.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_func003.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_idempotent.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb_trans.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_insert_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_load.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_log.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_engines_transactions.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_tables.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi.test make test clean up replication state use rpl_change_topology.inc to change replication topology, instead of ad-hoc calls to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update2.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update3.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_rep_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_row_001.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_set_null.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp003.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp006.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_stm_innodb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sync.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_trig004.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndbapi_multi.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_row_basic_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2.test make test clean up replication state
[27 Jul 2010 11:55]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/114435 3497 Sven Sandberg 2010-07-27 BUG#49978: Replication tests don't clean up replication state at the end Major replication test framework cleanup. This does the following: - Ensure that all tests clean up the replication state when they finish, by making check-testcase check the output of SHOW SLAVE STATUS. This implies: - Slave must not be running after test finished. This is good because it removes the risk for sporadic errors in subsequent tests when a test forgets to sync correctly. - Slave SQL and IO errors must be cleared when test ends. This is good because we will notice if a test gets an unexpected error in the slave threads near the end. - We no longer have to clean up before a test starts. - Ensure that all tests that wait for an error in one of the slave threads waits for a specific error. It is no longer possible to source wait_for_slave_[sql|io]_to_stop.inc when there is an error in one of the slave threads. This is good because: - If a test expects an error but there is a bug that causes another error to happen, or if it stops the slave thread without an error, then we will notice. - When developing tests, wait_for_*_to_[start|stop].inc will fail immediately if there is an error in the relevant slave thread. Before this patch, we had to wait for the timeout. - Remove duplicated and repeated code for setting up unusual replication topologies. Now, there is a single file that is capable of setting up arbitrary topologies (include/rpl_init.inc, but include/master-slave.inc is still available for the most common topology). Tests can now end with include/rpl_end.inc, which will clean up correctly no matter what topology is used. The topology can be changed with include/rpl_change_topology.inc. - Improved debug information when tests fail. This includes: - debug info is printed on all servers configured by include/rpl_init.inc - User can set $rpl_debug=1, which makes auxiliary replication files print relevant debug info. - Improved documentation for all auxiliary replication files. Now they describe purpose, usage, parameters, and side effects. - Many small code cleanups: - Made have_innodb.inc output a sensible error message. - Moved contents of rpl000017-slave.sh into rpl000017.test - Too many to list here: see per-file comments for details. @ mysql-test/extra/rpl_tests/rpl_auto_increment.test Use rpl_reset.inc instead of master-slave-reset.inc @ mysql-test/extra/rpl_tests/rpl_ddl.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test - Replace 'start slave; wait_for_slave_to_start.inc' by include/start_slave.inc. - Use new file rpl_connect.inc to reconnect on all connections, since the connections are used by rpl_end.inc. - Use wait_for_slave_param.inc instead of wait_for_slave_io_to_start.inc, since wait_for_slave_io_to_start.inc now fails if the IO thread has an error. In this particular test case, it is normal that the IO thread has an error. @ mysql-test/extra/rpl_tests/rpl_loaddata.test - Use wait_for_slave_sql_error.inc to wait for errors instead of wait_for_slave_sql_to_stop.inc - Use check_slave_no_error.inc instead of print errors to the log. - Use rpl_reset.inc instead of master-slave-reset.inc This means we have to clear the error from the slave threads by calling RESET SLAVE explicitly. @ mysql-test/extra/rpl_tests/rpl_log.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_ndb_apply_status.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_not_null.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_record_compare.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_reset_slave.test - replace wait_for_slave_io_error.inc+stop_slave.inc by wait_for_slave_io_error_and_stop.inc+stop_slave_sql.inc since stop_slave.inc now fails when the io thread has an error. - replace stop_slave.inc by STOP SLAVE + wait_for_slave_sql_to_stop.inc + wait_for_slave_param. stop_slave.inc would fail since the IO thread has an error. - add include/rpl_end.inc to clean up replication state @ mysql-test/extra/rpl_tests/rpl_row_UUID.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_row_basic.test - replaced reset_master_and_slave.inc by rpl_reset.inc - replaced sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_set_null.test replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test Made test clean up replication state. @ mysql-test/extra/rpl_tests/rpl_test_framework.inc Auxiliary file used by rpl_test_framework.test. This checks that rpl_change_topology.inc works correctly. @ mysql-test/extra/rpl_tests/rpl_truncate_helper.test replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/include/analyze-sync_with_master.test improved debug output printed when sync_slave_with_master or sync_with_master fails @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/check_slave_is_running.inc - Use existing framework (check_slave_param.inc) instead of ad-hoc code to check value of slave parameters. - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_no_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_param.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/cleanup_fake_relay_log.inc - Use RESET SLAVE instead of manual file removal. This also resets other replication state. - verify that RESET SLAVE correctly removed files. @ mysql-test/include/diff_tables.inc Use rpl_begin_include_file.inc to improve debug capabilities. Improved documentation. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/have_innodb.inc Made have_innodb.inc print sensible message when innodb is not supported. @ mysql-test/include/kill_query_and_diff_master_slave.inc Renamed diff_master_slave.inc to rpl_diff.inc @ mysql-test/include/master-slave.inc Use new rpl_init.inc file Now, we don't do 'drop table' in master-slave.inc any more. That's good because drop table has nothing to do with configuring replication servers. @ mysql-test/include/ndb_master-slave.inc use master-slave.inc instead of ad-hoc calls to 'connect' @ mysql-test/include/ndb_master-slave_2ch.inc use rpl_init.inc instead of ad-hoc setup @ mysql-test/include/ndb_not_readonly.inc turn off query log while executing this script. this was previously done by the caller. now it's done in the script. @ mysql-test/include/report-features.test add newline at end of file @ mysql-test/include/reset_master_and_slave.inc rpl_reset.inc replaces this file @ mysql-test/include/rpl_begin_include_file.inc New auxiliary file to be used by replication helper files like rpl_init.inc, stop_slave.inc, wait_for_slave_*.inc, etc. Such helper files should source rpl_begin_include_file.inc at the beginning and rpl_end_include_file.inc at the end. That adds the following features: - When a test sources the file, the file name is printed to the result file. This is good because it makes result files easier to follow. - When a helper file sources a second helper file recursively, then the name of the second file is not printed. This is good because it would make the result file harder to follow if all the internal calls of all helper files were printed. - When $rpl_debug is set, all internal calls are printed to the result file. This is good because it helps when debugging test cases. (With $rpl_debug=1, many of the helper files now print other relevant debug info too.) - When a file needs to turn off the query log or the warning log (disable_query_log/disable_warnings), then the file can tell rpl_begin_include_file.inc about it. Then rpl_begin_include_file.inc will turn off the log correctly, and rpl_end_include_file.inc will turn on the log correctly. Note that if rpl_a.inc sources rpl_b.inc and both files need to turn off the log, then the log is not turned on when rpl_b.inc ends (because rpl_a.inc still needs the log off). This makes it easier to program replication helper files. @ mysql-test/include/rpl_change_topology.inc New file to change replication topology on the fly. This is used by rpl_init.inc internally, but is also used by test cases that need to change topology (e.g., rpl.rpl_circular_for_4_hosts, which reconfigures the topology to make a failover). @ mysql-test/include/rpl_connect.inc New file to create a named connection. This file knows about a number of "standard" connections (master, slave, server_1, etc), and knows how each of them should normally be created. This is mostly used internally (e.g., by rpl_init.inc, master-slave.inc, ndb_master-slave_2ch.inc etc), but can also be used by tests that need to bring a connection up after disconnecting. @ mysql-test/include/rpl_connection.inc New file to change connection. This prints the name of the connection. However, for files that source rpl_begin_include_file.inc, it does not print the name of the connection unless $rpl_debug=1. This is good because printing something every time the .inc file changed connection would make the result log harder to read. @ mysql-test/include/rpl_diff.inc - Made file capable to compare many servers - Hence renamed it to rpl_diff.inc - If no server list is specified, use all servers from server_1 to server_$rpl_server_count - It now writes the statement to file before executing it. That means it will be subject to SQL string interpolation, but not shell string interpolation (which may be platform-dependent) @ mysql-test/include/rpl_diff_tables.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Don't sync, because syncing and diffing are different things - Improve documentation - Restore previous connection at end of script. @ mysql-test/include/rpl_end.inc Renamed master-slave-end.inc to rpl_end.inc, and made it work with arbitrary replication topologies (as configured with rpl_init.inc and possibly rpl_change_topology.inc). Also made it assert that no slave thread has an error. Made it assert that no slave thread is stopped, unless $rpl_only_running_threads=1. @ mysql-test/include/rpl_end_include_file.inc New file to be sourced at the end of auxiliary replication include files. See include/rpl_begin_include_file.inc for details. @ mysql-test/include/rpl_init.inc Made file work for arbitrary topologies instead of just 4-server circle. This file is used by master-slave.inc, rpl_master-slave_2ch.inc etc, and also by tests that need other specific replication topologies. @ mysql-test/include/rpl_reconnect.inc New auxiliary file that will reconnect many clients to a given server. All clients configured by rpl_init.inc will reconnect. @ mysql-test/include/rpl_reset.inc Made file work for arbitrary replication topologies, check for errors, and sync all threads. Also removed 'drop table' because that has nothing to do with replication. @ mysql-test/include/rpl_start_slaves.inc New auxiliary file to start all slaves configured by rpl_init.inc This is used internally by rpl_init.inc but may also be used by tests that want to bring all slaves up. @ mysql-test/include/rpl_stop_slaves.inc New auxiliary file to stop all slaves configured rpl_init.inc. This is used internally by rpl_end.inc, but may also be used by tests that want to stop all slaves. @ mysql-test/include/rpl_sync.inc Made file work for arbitrary replication topologies (as configured by rpl_init.inc and possibly rpl_change_topology.inc) instead of just 4-server circle. @ mysql-test/include/save_master_pos.inc Auxiliary file to save the master position. @ mysql-test/include/setup_fake_relay_log.inc - Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. - Added call to die in error case. @ mysql-test/include/show_rpl_debug_info.inc Made file print NOW() Made file print both SHOW MASTER STATUS and SHOW SLAVE STATUS. Made file print debug info for all servers configured by rpl_init.inc @ mysql-test/include/show_slave_status.inc - Made file use echo instead of SELECT to print variables. - Improved comments. - Use variable names that are less likely to be used by other tests. @ mysql-test/include/start_slave.inc - Made test use rpl_begin_include_file.inc to improve debug capabilities. - improved documentation @ mysql-test/include/stop_slave.inc - Made script capable to detect which threads are running and stop only those. - Improved documentation @ mysql-test/include/stop_slave_io.inc Added file to stop the slave IO thread. @ mysql-test/include/stop_slave_sql.inc Added file to stop the slave SQL thread. @ mysql-test/include/sync_io_with_master.inc Added file to sync the IO thread of the current connection, up to a previously saved position. @ mysql-test/include/sync_slave_io_with_master.inc - Made file work with arbitrarily-named connections. - Made file use rpl_begin_include_file.inc to improve debug capabilities. @ mysql-test/include/sync_slave_sql_with_io.inc Added file to sync only the SQL thread, up to the position copied in the IO thread. @ mysql-test/include/wait_for_query_to_fail.inc Added file to wait for a query to fail. @ mysql-test/include/wait_for_slave_io_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Use existing atom include/show_slave_status.inc to print error message. - Improve comments. @ mysql-test/include/wait_for_slave_io_error_and_stop.inc Added file that waits for the slave IO thread to reach an error state, and then stop it. For some errors, the IO thread does not stop automatically; instead it tries to reconnect. @ mysql-test/include/wait_for_slave_io_to_start.inc - Made script fail if the IO thread has an error. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_io_to_stop.inc - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_param.inc - Added $slave_error_param. This variable can be set to Slave_IO_Errno or Slave_SQL_Errno, in which case the script fails if the corresponding column in the output from SHOW SLAVE STATUS is nonzero. - Replaced exit by die. - Made it print timeout seconds correctly in error message. - Removed $slave_error_message. This is not needed. - Use rpl_begin_include_file.inc for better debug capabilities. @ mysql-test/include/wait_for_slave_sql_error.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation - Use existing atom show_slave_status.inc to print error. @ mysql-test/include/wait_for_slave_sql_error_and_skip.inc - Use rpl_begin_include_file.inc and rpl_connection.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_stop.inc - Fail if Last_SQL_Errno is nonzero. - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_stop.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/r/mysqldump_restore.result update result file @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sql_mode.result updated result file @ mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt This test replicates, so it should be in the rpl suite. Then we can remove this .opt file too. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Since test sets binlog_format internally, it's useless to re-run it. Hence we source have_binlog_format_statement.inc @ mysql-test/suite/binlog/t/binlog_sql_mode.test - Test does not use replication, so we remove master-slave.inc. - mysqltest magically adds --force-if-open to $MYSQL_BINLOG in test files that source master-slave.inc. So now we have to add --force-if-open explicitly. @ mysql-test/suite/parts/t/rpl_partition.test Make test clean up replication state. @ mysql-test/suite/rpl/r/rpl000010.result update result file @ mysql-test/suite/rpl/r/rpl000011.result update result file @ mysql-test/suite/rpl/r/rpl000013.result update result file @ mysql-test/suite/rpl/r/rpl000017.result update result file @ mysql-test/suite/rpl/r/rpl_EE_err.result update result file @ mysql-test/suite/rpl/r/rpl_LD_INFILE.result update result file @ mysql-test/suite/rpl/r/rpl_alter.result update result file @ mysql-test/suite/rpl/r/rpl_alter_db.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_11932.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result update result file @ mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file @ mysql-test/suite/rpl/r/rpl_binlog_grant.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result file @ mysql-test/suite/rpl/r/rpl_bit.result update result file @ mysql-test/suite/rpl/r/rpl_bit_npk.result update result file @ mysql-test/suite/rpl/r/rpl_blackhole.result update result file @ mysql-test/suite/rpl/r/rpl_bug26395.result update result file @ mysql-test/suite/rpl/r/rpl_bug31076.result update result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result file @ mysql-test/suite/rpl/r/rpl_bug38694.result update result file @ mysql-test/suite/rpl/r/rpl_change_master.result update result file @ mysql-test/suite/rpl/r/rpl_charset.result update result file @ mysql-test/suite/rpl/r/rpl_charset_sjis.result update result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_commit_after_flush.result update result file @ mysql-test/suite/rpl/r/rpl_concurrency_error.result update result file @ mysql-test/suite/rpl/r/rpl_create_database.result update result file @ mysql-test/suite/rpl/r/rpl_create_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result file @ mysql-test/suite/rpl/r/rpl_current_user.result update result file @ mysql-test/suite/rpl/r/rpl_deadlock_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_delete_no_where.result update result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_drop.result update result file @ mysql-test/suite/rpl/r/rpl_drop_db.result update result file @ mysql-test/suite/rpl/r/rpl_drop_temp.result update result file @ mysql-test/suite/rpl/r/rpl_drop_view.result update result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result update result file @ mysql-test/suite/rpl/r/rpl_empty_master_crash.result update result file @ mysql-test/suite/rpl/r/rpl_err_ignoredtable.result update result file @ mysql-test/suite/rpl/r/rpl_events.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraCol_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_failed_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result update result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result update result file @ mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_found_rows.result update result file @ mysql-test/suite/rpl/r/rpl_free_items.result update result file @ mysql-test/suite/rpl/r/rpl_geometry.result update result file @ mysql-test/suite/rpl/r/rpl_get_lock.result update result file @ mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result update result file @ mysql-test/suite/rpl/r/rpl_grant.result update result file @ mysql-test/suite/rpl/r/rpl_idempotency.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_grant.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_revoke.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table_update.result update result file @ mysql-test/suite/rpl/r/rpl_incident.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result update result file @ mysql-test/suite/rpl/r/rpl_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug28430.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug30888.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result update result file @ mysql-test/suite/rpl/r/rpl_insert.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id_pk.result update result file @ mysql-test/suite/rpl/r/rpl_insert_ignore.result update result file @ mysql-test/suite/rpl/r/rpl_insert_select.result update result file @ mysql-test/suite/rpl/r/rpl_invoked_features.result update result file @ mysql-test/suite/rpl/r/rpl_killed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result update result file @ mysql-test/suite/rpl/r/rpl_load_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_load_table_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_charset.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_concurrent.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_fatal.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_m.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_map.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_s.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_simple.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_symlink.result update result file @ mysql-test/suite/rpl/r/rpl_loaddatalocal.result update result file @ mysql-test/suite/rpl/r/rpl_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_locale.result update result file @ mysql-test/suite/rpl/r/rpl_log_pos.result update result file @ mysql-test/suite/rpl/r/rpl_manual_change_index_file.result update result file @ mysql-test/suite/rpl/r/rpl_many_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_master_pos_wait.result update result file @ mysql-test/suite/rpl/r/rpl_misc_functions.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_engine.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update3.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update4.result update result file @ mysql-test/suite/rpl/r/rpl_mysql_upgrade.result update result file @ mysql-test/suite/rpl/r/rpl_name_const.result update result file @ mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_packet.result update result file @ mysql-test/suite/rpl/r/rpl_plugin_load.result update result file @ mysql-test/suite/rpl/r/rpl_ps.result update result file @ mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result update result file @ mysql-test/suite/rpl/r/rpl_read_only.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_relayrotate.result update result file @ mysql-test/suite/rpl/r/rpl_relayspace.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_do.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result update result file @ mysql-test/suite/rpl/r/rpl_report.result update result file @ mysql-test/suite/rpl/r/rpl_rewrt_db.result update result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result update result file @ mysql-test/suite/rpl/r/rpl_row_001.result update result file @ mysql-test/suite/rpl/r/rpl_row_4_bytes.result update result file @ mysql-test/suite/rpl/r/rpl_row_NOW.result update result file @ mysql-test/suite/rpl/r/rpl_row_USER.result update result file @ mysql-test/suite/rpl/r/rpl_row_UUID.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_8partition.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_row_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_row_delayed_ins.result update result file @ mysql-test/suite/rpl/r/rpl_row_drop.result update result file @ mysql-test/suite/rpl/r/rpl_row_find_row.result update result file @ mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_row_func001.result update result file @ mysql-test/suite/rpl/r/rpl_row_func002.result update result file @ mysql-test/suite/rpl/r/rpl_row_func003.result update result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_row_log.result update result file @ mysql-test/suite/rpl/r/rpl_row_log_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp001.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp003.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp005.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp008.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp009.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp010.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp011.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp012.result update result file @ mysql-test/suite/rpl/r/rpl_row_stop_middle_update.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig001.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig002.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig003.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig004.result update result file @ mysql-test/suite/rpl/r/rpl_row_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result update result file @ mysql-test/suite/rpl/r/rpl_row_until.result update result file @ mysql-test/suite/rpl/r/rpl_row_view01.result update result file @ mysql-test/suite/rpl/r/rpl_row_wide_table.result update result file @ mysql-test/suite/rpl/r/rpl_server_id1.result update result file @ mysql-test/suite/rpl/r/rpl_server_id2.result update result file @ mysql-test/suite/rpl/r/rpl_session_var.result update result file @ mysql-test/suite/rpl/r/rpl_set_charset.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_show_slave_running.result update result file @ mysql-test/suite/rpl/r/rpl_skip_error.result update result file @ mysql-test/suite/rpl/r/rpl_slave_grp_exec.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_in.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_skip.result update result file @ mysql-test/suite/rpl/r/rpl_slave_status.result update result file @ mysql-test/suite/rpl/r/rpl_slow_query_log.result update result file @ mysql-test/suite/rpl/r/rpl_sp.result update result file @ mysql-test/suite/rpl/r/rpl_sp004.result update result file @ mysql-test/suite/rpl/r/rpl_sp_effects.result update result file @ mysql-test/suite/rpl/r/rpl_sporadic_master.result update result file @ mysql-test/suite/rpl/r/rpl_ssl.result update result file @ mysql-test/suite/rpl/r/rpl_ssl1.result update result file @ mysql-test/suite/rpl/r/rpl_start_stop_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_000001.result update result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_stm_binlog_direct.result update result file @ mysql-test/suite/rpl/r/rpl_stm_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_stm_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_stm_log.result update result file @ mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result update result file @ mysql-test/suite/rpl/r/rpl_stm_multi_query.result update result file @ mysql-test/suite/rpl/r/rpl_stm_no_op.result update result file @ mysql-test/suite/rpl/r/rpl_stm_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_sql_mode.result update result file @ mysql-test/suite/rpl/r/rpl_stm_until.result update result file @ mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result update result file @ mysql-test/suite/rpl/r/rpl_temporary.result update result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result update result file @ mysql-test/suite/rpl/r/rpl_test_framework.result updated result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result update result file @ mysql-test/suite/rpl/r/rpl_trigger.result update result file @ mysql-test/suite/rpl/r/rpl_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_typeconv_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_udf.result update result file @ mysql-test/suite/rpl/r/rpl_user.result update result file @ mysql-test/suite/rpl/r/rpl_user_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables_stm.result update result file @ mysql-test/suite/rpl/r/rpl_view.result update result file @ mysql-test/suite/rpl/t/rpl000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_EE_err.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. don't drop database twice @ mysql-test/suite/rpl/t/rpl_auto_increment_bug33029.test - This test replicates, so moved it to rpl suite. - This test uses a fake relay log, so use include/setup_fake_relay_log.inc and cleanup_fake_relay_log.inc instead of ad-hoc code. - Made test clean up replication state (rpl_end.inc) @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test renamed rpl_end.inc to master-slave-end.inc @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test - Use rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (server_[1234] instead of master_[abcd]), we use rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, we use the new rpl_end.inc to clean up instead of doing it manually, and we use rpl_change_topology.inc instead of manual reconfiguration. - Added comment to make test understandable. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_create_tmp_table_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version-master.opt Got rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_current_user.cnf use environment variables recognized by rpl_init.inc @ mysql-test/suite/rpl/t/rpl_current_user.test - Use rpl_init.inc instead of ad-hoc three-server setup. Hence, rename connection slave2 to server_3 - don't drop lots of things at the beginning of the test - rpl_diff_tables.inc does not sync any more, so we have to sync here instead - renamed $diff_table to $rpl_diff_table and $diff_table_list to $rpl_diff_table_list @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. renamed master-slave-end.inc to rpl_end.inc use include/check_slave_no_error.inc instead of ad-hoc construction @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraCol_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_geometry.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_idempotency.test use check_slave_no_error.inc instead of ad-hoc tests use wait_for_slave_sql_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug28430.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug30888.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test - Made test clean up replication state. - removed wait_for_slave_sql_to_stop.inc, because it already does wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_concurrent.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test Made test clean up replication state. replace reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. replace stop_slave.inc by stop_slave_sql.inc since the io thread is already stopped. @ mysql-test/suite/rpl/t/rpl_manual_change_index_file.test use wait_for_slave_io_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test Made test clean up replication state. replace wait_for_slave_io_to_stop.inc by wait_for_slave_io_error.inc replace master-slave-reset.inc by rpl_reset.inc + drop table t1. @ mysql-test/suite/rpl/t/rpl_plugin_load.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. removed lots os useless junk @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - removed useless cleanup at beginning of test - did not make test use the standard replication framework (master-slave.inc + rpl_end.inc), because it won't work. i don' know why. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_conflicts.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_create_table.test replace master-slave-end.inc by rpl_end.inc replace master-slave-reset.inc by rpl_reset.inc replace long sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_find_row.test Made test clean up replication state. replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. replace wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_rec_comp_myisam.test replace master-slave-reset.inc by rpl_reset.inc Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test replaced master-slave-reset.inc by rpl_reset.inc replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trunc_temp.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test Replaced ad-hoc setup of circular replication by call to rpl_init.inc Made test clean up replication state. Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_show_slave_running.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc - replaced stop_slave.inc by stop_slave_io.inc where the sql thread was already stopped. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test Made test clean up replication state. Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc Replaced ad-hoc repliction setup by call to master-slave.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. replaced check that IO thread has stopped by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state, and replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_conflicts.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test replaced master-slave-end.inc by rpl_end.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_sql_mode.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_stm_until.test - Made test clean up replication state. - replaced master-slave-reset.inc by rpl_reset.inc - the relay log is now called slave-relay-bin.000003 instead of .000004, because master-slave.inc doesn't rotate it as much as before. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. replaced ad-hoc call to 'connect' by include/rpl_connect.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_temporary.test Made test clean up replication state. This test sources include/delete_anonymous_users.inc on master. This means it updates the user table in the mysql database manually on the master. This causes failure in the slave sql thread when binlog_format=row. Hence, we stop the slave first and source include/delete_anonymous_users.inc on both master and slave. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_test_framework.cnf new cfg file for new test @ mysql-test/suite/rpl/t/rpl_test_framework.test new test case that verifies that include/rpl_change_topology.inc works @ mysql-test/suite/rpl/t/rpl_timezone.test - Made test clean up replication state. - stop slave before last sub-test, because that test does not use the slave connection. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test - Made test clean up replication state. - replace master-slave-reset.inc by rpl_reset.inc - the rpl_end.inc and rpl_reset.inc scripts use the connections server_1 and server_2. hence, we must reconnect to those after the server has been restarted. ****** use new file rpl_reconnect.inc instead of ad-hoc code @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_typeconv_innodb.test made test clean up replication state removed unnecessary call to master-slave-reset.inc @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_variables_stm.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state. @ mysql-test/suite/rpl_ndb/r/rpl_ndb_2other.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_UUID.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_apply_status.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_auto_inc.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_2ch.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_simplex.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_commit_afterflush.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ctype_ucs2_def.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_delete_nowhere.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_db.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_table.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_func003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_idempotent.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb_trans.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_insert_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_log.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_engines_transactions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_tables.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update3.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_rep_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_row_001.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_set_null.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp006.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_stm_innodb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sync.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_trig004.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_row_basic_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2innodb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2myisam.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2ndb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2other.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_UUID.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_apply_status.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_auto_inc.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_bank.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_basic.test replaced master-slave-end.inc by rpl_end.inc removed wait_for_slave_sql_to_stop since it is followed by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob2.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular.test made test use rpl_init.inc to setup circular replication, instead of ad-hoc setup made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.cnf removed automatic configuration of server as slave. this is not needed because rpl_init.inc does it. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.test made test clean up replication state it seems that sync_slave_with_master does not work deterministically here, so instead we wait for 'drop table' to replicate by checking when the table disappears on slave. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_simplex.test make test clean up replication state use rpl_change_topology.inc to reconfigure replication topology, instead of ad-hoc call to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_commit_afterflush.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ctype_ucs2_def.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_basic.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_partitions.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ddl.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_delete_nowhere.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_db.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_table.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_extraCol.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_func003.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_idempotent.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb_trans.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_insert_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_load.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_log.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_engines_transactions.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_tables.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi.test make test clean up replication state use rpl_change_topology.inc to change replication topology, instead of ad-hoc calls to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update2.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update3.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_rep_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_row_001.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_set_null.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp003.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp006.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_stm_innodb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sync.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_trig004.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndbapi_multi.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_row_basic_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2.test make test clean up replication state
[5 Aug 2010 20:24]
Sven Sandberg
bzr commit comments + patch
Attachment: patch.diff.gz (application/x-gzip, text), 126.18 KiB.
[5 Aug 2010 20:25]
Sven Sandberg
bzr bundle (apply with bzr merge /path/to/file)
Attachment: patch.bundle.gz (application/x-gzip, text), 217.84 KiB.
[5 Aug 2010 20:27]
Sven Sandberg
I have committed a new version with fixes to some review comments, available in two formats. See the two last file attachments.
[21 Sep 2010 9:48]
Sven Sandberg
bzr bundle (apply with bzr merge /path/to/file)
Attachment: patch-2.bundle.gz (application/x-gzip, text), 222.60 KiB.
[21 Sep 2010 9:51]
Sven Sandberg
bzr commit comments + patch
Attachment: patch-2.diff.gz (application/x-gzip, text), 120.67 KiB.
[23 Sep 2010 9:30]
Bjørn Munch
I think this is OK now, there is significant overhead in running each test but this can hopefully be improved, e.g. if/when mysqltest gets support for comparison operators in if() conditions. There is one change needed though: test rpl.rpl_test_framework unfortunately has to be disabled until we have a solution for it using >10 servers. It won't be enough to mark it as experimental; it may not just fail itself but randomly cause other tests to fail if running with --parallel, or can even cause tests in other MTR runs on the same host to fail. This is because it uses ports outside the range it has assigned, ports which other threads or MTRs think they have.
[23 Sep 2010 10:05]
Sven Sandberg
bzr commit comments + patch
Attachment: patch-3.diff.gz (application/x-gzip, text), 120.67 KiB.
[23 Sep 2010 10:06]
Sven Sandberg
bzr bundle (apply with bzr merge /path/to/file)
Attachment: patch-3.bundle.gz (application/x-gzip, text), 222.73 KiB.
[23 Sep 2010 10:07]
Sven Sandberg
Thanks Bjorn, I had forgotten to uncomment the line in disabled.def. New patch attached (differs only in one line of disabled.def).
[23 Sep 2010 10:10]
Bjørn Munch
I'm OK with this now!
[6 Oct 2010 11:51]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/120111 3520 Sven Sandberg 2010-10-06 BUG#49978: Replication tests don't clean up replication state at the end Post-commit fix. 1. rpl_change_topology.inc relied on mtr's old-style semantics for evaluating a string in boolean context (where '0 1' would evaluate to false). mtr has changed semantics and now evaluates '0 1' to true. 2. rpl_circular_for_4_hosts.inc contained a race condition. server_4 was not sync'ed. This could cause sql_slave_skip_counter to have the value 1 when the test ended.
[6 Oct 2010 11:55]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/120114 3220 Sven Sandberg 2010-10-06 [merge] merged post-commit fix for BUG#49978 from 5.1-bugteam to 5.5-merge
[6 Oct 2010 12:23]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/120118 3520 Sven Sandberg 2010-10-06 BUG#49978: Replication tests don't clean up replication state at the end Post-commit fix. 1. rpl_change_topology.inc used unnecessarily complicated logic to check if a variable was 0 or ''. Fixed that. 2. rpl_circular_for_4_hosts.inc contained a race condition. server_4 was not sync'ed. This could cause sql_slave_skip_counter to have the value 1 when the test ended.
[29 Nov 2010 12:12]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125329 3513 Sven Sandberg 2010-11-29 [merge] Merged BUG#49978 a few revisions up in 5.1-bugteam. Conflicts manually resolved: Text conflict in mysql-test/include/show_rpl_debug_info.inc Text conflict in mysql-test/include/wait_for_slave_param.inc Text conflict in mysql-test/suite/rpl/r/rpl_alter.result Text conflict in mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Text conflict in mysql-test/suite/rpl/r/rpl_ignore_table.result Text conflict in mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result Text conflict in mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test Contents conflict in mysql-test/suite/rpl/t/rpl_cross_version-master.opt Text conflict in mysql-test/suite/rpl/t/rpl_ignore_table.test Text conflict in mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
[29 Nov 2010 12:14]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125330 3134 Sven Sandberg 2010-11-29 [merge] Merged BUG#49978 a few revisions up in 5.5-bugteam. Conflicts resolved manually: Contents conflict in mysql-test/include/check_slave_is_running.inc Contents conflict in mysql-test/include/check_slave_param.inc Text conflict in mysql-test/include/diff_tables.inc Contents conflict in mysql-test/include/rpl_diff_tables.inc Text conflict in mysql-test/include/show_rpl_debug_info.inc Text conflict in mysql-test/include/wait_for_slave_io_to_stop.inc Text conflict in mysql-test/include/wait_for_slave_sql_to_stop.inc Text conflict in mysql-test/include/wait_for_slave_to_stop.inc Text conflict in mysql-test/suite/rpl/r/rpl000017.result Text conflict in mysql-test/suite/rpl/r/rpl_ignore_table.result Text conflict in mysql-test/suite/rpl/r/rpl_slave_status.result Contents conflict in mysql-test/suite/rpl/t/rpl_cross_version-master.opt Text conflict in mysql-test/suite/rpl/t/rpl_ignore_table.test Text conflict in mysql-test/suite/rpl/t/rpl_slave_status.test Text conflict in mysql-test/suite/rpl/t/rpl_sync.test
[30 Nov 2010 14:48]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125515 3135 Sven Sandberg 2010-11-30 [merge] First, BUG#49978 was committed locally in 5.1-bugteam and merged to 5.5-bugteam. Then, independent work was pushed in 5.1-bugteam and 5.5-bugteam. Then, BUG#49978 was merged with the independent work in 5.1-bugteam and 5.5-bugteam separately. The present changeset is the result of merging the merge changeset in 5.1-bugteam up to 5.5-bugteam. Conflicts resolved manually: Path conflict: <deleted> / mysql-test/suite/rpl/t/rpl_000017-slave.opt Text conflict in mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test Text conflict in mysql-test/extra/rpl_tests/rpl_extra_col_master.test Text conflict in mysql-test/extra/rpl_tests/rpl_insert_id.test Text conflict in mysql-test/extra/rpl_tests/rpl_loaddata.test Text conflict in mysql-test/extra/rpl_tests/rpl_row_sp002.test Text conflict in mysql-test/extra/rpl_tests/rpl_stop_slave.test Text conflict in mysql-test/extra/rpl_tests/rpl_sv_relay_space.test Conflict adding file mysql-test/include/force_restart.inc. Moved existing file to mysql-test/include/force_restart.inc.moved. Conflict adding file mysql-test/include/force_restart_if_skipped.inc. Moved existing file to mysql-test/include/force_restart_if_skipped.inc.moved. Text conflict in mysql-test/suite/bugs/t/rpl_bug37426.test Text conflict in mysql-test/suite/rpl/include/rpl_mixed_ddl.inc Text conflict in mysql-test/suite/rpl/include/rpl_mixed_dml.inc Text conflict in mysql-test/suite/rpl/r/rpl_alter.result Text conflict in mysql-test/suite/rpl/r/rpl_extra_col_master_innodb.result Text conflict in mysql-test/suite/rpl/r/rpl_extra_col_master_myisam.result Text conflict in mysql-test/suite/rpl/r/rpl_insert_id.result Text conflict in mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result Text conflict in mysql-test/suite/rpl/r/rpl_row_conflicts.result Text conflict in mysql-test/suite/rpl/r/rpl_stop_slave.result Text conflict in mysql-test/suite/rpl/t/rpl_alter.test Text conflict in mysql-test/suite/rpl/t/rpl_deadlock_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_do_grant.test Text conflict in mysql-test/suite/rpl/t/rpl_drop.test Text conflict in mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_extra_col_master_myisam.test Text conflict in mysql-test/suite/rpl/t/rpl_extra_col_slave_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_extra_col_slave_myisam.test Text conflict in mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_ignore_table.test Text conflict in mysql-test/suite/rpl/t/rpl_relay_space_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_relay_space_myisam.test Text conflict in mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test Text conflict in mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test
[1 Dec 2010 15:33]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125671 3150 Sven Sandberg 2010-12-01 [merge] Merged BUG#49978. 1. BUG#49978 was committed in 5.1-bugteam and merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 2. independent work was pushed to all three trees 3. BUG#49978 was merged with the independent work in each tree separately and then the merge changesets were merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 4. independent work was pushed to all three trees 5. BUG#49978 was merged with the independent work again, in each tree separately. The present patch contains the merge changeset for 5.5-bugteam in step 5. Conflicts resolved manually: Text conflict in mysql-test/suite/rpl/t/rpl_heartbeat_basic.test Text conflict in mysql-test/suite/rpl/t/rpl_trigger.test
[1 Dec 2010 21:35]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125716 3391 Sven Sandberg 2010-12-01 [merge] Merged BUG#49978. 1. BUG#49978 was committed in 5.1-bugteam and merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 2. independent work was pushed to all three trees 3. BUG#49978 was merged with the independent work in each tree separately and then the merge changesets were merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 4. independent work was pushed to all three trees 5. BUG#49978 was merged with the independent work again, in each tree separately. The present patch contains the merge changeset for trunk-bugfixing in step 5. Conflicts resolved manually: Text conflict in mysql-test/extra/rpl_tests/rpl_conflicts.test Text conflict in mysql-test/suite/rpl/r/rpl_change_master.result Text conflict in mysql-test/suite/rpl/r/rpl_heartbeat_basic.result Text conflict in mysql-test/suite/rpl/r/rpl_row_conflicts.result Text conflict in mysql-test/suite/rpl/r/rpl_slave_status.result Text conflict in mysql-test/suite/rpl/t/rpl_change_master.test Text conflict in mysql-test/suite/rpl/t/rpl_flushlog_loop.test Text conflict in mysql-test/suite/rpl/t/rpl_heartbeat_basic.test Text conflict in mysql-test/suite/rpl/t/rpl_slave_status.test Text conflict in mysql-test/suite/rpl/t/rpl_trigger.test
[1 Dec 2010 21:39]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125718 3392 Sven Sandberg 2010-12-01 [merge] Merged BUG#49978. 1. BUG#49978 was committed in 5.1-bugteam and merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 2. independent work was pushed to all three trees 3. BUG#49978 was merged with the independent work in each tree separately and then the merge changesets were merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. 4. independent work was pushed to all three trees 5. BUG#49978 was merged with the new independent work again in each tree separately and then the merge changesets were merged up from 5.1-bugteam to 5.5-bugteam to trunk-bugfixing. The present patch contains the merge changeset for the 5.5-bugteam -> trunk-bugfixing merge in step 5. No conflicts (in fact no changes at all).
[2 Dec 2010 9:18]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125777 3511 Sven Sandberg 2010-12-02 BUG#49978: Replication tests don't clean up replication state at the end Major replication test framework cleanup. This does the following: - Ensure that all tests clean up the replication state when they finish, by making check-testcase check the output of SHOW SLAVE STATUS. This implies: - Slave must not be running after test finished. This is good because it removes the risk for sporadic errors in subsequent tests when a test forgets to sync correctly. - Slave SQL and IO errors must be cleared when test ends. This is good because we will notice if a test gets an unexpected error in the slave threads near the end. - We no longer have to clean up before a test starts. - Ensure that all tests that wait for an error in one of the slave threads waits for a specific error. It is no longer possible to source wait_for_slave_[sql|io]_to_stop.inc when there is an error in one of the slave threads. This is good because: - If a test expects an error but there is a bug that causes another error to happen, or if it stops the slave thread without an error, then we will notice. - When developing tests, wait_for_*_to_[start|stop].inc will fail immediately if there is an error in the relevant slave thread. Before this patch, we had to wait for the timeout. - Remove duplicated and repeated code for setting up unusual replication topologies. Now, there is a single file that is capable of setting up arbitrary topologies (include/rpl_init.inc, but include/master-slave.inc is still available for the most common topology). Tests can now end with include/rpl_end.inc, which will clean up correctly no matter what topology is used. The topology can be changed with include/rpl_change_topology.inc. - Improved debug information when tests fail. This includes: - debug info is printed on all servers configured by include/rpl_init.inc - User can set $rpl_debug=1, which makes auxiliary replication files print relevant debug info. - Improved documentation for all auxiliary replication files. Now they describe purpose, usage, parameters, and side effects. - Many small code cleanups: - Made have_innodb.inc output a sensible error message. - Moved contents of rpl000017-slave.sh into rpl000017.test - Added mysqltest variables that expose the current state of disable_warnings/enable_warnings and friends. - Too many to list here: see per-file comments for details. @ client/mysqltest.cc Added the following variables: $ENABLED_WARNINGS $ENABLED_QUERY_LOG $ENABLED_RESULT_LOG $ENABLED_ABORT_ON_ERROR $ENABLED_INFO $ENABLED_METADATA Each variable is 0 or 1, depending on if the corresponding mysqltest feature is on or off. @ mysql-test/extra/rpl_tests/rpl_EE_err.test Made test clean up after itself and removed outdated comments. @ mysql-test/extra/rpl_tests/rpl_auto_increment.test - Use rpl_reset.inc instead of master-slave-reset.inc - diff_tables.inc now takes only one parameter. Made test clean up after itself and removed outdated comments. @ mysql-test/extra/rpl_tests/rpl_auto_increment_insert_view.test diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_auto_increment_invoke_trigger.test diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_autoinc_func_invokes_trigger.test diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_charset.test Made test clean up after itself and removed unnecessary cleanup in beginning. @ mysql-test/extra/rpl_tests/rpl_commit_after_flush.test cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_conflicts.test cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_ddl.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_deadlock.test make test clean up after itself @ mysql-test/extra/rpl_tests/rpl_extra_col_master.test cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_extra_col_slave.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_failed_optimize.test made test clean up after itself @ mysql-test/extra/rpl_tests/rpl_flsh_tbls.test made test clean up after itself @ mysql-test/extra/rpl_tests/rpl_foreign_key.test made test clean up after itself @ mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test - Replace 'start slave; wait_for_slave_to_start.inc' by include/start_slave.inc. - Use new file rpl_connect.inc to reconnect on all connections, since the connections are used by rpl_end.inc. - Use wait_for_slave_param.inc instead of wait_for_slave_io_to_start.inc, since wait_for_slave_io_to_start.inc now fails if the IO thread has an error. In this particular test case, it is normal that the IO thread has an error. - Changed wait_for_slave_io_error.inc so that it waits for the IO thread to stop. However, in this test case, the IO thread only gets a non-fatal error, so it does not stop. So we set $slave_io_error_is_nonfatal=1 to prevent wait_for_slave_io_error.inc from waiting. @ mysql-test/extra/rpl_tests/rpl_insert_id.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_insert_id_pk.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_loaddata.test - Use wait_for_slave_sql_error.inc to wait for errors instead of wait_for_slave_sql_to_stop.inc - Use check_slave_no_error.inc instead of print errors to the log. - Use rpl_reset.inc instead of master-slave-reset.inc This means we have to clear the error from the slave threads by calling RESET SLAVE explicitly. - diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_log.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_multi_query.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_multi_update.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_ndb_apply_status.test replace master-slave-reset.inc by rpl_reset.inc @ mysql-test/extra/rpl_tests/rpl_not_null.test - replace master-slave-reset.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_record_compare.test - replace master-slave-reset.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_reset_slave.test - replace wait_for_slave_io_error.inc+stop_slave.inc by wait_for_slave_io_error_and_stop.inc+stop_slave_sql.inc since stop_slave.inc now fails when the io thread has an error. - replace stop_slave.inc by STOP SLAVE + wait_for_slave_sql_to_stop.inc + wait_for_slave_param. stop_slave.inc would fail since the IO thread has an error. - add include/rpl_end.inc to clean up replication state @ mysql-test/extra/rpl_tests/rpl_row_UUID.test Don't clean up replication here since this file does not setup replication. The main test now has to both setup and clean up replication. @ mysql-test/extra/rpl_tests/rpl_row_basic.test - replaced reset_master_and_slave.inc by rpl_reset.inc - replaced sequence of reset master+reset slave by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_row_delayed_ins.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_row_sp002.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_row_sp007.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_set_null.test - replaced master-slave-reset.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test - Made test clean up replication state. @ mysql-test/extra/rpl_tests/rpl_stm_create_if_not_exists.test replaced rpl_diff_tables.inc by diff_tables.inc @ mysql-test/extra/rpl_tests/rpl_stop_slave.test changed protocol for diff_tables.inc @ mysql-test/extra/rpl_tests/rpl_sv_relay_space.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_test_framework.inc Auxiliary file used by rpl_test_framework.test. This checks that rpl_change_topology.inc works correctly. @ mysql-test/extra/rpl_tests/rpl_truncate.test made test clean up after itself cosmetic fixes @ mysql-test/extra/rpl_tests/rpl_truncate_helper.test - replace reset_master_and_slave.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/include/analyze-sync_with_master.test - improved debug output printed when sync_slave_with_master or sync_with_master fails - Added documentation @ mysql-test/include/assert.inc Added file to facilitate assertions. @ mysql-test/include/begin_include_file.inc New auxiliary file to be used by replication helper files like rpl_init.inc, stop_slave.inc, wait_for_slave_*.inc, etc. Such helper files should source rpl_begin_include_file.inc at the beginning and rpl_end_include_file.inc at the end. That adds the following features: - When a test sources the file, the file name is printed to the result file. This is good because it makes result files easier to follow. - When a helper file sources a second helper file recursively, then the name of the second file is not printed. This is good because it would make the result file harder to follow if all the internal calls of all helper files were printed. - When $rpl_debug is set, all internal calls are printed to the result file. This is good because it helps when debugging test cases. (With $rpl_debug=1, many of the helper files now print other relevant debug info too.) - When a file needs to turn off the query log or the warning log (disable_query_log/disable_warnings), then the file can tell rpl_begin_include_file.inc about it. Then rpl_begin_include_file.inc will turn off the log correctly, and rpl_end_include_file.inc will turn on the log correctly. Note that if rpl_a.inc sources rpl_b.inc and both files need to turn off the log, then the log is not turned on when rpl_b.inc ends (because rpl_a.inc still needs the log off). This makes it easier to program replication helper files. @ mysql-test/include/check-testcase.test Made check-testcase ensure that the slave status is reset after the test has finished. @ mysql-test/include/check_slave_is_running.inc - Use existing framework (check_slave_param.inc) instead of ad-hoc code to check value of slave parameters. - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_no_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/check_slave_param.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - improve documentation. @ mysql-test/include/cleanup_fake_relay_log.inc - Use RESET SLAVE instead of manual file removal. This also resets other replication state. - verify that RESET SLAVE correctly removed files. @ mysql-test/include/diff_tables.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. - file now supports an arbitrary number of tables (not just two). The tables are now given as a comma-separated list instead of as two variables. - You no longer have to specify database name for each table. If no database is specified, it defaults to the current database. - File now restores the connection at the end. @ mysql-test/include/end_include_file.inc New file to be sourced at the end of auxiliary replication include files. See include/rpl_begin_include_file.inc for details. @ mysql-test/include/file_does_not_exist.inc Added .inc file to check that a given file is removed. @ mysql-test/include/force_restart.inc Added file to force server restart after test @ mysql-test/include/force_restart_if_skipped.inc Added file to force server restart after test, if the test is skipped @ mysql-test/include/have_innodb.inc Made have_innodb.inc print sensible message when innodb is not supported. @ mysql-test/include/kill_query_and_diff_master_slave.inc Renamed diff_master_slave.inc to rpl_diff.inc @ mysql-test/include/master-slave.inc - Use new rpl_init.inc file - Now, we don't do 'drop table' in master-slave.inc any more. That's good because drop table has nothing to do with configuring replication servers. - master-slave.inc now supports the additional parameter $rpl_server_count. By default, master-slave.inc only configures two servers; if $rpl_server_count is set, it configures that many servers. Only the second server is a slave; the rest are not part of the replication topology. @ mysql-test/include/mtr_check.sql Removed unneeded SP (use include/force_restart.inc instead) @ mysql-test/include/mysqldump.inc diff_tables.inc now takes only one parameter. @ mysql-test/include/ndb_master-slave.inc use master-slave.inc instead of ad-hoc calls to 'connect' @ mysql-test/include/ndb_master-slave_2ch.inc use rpl_init.inc instead of ad-hoc setup @ mysql-test/include/ndb_not_readonly.inc turn off query log while executing this script. this was previously done by the caller. now it's done in the script. @ mysql-test/include/report-features.test add newline at end of file @ mysql-test/include/reset_master_and_slave.inc rpl_reset.inc replaces this file @ mysql-test/include/rpl_change_topology.inc New file to change replication topology on the fly. This is used by rpl_init.inc internally, but is also used by test cases that need to change topology (e.g., rpl.rpl_circular_for_4_hosts, which reconfigures the topology to make a failover). @ mysql-test/include/rpl_connect.inc New file to create a named connection. This file knows about a number of "standard" connections (master, slave, server_1, etc), and knows how each of them should normally be created. This is mostly used internally (e.g., by rpl_init.inc, master-slave.inc, ndb_master-slave_2ch.inc etc), but can also be used by tests that need to bring a connection up after disconnecting. @ mysql-test/include/rpl_connection.inc New file to change connection. This prints the name of the connection. However, for files that source rpl_begin_include_file.inc, it does not print the name of the connection unless $rpl_debug=1. This is good because printing something every time the .inc file changed connection would make the result log harder to read. @ mysql-test/include/rpl_diff.inc - Made file capable to compare many servers - Hence renamed it to rpl_diff.inc - If no server list is specified, use all servers from server_1 to server_$rpl_server_count - It now writes the statement to file before executing it. That means it will be subject to SQL string interpolation, but not shell string interpolation (which may be platform-dependent) @ mysql-test/include/rpl_diff_tables.inc Removed this file, since its functionality has been merged into diff_tables.inc. @ mysql-test/include/rpl_end.inc Renamed master-slave-end.inc to rpl_end.inc, and made it work with arbitrary replication topologies (as configured with rpl_init.inc and possibly rpl_change_topology.inc). Also made it assert that no slave thread has an error. Made it assert that no slave thread is stopped, unless $rpl_only_running_threads=1. @ mysql-test/include/rpl_for_each_slave.inc New test script that executes a command once for each slave. This is used by include/rpl_start_slaves.inc and include/rpl_stop_slaves.inc and could possibly be useful for other custom scripts too. @ mysql-test/include/rpl_generate_sync_chain.inc New file that computes the variable $rpl_sync_chain. This variable determines in what order slaves are synced by include/rpl_sync.inc. The variable is recomputed the first time that include/rpl_sync.inc is called after rpl_change_topology.inc. @ mysql-test/include/rpl_init.inc Made file work for arbitrary topologies instead of just 4-server circle. This file is used by master-slave.inc, rpl_master-slave_2ch.inc etc, and also by tests that need other specific replication topologies. @ mysql-test/include/rpl_reconnect.inc New auxiliary file that will reconnect many clients to a given server. All clients configured by rpl_init.inc will reconnect. @ mysql-test/include/rpl_reset.inc Made file work for arbitrary replication topologies, check for errors, and sync all threads. Also removed 'drop table' because that has nothing to do with replication. @ mysql-test/include/rpl_start_slaves.inc New auxiliary file to start all slaves configured by rpl_init.inc This is used internally by rpl_init.inc but may also be used by tests that want to bring all slaves up. @ mysql-test/include/rpl_stop_slaves.inc New auxiliary file to stop all slaves configured rpl_init.inc. This is used internally by rpl_end.inc, but may also be used by tests that want to stop all slaves. @ mysql-test/include/rpl_sync.inc Made file work for arbitrary replication topologies (as configured by rpl_init.inc and possibly rpl_change_topology.inc) instead of just 4-server circle. @ mysql-test/include/save_master_pos.inc Auxiliary file to save the master position. @ mysql-test/include/setup_fake_relay_log.inc - Moved complicated logic to write to file into write_var_to_file.inc, so that it can be re-used by other tests. - Added call to show_rpl_debug_info and die in error case. @ mysql-test/include/show_rpl_debug_info.inc - Made file print NOW() - Made file print both SHOW MASTER STATUS, SHOW SLAVE HOSTS, and SHOW SLAVE STATUS. - Made file print debug info for all servers configured by rpl_init.inc @ mysql-test/include/show_slave_status.inc - Made file use echo instead of SELECT to print variables. - Improved comments. - Use variable names that are less likely to be used by other tests. @ mysql-test/include/start_slave.inc - Made test use rpl_begin_include_file.inc to improve debug capabilities. - improved documentation @ mysql-test/include/stop_slave.inc - Made script capable to detect which threads are running and stop only those. - Improved documentation @ mysql-test/include/stop_slave_io.inc Added file to stop the slave IO thread. @ mysql-test/include/stop_slave_sql.inc Added file to stop the slave SQL thread. @ mysql-test/include/sync_io_with_master.inc Added file to sync the IO thread of the current connection, up to a previously saved position. @ mysql-test/include/sync_slave_io_with_master.inc - Made file work with arbitrarily-named connections. - Made file use rpl_begin_include_file.inc to improve debug capabilities. @ mysql-test/include/sync_slave_sql_with_io.inc Added file to sync only the SQL thread, up to the position copied in the IO thread. @ mysql-test/include/wait_for_query_to_fail.inc Added file to wait for a query to fail. @ mysql-test/include/wait_for_slave_io_error.inc - Use rpl_begin_include_file.inc to improve debug capabilities. - Use existing atom include/show_slave_status.inc to print error message. - Improve comments. ****** - This file now waits until the slave IO thread has completely stopped (to avoid races in tests). - Some IO thread errors are non-fatal and don't cause the slave IO thread to stop. To allow tests to wait for such errors, we add the parameters $slave_io_error_is_nonfatal. If $slave_io_error_is_nonfatal is set, this script does not wait for the IO thread to stop. @ mysql-test/include/wait_for_slave_io_to_start.inc - Made script fail if the IO thread has an error. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_io_to_stop.inc - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc to improve debug capabilities. - Improved documentation. @ mysql-test/include/wait_for_slave_param.inc - Added $slave_error_param. This variable can be set to Slave_IO_Errno or Slave_SQL_Errno, in which case the script fails if the corresponding column in the output from SHOW SLAVE STATUS is nonzero. - Replaced exit by die. - Made it print timeout seconds correctly in error message. - Removed $slave_error_message. This is not needed. - Use rpl_begin_include_file.inc for better debug capabilities. @ mysql-test/include/wait_for_slave_sql_error.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation - Use existing atom show_slave_status.inc to print error. @ mysql-test/include/wait_for_slave_sql_error_and_skip.inc - Use rpl_begin_include_file.inc and rpl_connection.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_sql_to_stop.inc - Fail if Last_SQL_Errno is nonzero. - Fail if server is not configured as slave. Previously, the script accepted servers not configured as slave because there was cleanup code called from master-slave.inc that would execute STOP SLAVE on both master and slave. Now all tests have to clean up after themselves, so we don't have to call stop slave at the beginning of tests. Hence, we disallow calling this script on servers not configured as slaves. - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_start.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/wait_for_slave_to_stop.inc - Use rpl_begin_include_file.inc for better debug capabilities. - Improve documentation @ mysql-test/include/write_var_to_file.inc Added file to write contents of a mysqltest variable to file. (This was previously in setup_fake_relay_log.inc) @ mysql-test/mysql-test-run.pl Allow tests to require restart in case the test is skipped. @ mysql-test/r/init_file.result updated result file @ mysql-test/r/mysqldump_restore.result update result file @ mysql-test/suite/binlog/r/binlog_drop_if_exists.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_old_versions.result updated result file @ mysql-test/suite/binlog/r/binlog_query_filter_rules.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_server_id.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sf.result Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/r/binlog_sql_mode.result updated result file @ mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt This test replicates, so it should be in the rpl suite. Then we can remove this .opt file too. @ mysql-test/suite/binlog/t/binlog_drop_if_exists.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_old_versions.test cosmetic fixes @ mysql-test/suite/binlog/t/binlog_query_filter_rules-master.opt Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_query_filter_rules.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_server_id.test Moved test that does not use replication to binlog suite. @ mysql-test/suite/binlog/t/binlog_sf.test Moved test that does not use replication to binlog suite. Since test sets binlog_format internally, it's useless to re-run it. Hence we source have_binlog_format_statement.inc @ mysql-test/suite/binlog/t/binlog_sql_mode.test - Test does not use replication, so we remove master-slave.inc. - mysqltest magically adds --force-if-open to $MYSQL_BINLOG in test files that source master-slave.inc. So now we have to add --force-if-open explicitly. @ mysql-test/suite/bugs/t/rpl_bug12691.test made test clean up after itself cosmetic fixes @ mysql-test/suite/bugs/t/rpl_bug23533.test made test clean up after itself cosmetic fixes @ mysql-test/suite/bugs/t/rpl_bug31582.test made test clean up after itself @ mysql-test/suite/bugs/t/rpl_bug31583.test made test clean up after itself @ mysql-test/suite/bugs/t/rpl_bug33029.test made test clean up after itself @ mysql-test/suite/bugs/t/rpl_bug36391.test made test clean up after itself cosmetic fixes @ mysql-test/suite/bugs/t/rpl_bug37426.test made test clean up after itself cosmetic fixes @ mysql-test/suite/bugs/t/rpl_bug38205.test made test clean up after itself @ mysql-test/suite/manual/t/rpl_replication_delay.test made test clean up after itself cosmetic fixes @ mysql-test/suite/ndb_team/t/rpl_ndb_dd_advance.test made test clean up after itself cosmetic fixes @ mysql-test/suite/ndb_team/t/rpl_ndb_extraColMaster.test made test clean up after itself @ mysql-test/suite/ndb_team/t/rpl_ndb_mix_innodb.test made test clean up after itself cosmetic fixes @ mysql-test/suite/parts/t/rpl_partition.test Make test clean up replication state. @ mysql-test/suite/rpl/include/rpl_mixed_ddl.inc made test clean up after itself cosmetic fixes @ mysql-test/suite/rpl/include/rpl_mixed_dml.inc made test clean up after itself cosmetic fixes @ mysql-test/suite/rpl/r/rpl_000010.result update result file @ mysql-test/suite/rpl/r/rpl_000011.result update result file @ mysql-test/suite/rpl/r/rpl_000013.result update result file @ mysql-test/suite/rpl/r/rpl_000017.result update result file @ mysql-test/suite/rpl/r/rpl_EE_err.result update result file @ mysql-test/suite/rpl/r/rpl_LD_INFILE.result update result file @ mysql-test/suite/rpl/r/rpl_alter.result update result file @ mysql-test/suite/rpl/r/rpl_alter_db.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_11932.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result update result file @ mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_corruption.result Updated result file @ mysql-test/suite/rpl/r/rpl_binlog_grant.result update result file @ mysql-test/suite/rpl/r/rpl_binlog_max_cache_size.result Updated result file @ mysql-test/suite/rpl/r/rpl_bit.result update result file @ mysql-test/suite/rpl/r/rpl_bit_npk.result update result file @ mysql-test/suite/rpl/r/rpl_blackhole.result update result file @ mysql-test/suite/rpl/r/rpl_bug26395.result update result file @ mysql-test/suite/rpl/r/rpl_bug31076.result update result file @ mysql-test/suite/rpl/r/rpl_bug33931.result updated result file @ mysql-test/suite/rpl/r/rpl_bug38694.result update result file @ mysql-test/suite/rpl/r/rpl_change_master.result update result file @ mysql-test/suite/rpl/r/rpl_charset.result update result file @ mysql-test/suite/rpl/r/rpl_charset_sjis.result update result file @ mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result Updated result file @ mysql-test/suite/rpl/r/rpl_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_commit_after_flush.result update result file @ mysql-test/suite/rpl/r/rpl_concurrency_error.result update result file @ mysql-test/suite/rpl/r/rpl_conditional_comments.result update result file @ mysql-test/suite/rpl/r/rpl_create_database.result update result file @ mysql-test/suite/rpl/r/rpl_create_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_cross_version.result Updated result file @ mysql-test/suite/rpl/r/rpl_current_user.result update result file @ mysql-test/suite/rpl/r/rpl_deadlock_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_delete_no_where.result update result file @ mysql-test/suite/rpl/r/rpl_do_grant.result updated result file @ mysql-test/suite/rpl/r/rpl_drop.result update result file @ mysql-test/suite/rpl/r/rpl_drop_db.result update result file @ mysql-test/suite/rpl/r/rpl_drop_temp.result update result file @ mysql-test/suite/rpl/r/rpl_drop_view.result update result file @ mysql-test/suite/rpl/r/rpl_dual_pos_advance.result update result file @ mysql-test/suite/rpl/r/rpl_empty_master_crash.result update result file @ mysql-test/suite/rpl/r/rpl_err_ignoredtable.result update result file @ mysql-test/suite/rpl/r/rpl_events.result update result file @ mysql-test/suite/rpl/r/rpl_extra_col_master_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extra_col_master_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_extra_col_slave_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_extra_col_slave_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_failed_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result update result file @ mysql-test/suite/rpl/r/rpl_flushlog_loop.result update result file @ mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_found_rows.result update result file @ mysql-test/suite/rpl/r/rpl_free_items.result update result file @ mysql-test/suite/rpl/r/rpl_geometry.result update result file @ mysql-test/suite/rpl/r/rpl_get_lock.result update result file @ mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result update result file @ mysql-test/suite/rpl/r/rpl_grant.result update result file @ mysql-test/suite/rpl/r/rpl_idempotency.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_grant.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_revoke.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table.result update result file @ mysql-test/suite/rpl/r/rpl_ignore_table_update.result update result file @ mysql-test/suite/rpl/r/rpl_incident.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave.result update result file @ mysql-test/suite/rpl/r/rpl_init_slave_errors.result update result file @ mysql-test/suite/rpl/r/rpl_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug28430.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_bug30888.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result update result file @ mysql-test/suite/rpl/r/rpl_insert.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id.result update result file @ mysql-test/suite/rpl/r/rpl_insert_id_pk.result update result file @ mysql-test/suite/rpl/r/rpl_insert_ignore.result update result file @ mysql-test/suite/rpl/r/rpl_insert_select.result update result file @ mysql-test/suite/rpl/r/rpl_invoked_features.result update result file @ mysql-test/suite/rpl/r/rpl_killed_ddl.result update result file @ mysql-test/suite/rpl/r/rpl_known_bugs_detection.result update result file @ mysql-test/suite/rpl/r/rpl_load_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_load_table_from_master.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_charset.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_concurrent.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_fatal.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_m.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_map.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_s.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_simple.result update result file @ mysql-test/suite/rpl/r/rpl_loaddata_symlink.result update result file @ mysql-test/suite/rpl/r/rpl_loaddatalocal.result update result file @ mysql-test/suite/rpl/r/rpl_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_locale.result update result file @ mysql-test/suite/rpl/r/rpl_log_pos.result update result file @ mysql-test/suite/rpl/r/rpl_manual_change_index_file.result update result file @ mysql-test/suite/rpl/r/rpl_many_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_master_pos_wait.result update result file @ mysql-test/suite/rpl/r/rpl_misc_functions.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result update result file @ mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete.result update result file @ mysql-test/suite/rpl/r/rpl_multi_delete2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_engine.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update2.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update3.result update result file @ mysql-test/suite/rpl/r/rpl_multi_update4.result update result file @ mysql-test/suite/rpl/r/rpl_mysql_upgrade.result update result file @ mysql-test/suite/rpl/r/rpl_name_const.result update result file @ mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_not_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_optimize.result update result file @ mysql-test/suite/rpl/r/rpl_packet.result update result file @ mysql-test/suite/rpl/r/rpl_plugin_load.result update result file @ mysql-test/suite/rpl/r/rpl_ps.result update result file @ mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result update result file @ mysql-test/suite/rpl/r/rpl_read_only.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_relay_space_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_relayrotate.result update result file @ mysql-test/suite/rpl/r/rpl_relayspace.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_do.result update result file @ mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result update result file @ mysql-test/suite/rpl/r/rpl_report.result update result file @ mysql-test/suite/rpl/r/rpl_rewrt_db.result update result file @ mysql-test/suite/rpl/r/rpl_rotate_logs.result update result file @ mysql-test/suite/rpl/r/rpl_row_001.result update result file @ mysql-test/suite/rpl/r/rpl_row_4_bytes.result update result file @ mysql-test/suite/rpl/r/rpl_row_NOW.result update result file @ mysql-test/suite/rpl/r/rpl_row_USER.result update result file @ mysql-test/suite/rpl/r/rpl_row_UUID.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_basic_8partition.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_blob_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_colSize.result update result file @ mysql-test/suite/rpl/r/rpl_row_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_row_delayed_ins.result update result file @ mysql-test/suite/rpl/r/rpl_row_drop.result update result file @ mysql-test/suite/rpl/r/rpl_row_find_row.result update result file @ mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_row_func001.result update result file @ mysql-test/suite/rpl/r/rpl_row_func002.result update result file @ mysql-test/suite/rpl/r/rpl_row_func003.result update result file @ mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result updated result file @ mysql-test/suite/rpl/r/rpl_row_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_row_log.result update result file @ mysql-test/suite/rpl/r/rpl_row_log_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp001.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp003.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp005.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp008.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp009.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp010.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp011.result update result file @ mysql-test/suite/rpl/r/rpl_row_sp012.result update result file @ mysql-test/suite/rpl/r/rpl_row_stop_middle_update.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig001.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig002.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig003.result update result file @ mysql-test/suite/rpl/r/rpl_row_trig004.result update result file @ mysql-test/suite/rpl/r/rpl_row_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result update result file @ mysql-test/suite/rpl/r/rpl_row_until.result update result file @ mysql-test/suite/rpl/r/rpl_row_view01.result update result file @ mysql-test/suite/rpl/r/rpl_row_wide_table.result update result file @ mysql-test/suite/rpl/r/rpl_server_id1.result update result file @ mysql-test/suite/rpl/r/rpl_server_id2.result update result file @ mysql-test/suite/rpl/r/rpl_session_var.result update result file @ mysql-test/suite/rpl/r/rpl_set_charset.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_set_null_myisam.result update result file @ mysql-test/suite/rpl/r/rpl_show_slave_running.result update result file @ mysql-test/suite/rpl/r/rpl_skip_error.result update result file @ mysql-test/suite/rpl/r/rpl_slave_grp_exec.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_in.result update result file @ mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result Updated result file @ mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result updated result file @ mysql-test/suite/rpl/r/rpl_slave_skip.result update result file @ mysql-test/suite/rpl/r/rpl_slave_status.result update result file @ mysql-test/suite/rpl/r/rpl_slow_query_log.result update result file @ mysql-test/suite/rpl/r/rpl_sp.result update result file @ mysql-test/suite/rpl/r/rpl_sp004.result update result file @ mysql-test/suite/rpl/r/rpl_sp_effects.result update result file @ mysql-test/suite/rpl/r/rpl_sporadic_master.result update result file @ mysql-test/suite/rpl/r/rpl_ssl.result update result file @ mysql-test/suite/rpl/r/rpl_ssl1.result update result file @ mysql-test/suite/rpl/r/rpl_start_stop_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_000001.result update result file @ mysql-test/suite/rpl/r/rpl_stm_EE_err2.result updated result file @ mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result update result file @ mysql-test/suite/rpl/r/rpl_stm_binlog_direct.result update result file @ mysql-test/suite/rpl/r/rpl_stm_conflicts.result update result file @ mysql-test/suite/rpl/r/rpl_stm_create_if_not_exists.result update result file @ mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result update result file @ mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result update result file @ mysql-test/suite/rpl/r/rpl_stm_loadfile.result update result file @ mysql-test/suite/rpl/r/rpl_stm_log.result update result file @ mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result update result file @ mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result update result file @ mysql-test/suite/rpl/r/rpl_stm_multi_query.result update result file @ mysql-test/suite/rpl/r/rpl_stm_no_op.result update result file @ mysql-test/suite/rpl/r/rpl_stm_reset_slave.result update result file @ mysql-test/suite/rpl/r/rpl_stm_sql_mode.result update result file @ mysql-test/suite/rpl/r/rpl_stm_until.result update result file @ mysql-test/suite/rpl/r/rpl_stop_slave.result update result file @ mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table.result update result file @ mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result update result file @ mysql-test/suite/rpl/r/rpl_temporary.result update result file @ mysql-test/suite/rpl/r/rpl_temporary_errors.result update result file @ mysql-test/suite/rpl/r/rpl_test_framework.result updated result file @ mysql-test/suite/rpl/r/rpl_timezone.result Updated result file @ mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result update result file @ mysql-test/suite/rpl/r/rpl_trigger.result update result file @ mysql-test/suite/rpl/r/rpl_trunc_temp.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_2myisam.result update result file @ mysql-test/suite/rpl/r/rpl_truncate_3innodb.result update result file @ mysql-test/suite/rpl/r/rpl_typeconv_innodb.result update result file @ mysql-test/suite/rpl/r/rpl_udf.result update result file @ mysql-test/suite/rpl/r/rpl_user.result update result file @ mysql-test/suite/rpl/r/rpl_user_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables.result update result file @ mysql-test/suite/rpl/r/rpl_variables_stm.result update result file @ mysql-test/suite/rpl/r/rpl_view.result update result file @ mysql-test/suite/rpl/t/disabled.def new test rpl_test_framework has to be disabled until mtr is safe to run with more than 10 servers. @ mysql-test/suite/rpl/t/rpl000017-slave.sh Moved contents of -slave.sh into test. @ mysql-test/suite/rpl/t/rpl_000010-slave.opt make all rpl tests use prefix rpl_ @ mysql-test/suite/rpl/t/rpl_000010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_000011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_000013.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_000017-slave.opt make all rpl tests use prefix rpl_ @ mysql-test/suite/rpl/t/rpl_000017.test Moved contents of -slave.sh into .test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_EE_err.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_LD_INFILE.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_alter.test made test clean up after itself replaced rpl_diff_tables by diff_tables cosmetic fixes @ mysql-test/suite/rpl/t/rpl_alter_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_auto_increment.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_auto_increment_11932.test Made test clean up replication state. don't drop database twice @ mysql-test/suite/rpl/t/rpl_auto_increment_bug33029.test - This test replicates, so moved it to rpl suite. - This test uses a fake relay log, so use include/setup_fake_relay_log.inc and cleanup_fake_relay_log.inc instead of ad-hoc code. - Made test clean up replication state (rpl_end.inc) @ mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test - Made test clean up replication state. - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test renamed rpl_end.inc to master-slave-end.inc @ mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt Got rid of useless -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_corruption.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_binlog_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_binlog_max_cache_size.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_bit.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bit_npk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_blackhole.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug26395.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug31076.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_bug33931.test Made test clean up replication state. Made test use source include/master-slave.inc instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_bug38694.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_change_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_charset_sjis.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.cnf Use new names of mtr variables (introduced by the changes in include/circular_rpl_init.inc). @ mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test - Use rpl_init.inc instead of circular_rpl_for_4_hosts.inc. Connections have been renamed (server_[1234] instead of master_[abcd]), we use rpl_sync.inc instead of circular_rpl_for_4_hosts_sync.inc, we use the new rpl_end.inc to clean up instead of doing it manually, and we use rpl_change_topology.inc instead of manual reconfiguration. - Added comment to make test understandable. - the test contained a race condition. server_4 was not sync'ed. This could cause sql_slave_skip_counter to have the value 1 when the test ended, so check-testcase would complain. Added 'sync_slave_with_master server_4'. @ mysql-test/suite/rpl/t/rpl_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_commit_after_flush.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_concurrency_error.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_conditional_comments.test made test clean up after itself new protocol for diff_tables.inc @ mysql-test/suite/rpl/t/rpl_create_database.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_create_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_create_tmp_table_if_not_exists.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_critical_errors.test Made test clean up replication state. Fixed syntax error in test. @ mysql-test/suite/rpl/t/rpl_cross_version.test Made test clean up replication state. Made test execute on slave connection instead of on master connection. This allows us to get rid of -master.opt file. @ mysql-test/suite/rpl/t/rpl_current_user.cnf use environment variables recognized by rpl_init.inc @ mysql-test/suite/rpl/t/rpl_current_user.test - Use rpl_init.inc instead of ad-hoc three-server setup. Hence, rename connection slave2 to server_3 - don't drop lots of things at the beginning of the test - rpl_diff_tables.inc does not sync any more, so we have to sync here instead - renamed $diff_table to $rpl_diff_table and $diff_table_list to $rpl_diff_table_list - use diff_tables.inc instead of rpl_diff_tables.inc @ mysql-test/suite/rpl/t/rpl_ddl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_deadlock_innodb.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_delete_no_where.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_do_grant.test Made test clean up replication state. renamed master-slave-end.inc to rpl_end.inc use include/check_slave_no_error.inc instead of ad-hoc construction @ mysql-test/suite/rpl/t/rpl_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_drop_view.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_dual_pos_advance.test Made test use the new framework for circular replication, instead of ad-hoc setup. @ mysql-test/suite/rpl/t/rpl_empty_master_crash.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_err_ignoredtable.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_events.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extra_col_master_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extra_col_slave_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_extra_col_slave_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_failed_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test renamed master-slave-end.inc to rpl_end.inc @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt Removed useless options from -master.opt file. @ mysql-test/suite/rpl/t/rpl_flushlog_loop-master.sh Removed useless -master.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt Removed useless options from -slave.opt file @ mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.sh Removed useless -slave.sh file @ mysql-test/suite/rpl/t/rpl_flushlog_loop.test Made test use new framework for circular replication, instead of ad-hoc setup. Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_foreign_key_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_found_rows.test Made test clean up replication state. replaced reset_master_and_slave.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_free_items.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_geometry.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_get_lock.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test Made test clean up replication state. Removed last part of test, because it was verbatim identical to rpl_server_id1.test @ mysql-test/suite/rpl/t/rpl_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_idempotency.test use check_slave_no_error.inc instead of ad-hoc tests use wait_for_slave_sql_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ignore_grant.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_revoke.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ignore_table_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_incident.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_init_slave_errors.test Made test clean up replication state. Also replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_innodb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug28430.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_bug30888.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_insert.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_id.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_insert_id_pk.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_insert_ignore.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_insert_select.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_invoked_features.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_killed_ddl.test - Made test clean up replication state. - renamed diff_master_slave.inc to rpl_diff.inc and renamed $diff_statement to $rpl_diff_statement @ mysql-test/suite/rpl/t/rpl_known_bugs_detection.test - Made test clean up replication state. - removed wait_for_slave_sql_to_stop.inc, because it already does wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_load_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_load_table_from_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_loaddata_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_fatal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_m.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_map.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_s.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_simple.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddata_symlink.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loaddatalocal.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_loadfile.test - Made test clean up replication state. - replace reset_master_and_slave.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. - diff_tables.inc also restores the connection to what it was before, so in this test we have to manually change connection after sourcing diff_tables.inc @ mysql-test/suite/rpl/t/rpl_locale.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_log_pos.test Made test clean up replication state. replace stop_slave.inc by stop_slave_sql.inc since the io thread is already stopped. @ mysql-test/suite/rpl/t/rpl_manual_change_index_file.test use wait_for_slave_io_error.inc instead of wait_for_slave_to_stop.inc replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_many_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_master_pos_wait.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_misc_functions.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_bit_pk.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_delete2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_engine.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_multi_update2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update3.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_multi_update4.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_mysql_upgrade.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_name_const.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_nondeterministic_functions.test - Made test clean up replication state. - diff_tables.inc now takes only one parameter. - diff_tables.inc also restores the connection to what it was before, so in this test we have to manually change connection after sourcing diff_tables.inc @ mysql-test/suite/rpl/t/rpl_not_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_not_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_optimize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_packet.test - Made test clean up replication state. - replace wait_for_slave_io_to_stop.inc by wait_for_slave_io_error.inc - replace master-slave-reset.inc by rpl_reset.inc + drop table t1. - replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. - added comment explaining why we need stop_slave_sql.inc (we shouldn't need it, it's a bug) @ mysql-test/suite/rpl/t/rpl_plugin_load.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_ps.test Made test clean up replication state. removed lots os useless junk @ mysql-test/suite/rpl/t/rpl_rbr_to_sbr.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_read_only.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relay_space_innodb.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_relay_space_myisam.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_relayrotate.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_relayspace.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_do.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_replicate_ignore_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_report.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rewrt_db.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.opt Got rid of unnecessary -slave.opt file @ mysql-test/suite/rpl/t/rpl_rotate_logs-slave.sh Got rid of unnecessary -slave.sh file @ mysql-test/suite/rpl/t/rpl_rotate_logs.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc - removed useless cleanup at beginning of test - did not make test use the standard replication framework (master-slave.inc + rpl_end.inc), because it won't work. i don't know why. @ mysql-test/suite/rpl/t/rpl_row_001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_4_bytes.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_NOW.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_USER.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_UUID.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_11bugs.test Made test clean up replication state. Removed unnecessary 'set binlog_format'. replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_basic_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_basic_8partition.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_blob_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_colSize.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_conflicts.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_create_table.test replace master-slave-end.inc by rpl_end.inc replace master-slave-reset.inc by rpl_reset.inc replace long sequence of reset master+reset slave by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_row_delayed_ins.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_row_drop.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_find_row.test - Made test clean up replication state. - replace master-slave-reset.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_row_func001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_func003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_inexist_tbl.test Made test clean up replication state. replace wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl/t/rpl_row_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_log_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test Made test clean up replication state @ mysql-test/suite/rpl/t/rpl_row_rec_comp_myisam.test - replace master-slave-reset.inc by rpl_reset.inc - Made test clean up replication state - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_row_sp001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp002_innodb.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_row_sp003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp005.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp006_InnoDB.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp007_innodb.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_row_sp008.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp009.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp010.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp011.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_sp012.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_stop_middle_update.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tabledefs_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test - replaced master-slave-reset.inc by rpl_reset.inc - replaced master-slave-end.inc by rpl_end.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_row_trig001.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig002.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig003.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trig004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_trunc_temp.test replaced master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl/t/rpl_row_unsafe_funcs.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_until.test Made test clean up replication state. Removed unused mtr variable $VERSION. @ mysql-test/suite/rpl/t/rpl_row_view01.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_row_wide_table.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_server_id1.test - Replaced ad-hoc setup of circular replication by call to rpl_init.inc - Made test clean up replication state. - Replaced ad-hoc use of wait_for_slave_param.inc by wait_for_slave_io_error.inc @ mysql-test/suite/rpl/t/rpl_server_id2.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_session_var.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_charset.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_set_null_myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_show_slave_running.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_skip_error.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_grp_exec.test - Made test clean up replication state. - replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error.inc - replaced stop_slave.inc by stop_slave_io.inc where the sql thread was already stopped. @ mysql-test/suite/rpl/t/rpl_slave_load_in.test - Made test clean up replication state. - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_load_tmpdir_not_exist.test - Made test clean up replication state. - Replaced call to wait_for_slave_sql_to_stop.inc by call to wait_for_slave_sql_error.inc - Replaced ad-hoc repliction setup by call to master-slave.inc @ mysql-test/suite/rpl/t/rpl_slave_skip.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_slave_status.test Made test clean up replication state. replaced check that IO thread has stopped by wait_for_slave_io_error.inc simplified cleanup code @ mysql-test/suite/rpl/t/rpl_slow_query_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp004.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sp_effects.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_sporadic_master.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_ssl1.test Made test clean up replication state. Replaced save_master_pos+connection slave+sync_slave_with_master by sync_slave_with_master @ mysql-test/suite/rpl/t/rpl_start_stop_slave.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_000001.test The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. Also made test clean up replication state, and replaced wait_for_slave_sql_to_stop.inc by wait_for_slave_sql_error_and_skip.inc @ mysql-test/suite/rpl/t/rpl_stm_000001.test - The include file extra/rpl_tests/rpl_stm_000001.test was only sourced once, in suite/rpl/t/rpl_stm_000001.test. Moved extra/rpl_tests/rpl_stm_000001.test to suite/rpl/t/rpl_stm_000001.test and removed the old suite/rpl/t/rpl_stm_000001.test. @ mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_binlog_direct.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_conflicts.test replaced master-slave-end.inc by rpl_end.inc cosmetic fixes @ mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_stm_insert_delayed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_loadfile.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_log.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_max_relay_size.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_stm_mixing_engines.test - replaced master-slave-end.inc by rpl_end.inc - replaced master-slave-reset.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_stm_multi_query.test cosmetic fixes @ mysql-test/suite/rpl/t/rpl_stm_no_op.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_stm_sql_mode.test made test clean up replication state @ mysql-test/suite/rpl/t/rpl_stm_until.test - Made test clean up replication state. - replaced master-slave-reset.inc by rpl_reset.inc - the relay log is now called slave-relay-bin.000003 instead of .000004, because master-slave.inc doesn't rotate it as much as before. @ mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_temp_table.test Made test clean up replication state. Replaced save_master_pos/connection slave/sync_with_master by sync_slave_with_master. @ mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test Made test clean up replication state. replaced ad-hoc call to 'connect' by include/rpl_connect.inc replaced master-slave-reset.inc by rpl_reset.inc @ mysql-test/suite/rpl/t/rpl_temporary.test - Made test clean up replication state. - This test sources include/delete_anonymous_users.inc on master. This means it updates the user table in the mysql database manually on the master. This causes failure in the slave sql thread when binlog_format=row. Hence, we stop the slave first and source include/delete_anonymous_users.inc on both master and slave. @ mysql-test/suite/rpl/t/rpl_temporary_errors.test Made test clean up replication state. cosmetic fixes @ mysql-test/suite/rpl/t/rpl_test_framework.cnf new cfg file for new test @ mysql-test/suite/rpl/t/rpl_test_framework.test new test case that verifies that include/rpl_change_topology.inc works @ mysql-test/suite/rpl/t/rpl_timezone.test - Made test clean up replication state. - stop slave before last sub-test, because that test does not use the slave connection. @ mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_trigger.test - Made test clean up replication state. - replace master-slave-reset.inc by rpl_reset.inc - use new file rpl_reconnect.inc instead of ad-hoc code - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_trunc_temp.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_2myisam.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_truncate_3innodb.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_typeconv_innodb.test - made test clean up replication state - removed unnecessary call to master-slave-reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_udf.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_user_variables.test Made test clean up replication state. @ mysql-test/suite/rpl/t/rpl_variables.test - Made test clean up replication state. - replaced reset_master_and_slave.inc by rpl_reset.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_variables_stm.test - Made test clean up replication state. - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl/t/rpl_view.test Made test clean up replication state. @ mysql-test/suite/rpl_ndb/r/rpl_ndb_2other.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_UUID.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_apply_status.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_auto_inc.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_blob2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_2ch.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_simplex.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_commit_afterflush.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ctype_ucs2_def.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_basic.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_delete_nowhere.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_db.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_do_table.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_func003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_idempotent.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb_trans.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_insert_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_log.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_engines_transactions.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_tables.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update2.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_multi_update3.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_rep_ignore.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_row_001.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_set_null.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp003.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sp006.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_stm_innodb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_sync.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_ndb_trig004.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_row_basic_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb.result updated result file @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2innodb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2myisam.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2ndb.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_2other.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_UUID.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_apply_status.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_auto_inc.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_bank.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_basic.test - replaced master-slave-end.inc by rpl_end.inc - removed wait_for_slave_sql_to_stop since it is followed by wait_for_slave_sql_error.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_blob2.test made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular.test made test use rpl_init.inc to setup circular replication, instead of ad-hoc setup made test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.cnf removed automatic configuration of server as slave. this is not needed because rpl_init.inc does it. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.test - made test clean up replication state - it seems that sync_slave_with_master does not work deterministically here, so instead we wait for 'drop table' to replicate by checking when the table disappears on slave. - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_simplex.test make test clean up replication state use rpl_change_topology.inc to reconfigure replication topology, instead of ad-hoc call to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_commit_afterflush.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ctype_ucs2_def.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_basic.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_partitions.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_ddl.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_delete_nowhere.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_db.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_do_table.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_extraCol.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_func003.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_idempotent.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb_trans.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_insert_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_load.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_log.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_engines_transactions.test - replace master-slave-end.inc by rpl_end.inc - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_tables.test - make test clean up replication state - diff_tables.inc now takes only one parameter. @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi.test - make test clean up replication state - use rpl_change_topology.inc to change replication topology, instead of ad-hoc calls to change master @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update2.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_multi_update3.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_rep_ignore.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_row_001.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_set_null.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp003.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sp006.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_stm_innodb.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_sync.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndb_trig004.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_ndbapi_multi.test make test clean up replication state @ mysql-test/suite/rpl_ndb/t/rpl_row_basic_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb.test replace master-slave-end.inc by rpl_end.inc @ mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2.test make test clean up replication state @ mysql-test/suite/sys_vars/t/rpl_init_slave_func.test made test clean up after itself @ mysql-test/t/init_file.test use new file force_restart.inc instead of SP
[3 Dec 2010 11:23]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125925 3162 Sven Sandberg 2010-12-03 [merge] Merge BUG#49978 from 5.1-bugteam to 5.5-bugteam
[3 Dec 2010 13:21]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/125937 3162 Sven Sandberg 2010-12-03 [merge] Merge BUG#49978 from 5.1-bugteam to 5.5-bugteam
[19 Dec 2010 23:27]
Sven Sandberg
Pushed to 5.1-bugteam, 5.5-bugteam, and trunk-bugfixing.
[21 Dec 2010 12:08]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/127404 3530 Sven Sandberg 2010-12-21 BUG#59084: rpl_do_grant started to fail on FreeBSD (presumably after BUG#49978) Problem: master executed a statement that would fail on slave (namely, DROP USER 'create_rout_db'@'localhost'). Then the test did: --let $rpl_only_running_threads= 1 --source include/rpl_reset.inc rpl_reset.inc calls rpl_sync.inc, which first checks which of the threads are running and then syncs those threads that are running. If the SQL thread fails after the check, the sync will fail. So there was a race in the test and it failed on some slow hosts. Fix: Don't replicate the failing statement.
[22 Dec 2010 21:30]
Bugs System
Pushed into mysql-trunk 5.6.1 (revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (version source revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (merge vers: 5.6.1) (pib:24)
[29 Dec 2010 12:51]
Bugs System
Pushed into mysql-5.1 5.1.55 (revid:alexander.nozdrin@oracle.com-20101229113432-o0c3f1pqklek1txm) (version source revid:alexander.nozdrin@oracle.com-20101229113109-ft3q9tewyueopxgf) (merge vers: 5.1.55) (pib:24)
[29 Dec 2010 12:52]
Bugs System
Pushed into mysql-5.5 5.5.9 (revid:alexander.nozdrin@oracle.com-20101229113652-km2v993aurv7h79j) (version source revid:alexander.nozdrin@oracle.com-20101229113132-uonlbcc2uopff8yb) (merge vers: 5.5.9) (pib:24)
[30 Dec 2010 18:52]
Paul DuBois
Changes to test suite. No changelog entry needed.