diff options
author | He Zhenxing <zhenxing.he@sun.com> | 2008-12-26 16:20:29 +0800 |
---|---|---|
committer | He Zhenxing <zhenxing.he@sun.com> | 2008-12-26 16:20:29 +0800 |
commit | dbb7b40cda3963d64c6507e7a8eabb90667e357b (patch) | |
tree | 16987fb5c364acf60f08d9d0ef5edfacc2abea33 /mysql-test/include/wait_for_slave_to_stop.inc | |
parent | f8fe9e0953f62534b0e2ff9c2b8b43870a66ceca (diff) | |
download | mariadb-git-dbb7b40cda3963d64c6507e7a8eabb90667e357b.tar.gz |
BUG#41708 rpl.rpl_flushlog_loop fails in pushbuild producing non-deterministic result file
If server has not been initialized as a slave (by CHANGE MASTER), then
SHOW SLAVE STATUS will return an empty set, and caused the waiting for
Slave_IO_running or Slave_SQL_running to 'No' fail.
This patch fixed the problem by return immediately if slave is not
initialized in include/wait_for_slave_*_to_stop.inc.
mysql-test/include/wait_for_slave_io_to_stop.inc:
Return immediately if slave is not initialized
mysql-test/include/wait_for_slave_sql_to_stop.inc:
Return immediately if slave is not initialized
mysql-test/include/wait_for_slave_to_stop.inc:
Return immediately if slave is not initialized
Diffstat (limited to 'mysql-test/include/wait_for_slave_to_stop.inc')
-rw-r--r-- | mysql-test/include/wait_for_slave_to_stop.inc | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/mysql-test/include/wait_for_slave_to_stop.inc b/mysql-test/include/wait_for_slave_to_stop.inc index 4973a27dc53..86604a15b95 100644 --- a/mysql-test/include/wait_for_slave_to_stop.inc +++ b/mysql-test/include/wait_for_slave_to_stop.inc @@ -11,14 +11,20 @@ # $slave_keep_connection. See wait_for_slave_param.inc for # descriptions. -let $slave_error_message= Failed while waiting for slave to stop; +# if server has not used CHANGE MASTER to initiate slave, SHOW SLAVE +# STATUS will return an empty set. +let $_slave_io_running= query_get_value("SHOW SLAVE STATUS", Slave_IO_Running, 1); +if (`SELECT '$_slave_io_running' != 'No such row'`) +{ + let $slave_error_message= Failed while waiting for slave to stop; -let $slave_param= Slave_IO_Running; -let $slave_param_value= No; -source include/wait_for_slave_param.inc; + let $slave_param= Slave_IO_Running; + let $slave_param_value= No; + source include/wait_for_slave_param.inc; -let $slave_param= Slave_SQL_Running; -let $slave_param_value= No; -source include/wait_for_slave_param.inc; + let $slave_param= Slave_SQL_Running; + let $slave_param_value= No; + source include/wait_for_slave_param.inc; -let $slave_error_message= ; + let $slave_error_message= ; +} |