diff options
author | Andrei Elkin <aelkin@mysql.com> | 2008-12-19 20:59:22 +0200 |
---|---|---|
committer | Andrei Elkin <aelkin@mysql.com> | 2008-12-19 20:59:22 +0200 |
commit | 04d72f8682ea8f18b5edf9e8cc7d05470897e1fe (patch) | |
tree | 1e6c7387c209be1fb5f26e9430360b07d6291bd8 /mysql-test/suite/rpl | |
parent | 2790aceb3580d0ae4235d0ac6275a44ebac70cfc (diff) | |
download | mariadb-git-04d72f8682ea8f18b5edf9e8cc7d05470897e1fe.tar.gz |
Bug#38934 slave slave until does not work with --replicate-same-server-id
Bug#38540 rpl_server_id2 uses show slave status unnecessarily
Slave did not perform any event recorded into the relay log from some
different master when it was started with --replicate-same-server-id.
The reason appeared to be a consequence of BUG#38734 which stopped the
sql thread at its startup time.
The real fixes for the current bug are in the patch for BUG#38734.
This changeset carries only a regression test for the bugs. Bug#38540
gets fixed too by means of eliminating an extra show slave status.
Diffstat (limited to 'mysql-test/suite/rpl')
-rw-r--r-- | mysql-test/suite/rpl/r/rpl_server_id2.result | 51 | ||||
-rw-r--r-- | mysql-test/suite/rpl/t/disabled.def | 1 | ||||
-rw-r--r-- | mysql-test/suite/rpl/t/rpl_server_id2.test | 44 |
3 files changed, 52 insertions, 44 deletions
diff --git a/mysql-test/suite/rpl/r/rpl_server_id2.result b/mysql-test/suite/rpl/r/rpl_server_id2.result index f68f9ff829d..25ed49d8c3b 100644 --- a/mysql-test/suite/rpl/r/rpl_server_id2.result +++ b/mysql-test/suite/rpl/r/rpl_server_id2.result @@ -8,45 +8,6 @@ create table t1 (n int); reset master; stop slave; change master to master_port=SLAVE_PORT; -show slave status; -Slave_IO_State -Master_Host 127.0.0.1 -Master_User root -Master_Port SLAVE_PORT -Connect_Retry 1 -Master_Log_File -Read_Master_Log_Pos 4 -Relay_Log_File slave-relay-bin.000001 -Relay_Log_Pos 4 -Relay_Master_Log_File -Slave_IO_Running No -Slave_SQL_Running No -Replicate_Do_DB -Replicate_Ignore_DB -Replicate_Do_Table -Replicate_Ignore_Table -Replicate_Wild_Do_Table -Replicate_Wild_Ignore_Table # -Last_Errno 0 -Last_Error -Skip_Counter 0 -Exec_Master_Log_Pos 0 -Relay_Log_Space 106 -Until_Condition None -Until_Log_File -Until_Log_Pos 0 -Master_SSL_Allowed No -Master_SSL_CA_File -Master_SSL_CA_Path -Master_SSL_Cert -Master_SSL_Cipher -Master_SSL_Key -Seconds_Behind_Master NULL -Master_SSL_Verify_Server_Cert No -Last_IO_Errno # -Last_IO_Error # -Last_SQL_Errno 0 -Last_SQL_Error start slave; insert into t1 values (1); select * from t1; @@ -55,3 +16,15 @@ n 1 stop slave; drop table t1; +reset master; +create table t1(n int); +create table t2(n int); +change master to master_port=MASTER_PORT; +start slave until master_log_file='master-bin.000001', master_log_pos=107; +*** checking until postion execution: must be only t1 in the list *** +show tables; +Tables_in_test +t1 +start slave sql_thread; +drop table t1; +drop table t2; diff --git a/mysql-test/suite/rpl/t/disabled.def b/mysql-test/suite/rpl/t/disabled.def index 7823d8d8c74..ebdb8014f88 100644 --- a/mysql-test/suite/rpl/t/disabled.def +++ b/mysql-test/suite/rpl/t/disabled.def @@ -13,4 +13,3 @@ rpl_redirect : Failure is sporadic and and the test is superfluous (mats) rpl_innodb_bug28430 : Failure on Solaris Bug #36793 rpl_flushlog_loop : BUG#37733 2008-07-23 Sven disabled in 5.1-bugteam. the bug has been fixed in 5.1-rpl: please re-enable when that gets pushed to main -rpl_server_id2 : Bug#38540 rpl_server_id2 uses show slave status unnecessarily diff --git a/mysql-test/suite/rpl/t/rpl_server_id2.test b/mysql-test/suite/rpl/t/rpl_server_id2.test index 7e67fb42b4f..a9c789e97bf 100644 --- a/mysql-test/suite/rpl/t/rpl_server_id2.test +++ b/mysql-test/suite/rpl/t/rpl_server_id2.test @@ -9,9 +9,6 @@ reset master; stop slave; --replace_result $SLAVE_MYPORT SLAVE_PORT eval change master to master_port=$SLAVE_MYPORT; ---replace_result $SLAVE_MYPORT SLAVE_PORT ---replace_column 18 # 35 # 36 # -query_vertical show slave status; start slave; insert into t1 values (1); save_master_pos; @@ -23,4 +20,43 @@ select * from t1; # check that indeed 2 were inserted stop slave; drop table t1; -# End of 4.1 tests + +# +# Bug#38934 slave slave until does not work with --replicate-same-server-id +# +# Verifying that slave performs all events until the master_log_pos +# in presense of --replicate-same-server-id the slave is started with. + +connection master; +reset master; + +# setting the until position to correspond to the first following create table +# which will make the event executed and the slave sql thread stopped +# right after that. +let $until_pos= query_get_value(SHOW MASTER STATUS, Position, 1); +inc $until_pos; + +create table t1(n int); +create table t2(n int); + +connection slave; +--replace_result $MASTER_MYPORT MASTER_PORT +eval change master to master_port=$MASTER_MYPORT; +eval start slave until master_log_file='master-bin.000001', master_log_pos=$until_pos; +--source include/wait_for_slave_io_to_start.inc +--source include/wait_for_slave_sql_to_stop.inc + +--echo *** checking until postion execution: must be only t1 in the list *** +show tables; + +# cleanup + +connection slave; +start slave sql_thread; + +connection master; +drop table t1; +drop table t2; +sync_slave_with_master; + +# End of tests |