List:Commits« Previous MessageNext Message »
From:tomas Date:March 24 2006 1:27pm
Subject:bk commit into 5.1 tree (tomas:1.1994) BUG#18451
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of tomas. When tomas 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
  1.1994 06/03/24 14:26:48 tomas@stripped +3 -0
  Bug #18451 Restoring a backup changes fragement type

  storage/ndb/tools/restore/consumer_restore.cpp
    1.23 06/03/24 14:26:38 tomas@stripped +4 -0
    Bug #18451 Restoring a backup changes fragement type

  storage/ndb/tools/restore/Restore.cpp
    1.30 06/03/24 14:26:38 tomas@stripped +0 -2
    Bug #18451 Restoring a backup changes fragement type

  sql/ha_ndbcluster.cc
    1.240 06/03/24 14:26:38 tomas@stripped +10 -0
    Bug #18451 Restoring a backup changes fragement type

# 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:	tomas
# Host:	poseidon.ndb.mysql.com
# Root:	/home/tomas/wl2325-alcatel

--- 1.29/storage/ndb/tools/restore/Restore.cpp	2005-10-06 10:26:09 +02:00
+++ 1.30/storage/ndb/tools/restore/Restore.cpp	2006-03-24 14:26:38 +01:00
@@ -226,8 +226,6 @@
     return false;
 
   debug << "parseTableInfo " << tableImpl->getName() << " done" << endl;
-  tableImpl->m_ng.clear();
-  tableImpl->m_fragmentType = NdbDictionary::Object::FragAllSmall;
   TableS * table = new TableS(m_fileHeader.NdbVersion, tableImpl);
   if(table == NULL) {
     return false;

--- 1.239/sql/ha_ndbcluster.cc	2006-02-16 16:34:46 +01:00
+++ 1.240/sql/ha_ndbcluster.cc	2006-03-24 14:26:38 +01:00
@@ -10240,6 +10240,12 @@
   NDBTAB::FragmentType ftype= NDBTAB::UserDefined;
   partition_element *part_elem;
 
+  if (part_info->part_type != HASH_PARTITION)
+  {
+    sql_print_information("Resetting partition to HASH for table %s.%s",
+                          table->s->db, table->s->table_name);
+    part_info->part_type= HASH_PARTITION;
+  }
   if (part_info->part_type == HASH_PARTITION &&
       part_info->list_of_part_fields == TRUE)
   {
@@ -10257,6 +10263,7 @@
       col->setPartitionKey(TRUE);
     }
   }
+#if 0
   List_iterator<partition_element> part_it(part_info->partitions);
   for (i= 0; i < part_info->no_parts; i++)
   {
@@ -10285,6 +10292,7 @@
     }
   }
   tab->setNodeGroupIds(&node_group, ng_index);
+#endif
   tab->setFragmentType(ftype);
   DBUG_RETURN(0);
 }
@@ -10340,7 +10348,9 @@
     break;
   }
   tab.setFragmentType(ftype);
+#if 0
   tab.setNodeGroupIds(&node_group, no_fragments);
+#endif
   DBUG_VOID_RETURN;
 }
 

--- 1.22/storage/ndb/tools/restore/consumer_restore.cpp	2005-11-16 11:25:22 +01:00
+++ 1.23/storage/ndb/tools/restore/consumer_restore.cpp	2006-03-24 14:26:38 +01:00
@@ -240,6 +240,10 @@
   if(m_restore_meta){
     NdbDictionary::Table copy(*table.m_dictTable);
 
+    // reset fragmentation info
+    // Note, this does not take care of user defined partitions
+    copy.setNodeGroupIds(0, 0);
+
     copy.setName(split[2].c_str());
 
     if (dict->createTable(copy) == -1) 
Thread
bk commit into 5.1 tree (tomas:1.1994) BUG#18451tomas24 Mar