List:Commits« Previous MessageNext Message »
From:He Zhenxing Date:December 26 2008 8:20am
Subject:bzr commit into mysql-5.1 branch (zhenxing.he:2708) Bug#41708
View as plain text  
#At file:///media/sdb2/hezx/work/mysql/bzrwork/b41707/5.1-rpl/

 2708 He Zhenxing	2008-12-26
      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.
modified:
  mysql-test/include/wait_for_slave_io_to_stop.inc
  mysql-test/include/wait_for_slave_sql_to_stop.inc
  mysql-test/include/wait_for_slave_to_stop.inc

per-file messages:
  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
=== modified file 'mysql-test/include/wait_for_slave_io_to_stop.inc'
--- a/mysql-test/include/wait_for_slave_io_to_stop.inc	2008-07-10 16:09:39 +0000
+++ b/mysql-test/include/wait_for_slave_io_to_stop.inc	2008-12-26 08:20:29 +0000
@@ -11,8 +11,14 @@
 # $slave_keep_connection. See wait_for_slave_param.inc for
 # descriptions.
 
-let $slave_param= Slave_IO_Running;
-let $slave_param_value= No;
-let $slave_error_message= Failed while waiting for slave IO thread to stop;
-source include/wait_for_slave_param.inc;
-let $slave_error_message= ;
+# 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_param= Slave_IO_Running;
+  let $slave_param_value= No;
+  let $slave_error_message= Failed while waiting for slave IO thread to stop;
+  source include/wait_for_slave_param.inc;
+  let $slave_error_message= ;
+}

=== modified file 'mysql-test/include/wait_for_slave_sql_to_stop.inc'
--- a/mysql-test/include/wait_for_slave_sql_to_stop.inc	2008-07-10 16:09:39 +0000
+++ b/mysql-test/include/wait_for_slave_sql_to_stop.inc	2008-12-26 08:20:29 +0000
@@ -11,8 +11,14 @@
 # $slave_keep_connection. See wait_for_slave_param.inc for
 # descriptions.
 
-let $slave_param= Slave_SQL_Running;
-let $slave_param_value= No;
-let $slave_error_message= Failed while waiting for slave SQL thread to stop;
-source include/wait_for_slave_param.inc;
-let $slave_error_message= ;
+# 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_param= Slave_SQL_Running;
+  let $slave_param_value= No;
+  let $slave_error_message= Failed while waiting for slave SQL thread to stop;
+  source include/wait_for_slave_param.inc;
+  let $slave_error_message= ;
+}

=== modified file 'mysql-test/include/wait_for_slave_to_stop.inc'
--- a/mysql-test/include/wait_for_slave_to_stop.inc	2008-07-10 16:09:39 +0000
+++ b/mysql-test/include/wait_for_slave_to_stop.inc	2008-12-26 08:20:29 +0000
@@ -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= ;
+}

Thread
bzr commit into mysql-5.1 branch (zhenxing.he:2708) Bug#41708He Zhenxing26 Dec
  • Re: bzr commit into mysql-5.1 branch (zhenxing.he:2708) Bug#41708alfranio correia26 Dec