List:Commits« Previous MessageNext Message »
From:Dao-Gang.Qu Date:October 19 2010 8:54am
Subject:bzr push into mysql-next-mr-bugfixing branch (Dao-Gang.Qu:3324 to 3325)
Bug#56913
View as plain text  
 3325 Dao-Gang.Qu@stripped	2010-10-19
      Bug #56913    rpl_row_ignorable_event fails sporadically on next-mr-bugfixing codebase
      
      Post fix
     @ mysql-test/suite/rpl/t/rpl_row_ignorable_event.test
        Added debug check.

    modified:
      mysql-test/suite/rpl/t/rpl_row_ignorable_event.test
 3324 Dao-Gang.Qu@stripped	2010-10-15
      Bug #56913    rpl_row_ignorable_event fails sporadically on next-mr-bugfixing codebase
      
      In RBR, The rows are inserted to a queue by the thread executing
      the 'INSERT DELAYED' statement, and are taken out from the queue
      by the handler thread to do the real insertion. Because these two
      threads are running in parallel, there is a possibility that they
      are run in an interleaved manner, and result in different number
      of table_map and rows events.
      
      Added a debug option for the test to make the binlog of multi
      'INSERT DELAYED ...' stmt stable by forcing every value is
      executed into one execution series, and then each value will
      be binlogged into a separate rows event with its table map
      event. And the original SQL statement will be displayed just
      for the first separate rows event because the query is NULL
      in other separate rows. 
     @ mysql-test/suite/rpl/r/rpl_row_ignorable_event.result
        Updated for the patch of Bug#56913.
     @ mysql-test/suite/rpl/t/rpl_row_ignorable_event.test
        Updated to test single 'INSERT DELAYED ...' stmt as the binlog
        of multi 'INSERT DELAYED ...' stmt is unstable.
     @ sql/log_event.cc
        Added code to clear query in case the randomizing pointer
        to the query will be used to binlog Rows_query_log_event
        for the second and following separate rows events for
        multi 'INSERT DELAYED ...' stmt
     @ sql/sql_insert.cc
        Set DBUG point to make every value is executed in one separate
        execution series for multi 'INSERT DELAYED ...' stmt.

    modified:
      mysql-test/suite/rpl/r/rpl_row_ignorable_event.result
      mysql-test/suite/rpl/t/rpl_row_ignorable_event.test
      sql/log_event.cc
      sql/sql_insert.cc
=== modified file 'mysql-test/suite/rpl/t/rpl_row_ignorable_event.test'
--- a/mysql-test/suite/rpl/t/rpl_row_ignorable_event.test	2010-10-15 05:30:43 +0000
+++ b/mysql-test/suite/rpl/t/rpl_row_ignorable_event.test	2010-10-19 08:51:50 +0000
@@ -11,6 +11,7 @@ source include/have_binlog_format_row.in
 source include/master-slave.inc;
 source include/have_binlog_rows_query.inc;
 source include/have_innodb.inc;
+source include/have_debug.inc;
 
 SET @old_debug= @@global.debug;
 SET GLOBAL debug="+d,waiting_for_delayed_insert_queue_is_empty";


Attachment: [text/bzr-bundle] bzr/dao-gang.qu@sun.com-20101019085150-2fs24g7g0k8z21q5.bundle
Thread
bzr push into mysql-next-mr-bugfixing branch (Dao-Gang.Qu:3324 to 3325)Bug#56913Dao-Gang.Qu19 Oct