Fix for bug #28772: rpl_row_until fails in pushbuild

Problem: we use 'sleep 2; wait_for_slave_to_stop;' to reach some slave's states
which is buggy, wasteful of time, platform dependant etc.
Fix: use include/wait_for_slave_***.inc's where it's possible instead.
parent e1ea1cb6
...@@ -25,7 +25,7 @@ while ($run) ...@@ -25,7 +25,7 @@ while ($run)
sleep 0.1; sleep 0.1;
if (!$counter){ if (!$counter){
--echo "Failed while waiting for slave IO thread to stop" --echo "Failed while waiting for slave IO thread to stop"
SHOW SLAVE STATUS; query_vertical SHOW SLAVE STATUS;
exit; exit;
} }
dec $counter; dec $counter;
......
...@@ -23,7 +23,7 @@ while ($run) ...@@ -23,7 +23,7 @@ while ($run)
sleep 0.1; sleep 0.1;
if (!$counter){ if (!$counter){
--echo "Failed while waiting for slave SQL thread to stop" --echo "Failed while waiting for slave SQL thread to stop"
SHOW SLAVE STATUS; query_vertical SHOW SLAVE STATUS;
exit; exit;
} }
dec $counter; dec $counter;
......
...@@ -26,7 +26,7 @@ while ($run) ...@@ -26,7 +26,7 @@ while ($run)
sleep 0.1; sleep 0.1;
if (!$counter){ if (!$counter){
--echo "Failed while waiting for slave to start" --echo "Failed while waiting for slave to start"
SHOW SLAVE STATUS; query_vertical SHOW SLAVE STATUS;
exit; exit;
} }
dec $counter; dec $counter;
......
...@@ -28,7 +28,7 @@ while ($run) ...@@ -28,7 +28,7 @@ while ($run)
sleep 0.1; sleep 0.1;
if (!$counter){ if (!$counter){
--echo "Failed while waiting for slave to stop" --echo "Failed while waiting for slave to stop"
SHOW SLAVE STATUS; query_vertical SHOW SLAVE STATUS;
exit; exit;
} }
dec $counter; dec $counter;
......
...@@ -27,8 +27,7 @@ drop table t2; ...@@ -27,8 +27,7 @@ drop table t2;
# try to replicate all queries until drop of t1 # try to replicate all queries until drop of t1
connection slave; connection slave;
start slave until master_log_file='master-bin.000001', master_log_pos=311; start slave until master_log_file='master-bin.000001', master_log_pos=311;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
# here table should be still not deleted # here table should be still not deleted
select * from t1; select * from t1;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
...@@ -37,18 +36,16 @@ select * from t1; ...@@ -37,18 +36,16 @@ select * from t1;
# this should fail right after start # this should fail right after start
start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291; start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
--source include/wait_for_slave_sql_to_stop.inc
# again this table should be still not deleted # again this table should be still not deleted
select * from t1; select * from t1;
sleep 2;
wait_for_slave_to_stop;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 9 # 11 # 23 # 33 # --replace_column 1 # 9 # 11 # 23 # 33 #
--query_vertical SHOW SLAVE STATUS; --query_vertical SHOW SLAVE STATUS;
# try replicate all up to and not including the second insert to t2; # try replicate all up to and not including the second insert to t2;
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=728; start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=728;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
select * from t2; select * from t2;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 9 # 11 # 23 # 33 # --replace_column 1 # 9 # 11 # 23 # 33 #
...@@ -64,8 +61,7 @@ stop slave; ...@@ -64,8 +61,7 @@ stop slave;
# this should stop immediately as we are already there # this should stop immediately as we are already there
start slave until master_log_file='master-bin.000001', master_log_pos=740; start slave until master_log_file='master-bin.000001', master_log_pos=740;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
# here the sql slave thread should be stopped # here the sql slave thread should be stopped
--replace_result $MASTER_MYPORT MASTER_MYPORT bin.000005 bin.000004 bin.000006 bin.000004 bin.000007 bin.000004 --replace_result $MASTER_MYPORT MASTER_MYPORT bin.000005 bin.000004 bin.000006 bin.000004 bin.000007 bin.000004
--replace_column 1 # 9 # 23 # 33 # --replace_column 1 # 9 # 23 # 33 #
......
...@@ -26,8 +26,7 @@ drop table t2; ...@@ -26,8 +26,7 @@ drop table t2;
# try to replicate all queries until drop of t1 # try to replicate all queries until drop of t1
connection slave; connection slave;
start slave until master_log_file='master-bin.000001', master_log_pos=323; start slave until master_log_file='master-bin.000001', master_log_pos=323;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
# here table should be still not deleted # here table should be still not deleted
select * from t1; select * from t1;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
...@@ -36,18 +35,16 @@ select * from t1; ...@@ -36,18 +35,16 @@ select * from t1;
# this should fail right after start # this should fail right after start
start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291; start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
--source include/wait_for_slave_sql_to_stop.inc
# again this table should be still not deleted # again this table should be still not deleted
select * from t1; select * from t1;
sleep 2;
wait_for_slave_to_stop;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 9 # 11 # 23 # 33 # --replace_column 1 # 9 # 11 # 23 # 33 #
--query_vertical SHOW SLAVE STATUS --query_vertical SHOW SLAVE STATUS
# try replicate all up to and not including the second insert to t2; # try replicate all up to and not including the second insert to t2;
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746; start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
select * from t2; select * from t2;
--replace_result $MASTER_MYPORT MASTER_MYPORT --replace_result $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 9 # 11 # 23 # 33 # --replace_column 1 # 9 # 11 # 23 # 33 #
...@@ -63,8 +60,7 @@ stop slave; ...@@ -63,8 +60,7 @@ stop slave;
# this should stop immediately as we are already there # this should stop immediately as we are already there
start slave until master_log_file='master-bin.000001', master_log_pos=776; start slave until master_log_file='master-bin.000001', master_log_pos=776;
sleep 2; --source include/wait_for_slave_sql_to_stop.inc
wait_for_slave_to_stop;
# here the sql slave thread should be stopped # here the sql slave thread should be stopped
--replace_result $MASTER_MYPORT MASTER_MYPORT bin.000005 bin.000004 bin.000006 bin.000004 bin.000007 bin.000004 --replace_result $MASTER_MYPORT MASTER_MYPORT bin.000005 bin.000004 bin.000006 bin.000004 bin.000007 bin.000004
--replace_column 1 # 9 # 23 # 33 # --replace_column 1 # 9 # 23 # 33 #
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment