List:Commits« Previous MessageNext Message »
From:Pekka Nousiainen Date:October 17 2012 10:56am
Subject:bzr push into mysql-5.1-telco-7.0 branch (pekka.nousiainen:4999 to 5000)
Bug#14772503 WL#5929
View as plain text  
 5000 Pekka Nousiainen	2012-10-17
      wl#5929 sp_fix01.diff
      bug#14772503 ndb_apply_status regression

    modified:
      sql/ha_ndbcluster_binlog.cc
 4999 Maitrayi Sabaratnam	2012-10-12
      Bug #4671934 - NDB_CONFIG: DEFAULT VALUES MISSING FOR PARAMETERS

    modified:
      storage/ndb/src/mgmsrv/ConfigInfo.cpp
=== modified file 'sql/ha_ndbcluster_binlog.cc'
--- a/sql/ha_ndbcluster_binlog.cc	2012-09-13 11:32:36 +0000
+++ b/sql/ha_ndbcluster_binlog.cc	2012-10-17 10:44:50 +0000
@@ -6550,7 +6550,17 @@ injectApplyStatusWriteRow(injector::tran
 
   /*
     Intialize apply_status_table->record[0]
+
+    When iterating past the end of the last epoch, the first event of
+    the new epoch may be on ndb_apply_status.  Its event data saved
+    in record[0] would be overwritten here by a subsequent event on a
+    normal table.  So save and restore its record[0].
   */
+  static const ulong sav_max= 512; // current is 284
+  const ulong sav_len= apply_status_table->s->reclength;
+  DBUG_ASSERT(sav_len <= sav_max);
+  uchar sav_buf[sav_max];
+  memcpy(sav_buf, apply_status_table->record[0], sav_len);
   empty_record(apply_status_table);
 
   apply_status_table->field[0]->store((longlong)::server_id, true);
@@ -6576,6 +6586,7 @@ injectApplyStatusWriteRow(injector::tran
 
   assert(ret == 0);
 
+  memcpy(apply_status_table->record[0], sav_buf, sav_len);
   DBUG_RETURN(true);
 }
 

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-5.1-telco-7.0 branch (pekka.nousiainen:4999 to 5000)Bug#14772503 WL#5929Pekka Nousiainen18 Oct