Below is the list of changes that have just been committed into a local
5.1 repository of root. When root does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2006-10-09 11:01:33+08:00, gni@dev3-127.(none) +2 -0
BUG #14612 If a restore is done on a slave cluster, yet the apply_status and schema
tables don't exist,
ndb_restore should create the apply_status and schema table.
storage/ndb/tools/restore/consumer_restore.cpp@stripped, 2006-10-09 11:01:28+08:00,
gni@dev3-127.(none) +7 -0
If the apply_status and schema tables in cluster database have existed,
don't create them again and immediately return true.
storage/ndb/tools/restore/restore_main.cpp@stripped, 2006-10-09 11:01:28+08:00,
gni@dev3-127.(none) +9 -1
if the system table is apply_status or schema and they don't exist, they will be
created.
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: gni
# Host: dev3-127.(none)
# Root: /mnt/mysql/home/ngb/mysql-5.1/mysql-5.1-bug14612
--- 1.45/storage/ndb/tools/restore/restore_main.cpp 2006-10-09 11:02:41 +08:00
+++ 1.46/storage/ndb/tools/restore/restore_main.cpp 2006-10-09 11:02:41 +08:00
@@ -554,7 +554,15 @@
debug << "Restoring tables" << endl;
for(i = 0; i<metaData.getNoOfTables(); i++)
{
- if (checkSysTable(metaData, i))
+ const char *tablename = metaData[i]->getTableName();
+ bool isCheckSysTable = true;
+
+ if( strcmp(tablename, NDB_REP_DB "/def/" NDB_APPLY_TABLE) == 0 ||
+ strcmp(tablename, NDB_REP_DB "/def/" NDB_SCHEMA_TABLE)== 0 ){
+ isCheckSysTable = false;
+ }
+
+ if (!isCheckSysTable || checkSysTable(metaData, i))
{
for(Uint32 j= 0; j < g_consumers.size(); j++)
if (!g_consumers[j]->table(* metaData[i]))
--- 1.35/storage/ndb/tools/restore/consumer_restore.cpp 2006-10-09 11:02:41 +08:00
+++ 1.36/storage/ndb/tools/restore/consumer_restore.cpp 2006-10-09 11:02:41 +08:00
@@ -693,6 +693,13 @@
NdbDictionary::Dictionary* dict = m_ndb->getDictionary();
if(m_restore_meta)
{
+ if( ( dict->getTable(split[2].c_str()) != NULL ) &&
+ ( strcmp(name, NDB_REP_DB "/def/" NDB_APPLY_TABLE) == 0 ||
+ strcmp(name, NDB_REP_DB "/def/" NDB_SCHEMA_TABLE)== 0 )
+ ){
+ return true;
+ }
+
NdbDictionary::Table copy(*table.m_dictTable);
copy.setName(split[2].c_str());
| Thread |
|---|
| • bk commit into 5.1 tree (gni:1.2296) BUG#14612 | gni | 9 Oct |