MySQL Lists are EOL. Please join:

List:Internals« Previous MessageNext Message »
From:tomas Date:November 16 2005 10:50am
Subject:bk commit into 5.1 tree (tomas:1.1953) BUG#14971
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.1953 05/11/16 11:50:06 tomas@stripped +7 -0
  Bug #14971  	Purge master logs command may hang mysql server for cluster replication
  +    correct error message in ndb_restore

  storage/ndb/tools/restore/consumer_restore.cpp
    1.22 05/11/16 11:25:22 tomas@stripped +12 -6
    correct error message in ndb_restore

  storage/ndb/tools/restore/consumer.hpp
    1.8 05/11/16 11:25:21 tomas@stripped +1 -0
    correct error message in ndb_restore

  storage/ndb/tools/restore/consumer.cpp
    1.8 05/11/16 11:25:21 tomas@stripped +2 -0
    correct error message in ndb_restore

  sql/sql_base.cc
    1.278 05/11/16 11:25:21 tomas@stripped +4 -2
    Bug #14971  	Purge master logs command may hang mysql server for cluster replication

  sql/mysqld.cc
    1.487 05/11/16 11:25:21 tomas@stripped +0 -1
    Bug #14971  	Purge master logs command may hang mysql server for cluster replication

  sql/handler.cc
    1.199 05/11/16 11:25:21 tomas@stripped +1 -1
    Bug #14971  	Purge master logs command may hang mysql server for cluster replication

  configure.in
    1.303 05/11/16 11:25:21 tomas@stripped +2 -2
    updated custom version

# 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/mysql-5.1-wl2325-5.0

--- 1.302/configure.in	2005-10-14 11:55:24 +02:00
+++ 1.303/configure.in	2005-11-16 11:25:21 +01:00
@@ -7,7 +7,7 @@
 AC_CANONICAL_SYSTEM
 # The Docs Makefile.am parses this line!
 # Don't forget to also update the NDB lines below.
-AM_INIT_AUTOMAKE(mysql, 5.1.2-a_drop5p5)
+AM_INIT_AUTOMAKE(mysql, 5.1.2-a_drop5p6)
 AM_CONFIG_HEADER(config.h)
 
 PROTOCOL_VERSION=10
@@ -19,7 +19,7 @@
 NDB_VERSION_MAJOR=5
 NDB_VERSION_MINOR=1
 NDB_VERSION_BUILD=2
-NDB_VERSION_STATUS="a_drop5p5"
+NDB_VERSION_STATUS="a_drop5p6"
 
 # Set all version vars based on $VERSION. How do we do this more elegant ?
 # Remember that regexps needs to quote [ and ] since this is run through m4

--- 1.198/sql/handler.cc	2005-10-14 14:36:25 +02:00
+++ 1.199/sql/handler.cc	2005-11-16 11:25:21 +01:00
@@ -2754,7 +2754,7 @@
                                               const byte *before_record,
                                               const byte *after_record)
 {
-  if (h->is_injective())
+  if (h->is_injective() || table->s->system_table)
     return 0;
   bool error= 0;
   if (check_table_binlog_row_based(table)) 

--- 1.486/sql/mysqld.cc	2005-10-21 07:06:48 +02:00
+++ 1.487/sql/mysqld.cc	2005-11-16 11:25:21 +01:00
@@ -2906,7 +2906,6 @@
 #ifdef HAVE_ROW_BASED_REPLICATION
     if (have_ndbcluster == SHOW_OPTION_YES)
     {
-      rpl_filter->add_ignore_table("cluster_replication.binlog_index");
       opt_binlog_format_id= BF_ROW;
     }
     else

--- 1.277/sql/sql_base.cc	2005-10-14 10:31:05 +02:00
+++ 1.278/sql/sql_base.cc	2005-11-16 11:25:21 +01:00
@@ -1824,8 +1824,10 @@
     allow to lock such tables for writing with any other tables (even with
     other system tables) and some privilege tables need this.
   */
-  if (!my_strcasecmp(system_charset_info, db, "mysql") &&
-      !my_strcasecmp(system_charset_info, name, "proc"))
+  if ((!my_strcasecmp(system_charset_info, db, "mysql") &&
+       !my_strcasecmp(system_charset_info, name, "proc")) ||
+      (!my_strcasecmp(system_charset_info, db, "cluster_replication") &&
+       !my_strcasecmp(system_charset_info, name, "binlog_index")))
     entry->s->system_table= 1;
 
   if (Table_triggers_list::check_n_load(thd, db, name, entry, 0))

--- 1.7/storage/ndb/tools/restore/consumer.cpp	2005-04-08 02:44:35 +02:00
+++ 1.8/storage/ndb/tools/restore/consumer.cpp	2005-11-16 11:25:21 +01:00
@@ -16,6 +16,8 @@
 
 #include "consumer.hpp"
 
+const char *Ndb_apply_table=  NDB_APPLY_TABLE;
+
 #ifdef USE_MYSQL
 int
 BackupConsumer::create_table_string(const TableS & table,

--- 1.7/storage/ndb/tools/restore/consumer.hpp	2005-07-21 20:35:10 +02:00
+++ 1.8/storage/ndb/tools/restore/consumer.hpp	2005-11-16 11:25:21 +01:00
@@ -22,6 +22,7 @@
 #define NDB_REP_DB      "cluster_replication"
 #define NDB_REP_TABLE   "binlog_index"
 #define NDB_APPLY_TABLE "apply_status"
+extern const char *Ndb_apply_table;
 
 class BackupConsumer {
 public:

--- 1.21/storage/ndb/tools/restore/consumer_restore.cpp	2005-10-10 09:33:04 +02:00
+++ 1.22/storage/ndb/tools/restore/consumer_restore.cpp	2005-11-16 11:25:22 +01:00
@@ -163,10 +163,12 @@
   m_ndb->setDatabaseName(NDB_REP_DB);
   m_ndb->setSchemaName("def");
 
-  const NdbDictionary::Table *ndbtab= m_ndb->getDictionary()->getTable(NDB_APPLY_TABLE);
+  NdbDictionary::Dictionary *dict= m_ndb->getDictionary();
+  const NdbDictionary::Table *ndbtab= dict->getTable(Ndb_apply_table);
   if (!ndbtab)
   {
-    err << m_ndb->getNdbError() << endl;
+    err << Ndb_apply_table << ": "
+	<< dict->getNdbError() << endl;
     return false;
   }
   Uint32 server_id= 0;
@@ -174,25 +176,29 @@
   NdbTransaction * trans= m_ndb->startTransaction();
   if (!trans)
   {
-    err << m_ndb->getNdbError() << endl;
+    err << Ndb_apply_table << ": "
+	<< m_ndb->getNdbError() << endl;
     return false;
   }
   NdbOperation * op= trans->getNdbOperation(ndbtab);
   if (!op)
   {
-    err << trans->getNdbError() << endl;
+    err << Ndb_apply_table << ": "
+	<< trans->getNdbError() << endl;
     goto err;
   }
   if (op->writeTuple() ||
       op->equal(0u, (const char *)&server_id, sizeof(server_id)) ||
       op->setValue(1u, (const char *)&epoch, sizeof(epoch)))
   {
-    err << op->getNdbError() << endl;
+    err << Ndb_apply_table << ": "
+	<< op->getNdbError() << endl;
     goto err;
   }
   if (trans->execute(NdbTransaction::Commit))
   {
-    err << trans->getNdbError() << endl;
+    err << Ndb_apply_table << ": "
+	<< trans->getNdbError() << endl;
     goto err;
   }
   result= true;
Thread
bk commit into 5.1 tree (tomas:1.1953) BUG#14971tomas16 Nov