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#5929 | Pekka Nousiainen | 18 Oct |