List:Commits« Previous MessageNext Message »
From:Luis Soares Date:May 17 2011 10:52pm
Subject:bzr commit into mysql-trunk branch (luis.soares:3096) Bug#12370830
View as plain text  
#At file:///home/lsoares/Workspace/bzr/work/bugfixing/12370830/mysql-trunk/ based on revid:marc.alff@stripped

 3096 Luis Soares	2011-05-17
      BUG#12370830: RPL_CHECKSUM FAILED ON PB2 (SERVER CRASH)
      
      The server crashes while trying to printout trace information
      when compiled in debug mode. The problem seems to be the same
      as the one reported in BUG#11765758, except that it happens in
      another test case. 
      
      Fixed the test case by deploying the necessary synchronization 
      measures for slave threads before setting the debug variable.

    modified:
      mysql-test/suite/rpl/r/rpl_checksum.result
      mysql-test/suite/rpl/t/rpl_checksum.test
=== modified file 'mysql-test/suite/rpl/r/rpl_checksum.result'
--- a/mysql-test/suite/rpl/r/rpl_checksum.result	2011-03-08 19:12:46 +0000
+++ b/mysql-test/suite/rpl/r/rpl_checksum.result	2011-05-17 22:52:04 +0000
@@ -68,6 +68,7 @@ Last_IO_Error = 'Got fatal error 1236 fr
 select count(*) as zero from t1;
 zero
 0
+include/stop_slave.inc
 set @@global.debug='';
 include/start_slave.inc
 set @@global.master_verify_checksum = 1;
@@ -84,12 +85,13 @@ include/wait_for_slave_io_error.inc [err
 Last_IO_Error = 'Relay log write failure: could not queue event from master'
 set @@global.debug='';
 start slave io_thread;
-include/wait_for_slave_param.inc [Read_Master_Log_Pos]
+include/sync_slave_io_with_master.inc
 set @@global.slave_sql_verify_checksum = 1;
 set @@global.debug='d,simulate_checksum_test_failure';
 start slave sql_thread;
 include/wait_for_slave_sql_error.inc [errno=1593]
 Last_SQL_Error = 'Error initializing relay log position: I/O error reading event at position 4'
+include/stop_slave.inc
 set @@global.debug='';
 include/start_slave.inc
 select count(*) as 'must be zero' from t2;

=== modified file 'mysql-test/suite/rpl/t/rpl_checksum.test'
--- a/mysql-test/suite/rpl/t/rpl_checksum.test	2011-03-08 19:12:46 +0000
+++ b/mysql-test/suite/rpl/t/rpl_checksum.test	2011-05-17 22:52:04 +0000
@@ -108,6 +108,11 @@ source include/wait_for_slave_io_error.i
 select count(*) as zero from t1;
 
 ###connection master;
+
+# *always* make sure the slave threads are stopped 
+# or in waiting state before updating the global debug
+# variable (see BUG#11765758 for details).
+--source include/stop_slave.inc
 set @@global.debug='';
 
 connection slave;
@@ -145,27 +150,24 @@ start slave io_thread;
 let $slave_io_errno= 1595; # ER_SLAVE_RELAY_LOG_WRITE_FAILURE
 --let $show_slave_io_error= 1
 source include/wait_for_slave_io_error.inc;
+# no need to stop the IO thread, it is already stopped
 set @@global.debug='';
 
 # to make IO thread re-read it again w/o the failure
 start slave io_thread;
-let $slave_param= Read_Master_Log_Pos;
-let $slave_param_value= $pos_master;
-source include/wait_for_slave_param.inc;
+--connection master
+--source include/sync_slave_io_with_master.inc
 
 # C3. Failure by SQL thread
 # instruction to sql thread;
 set @@global.slave_sql_verify_checksum = 1;
-
 set @@global.debug='d,simulate_checksum_test_failure';
-
 start slave sql_thread;
 let $slave_sql_errno= 1593; # ER_SLAVE_FATAL_ERROR
 --let $show_slave_sql_error= 1
 source include/wait_for_slave_sql_error.inc;
-
+--source include/stop_slave.inc
 # resuming SQL thread to parse out the event w/o the failure
-
 set @@global.debug=''; 
 source include/start_slave.inc;
 


Attachment: [text/bzr-bundle] bzr/luis.soares@oracle.com-20110517225204-w14yieiu5qfqwvdr.bundle
Thread
bzr commit into mysql-trunk branch (luis.soares:3096) Bug#12370830Luis Soares19 May