List:Commits« Previous MessageNext Message »
From:Alfranio Correia Date:January 31 2011 10:11am
Subject:bzr commit into mysql-5.1 branch (alfranio.correia:3569)
View as plain text  
#At file:///home/acorreia/workspace.oracle/repository.mysql/bzrwork/bug-59338/mysql-5.1-merge/ based on revid:alfranio.correia@stripped

 3569 Alfranio Correia	2011-01-31 [merge]
      merge mysql-5.1 (local) --> mysql-5.1

    modified:
      mysql-test/suite/rpl/t/disabled.def
      sql/sql_repl.cc
=== modified file 'mysql-test/suite/rpl/t/disabled.def'
--- a/mysql-test/suite/rpl/t/disabled.def	2011-01-26 12:37:24 +0000
+++ b/mysql-test/suite/rpl/t/disabled.def	2011-01-28 01:25:26 +0000
@@ -11,7 +11,6 @@
 ##############################################################################
 
 rpl_row_create_table : Bug#51574 Feb 27 2010 andrei failed different way than earlier with bug#45576
-rpl_log_pos : BUG#55675 Sep 10 2010 27 2010 alfranio rpl.rpl_log_pos fails sporadically with error binlog truncated in the middle
 rpl_get_master_version_and_clock : Bug#59178 Jan 05 2011 joro Valgrind warnings rpl_get_master_version_and_clock
 rpl_row_until : BUG#59543 Jan 26 2011 alfranio Replication test from eits suite rpl_row_until times out
 rpl_stm_until : BUG#59543 Jan 26 2011 alfranio Replication test from eits suite rpl_row_until times out

=== modified file 'sql/sql_repl.cc'
--- a/sql/sql_repl.cc	2011-01-24 03:48:54 +0000
+++ b/sql/sql_repl.cc	2011-01-28 01:25:26 +0000
@@ -545,8 +545,10 @@ impossible position";
 
   while (!net->error && net->vio != 0 && !thd->killed)
   {
+    my_off_t prev_pos= pos;
     while (!(error = Log_event::read_log_event(&log, packet, log_lock)))
     {
+      prev_pos= my_b_tell(&log);
 #ifndef DBUG_OFF
       if (max_binlog_dump_events && !left_events--)
       {
@@ -613,8 +615,13 @@ impossible position";
       here we were reading binlog that was not closed properly (as a result
       of a crash ?). treat any corruption as EOF
     */
-    if (binlog_can_be_corrupted && error != LOG_READ_MEM)
+    if (binlog_can_be_corrupted &&
+        error != LOG_READ_MEM && error != LOG_READ_EOF)
+    {
+      my_b_seek(&log, prev_pos);
       error=LOG_READ_EOF;
+    }
+
     /*
       TODO: now that we are logging the offset, check to make sure
       the recorded offset and the actual match.

No bundle (reason: revision is a merge).
Thread
bzr commit into mysql-5.1 branch (alfranio.correia:3569) Alfranio Correia31 Jan