mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
BUG#13861 - START SLAVE UNTIL may stop 1 evnt too late if
log-slave-updates and circul repl After merge fixes. mysql-test/suite/rpl/t/rpl_dual_pos_advance-slave.opt: Rename: mysql-test/t/rpl_dual_pos_advance-slave.opt -> mysql-test/suite/rpl/t/rpl_dual_pos_advance-slave.opt mysql-test/include/wait_for_slave_sql_to_stop.inc: Do not change connection if it was requested by caller (needed for circular replication tests). mysql-test/suite/rpl/t/rpl_dual_pos_advance.test: Let include/wait_for_slave_sql_to_stop.inc know that we do not want to change connection to slave. sql/rpl_rli.cc: After merge fix. sql/rpl_rli.h: After merge fix. sql/slave.cc: After merge fix.
This commit is contained in:
@ -9,7 +9,10 @@
|
||||
# sql threads to stop
|
||||
# 3) If loops too long die.
|
||||
####################################################
|
||||
connection slave;
|
||||
if (!$keep_connection)
|
||||
{
|
||||
connection slave;
|
||||
}
|
||||
let $row_number= 1;
|
||||
let $run= 1;
|
||||
let $counter= 300;
|
||||
|
@ -12,6 +12,7 @@ source include/have_innodb.inc;
|
||||
|
||||
# set up "dual head"
|
||||
|
||||
let $keep_connection= 1;
|
||||
connection slave;
|
||||
reset master;
|
||||
|
||||
@ -67,11 +68,11 @@ connection master;
|
||||
start slave until master_log_file="slave-bin.000001",master_log_pos=195;
|
||||
|
||||
# wait until it's started (the position below is the start of "CREATE
|
||||
# TABLE t2") (otherwise wait_for_slave_to_stop may return at once)
|
||||
# TABLE t2") (otherwise wait_for_slave_sql_to_stop may return at once)
|
||||
|
||||
select master_pos_wait("slave-bin.000001",137);
|
||||
|
||||
--source include/wait_for_slave_to_stop.inc
|
||||
--source include/wait_for_slave_sql_to_stop.inc
|
||||
|
||||
# then BUG#13861 causes t3 to show up below (because stopped too
|
||||
# late).
|
||||
@ -80,12 +81,12 @@ show tables;
|
||||
|
||||
# ensure that we do not break set @a=1; insert into t3 values(@a);
|
||||
start slave until master_log_file="slave-bin.000001",master_log_pos=438;
|
||||
--source include/wait_for_slave_to_stop.inc
|
||||
--source include/wait_for_slave_sql_to_stop.inc
|
||||
select * from t3;
|
||||
|
||||
# ensure that we do not break transaction
|
||||
start slave until master_log_file="slave-bin.000001",master_log_pos=663;
|
||||
--source include/wait_for_slave_to_stop.inc
|
||||
--source include/wait_for_slave_sql_to_stop.inc
|
||||
select * from t3;
|
||||
|
||||
start slave;
|
||||
|
Reference in New Issue
Block a user