List:Commits« Previous MessageNext Message »
From:tomas Date:January 26 2006 8:49am
Subject:bk commit into 5.1 tree (tomas:1.1979)
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.1979 06/01/26 09:48:56 tomas@stripped +4 -0
      added dump at unable to find restorable replica
      added dump at unable to find restorable replica
      add debug printout for tracing early connection handling
      fix bug in error message handling on some connect failures

  storage/ndb/src/kernel/vm/TransporterCallback.cpp
    1.12 06/01/26 09:48:42 tomas@stripped +2 -1
    fix bug in error message handling on some connect failures

  storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
    1.24 06/01/26 09:48:42 tomas@stripped +2 -2
    add debug printout for tracing early connection handling

  storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp
    1.40 06/01/26 09:48:42 tomas@stripped +78 -0
    added dump at unable to find restorable replica

  storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp
    1.11 06/01/26 09:48:42 tomas@stripped +2 -0
    added dump at unable to find restorable replica

# 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.10/storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp	2005-07-18 13:30:21 +02:00
+++ 1.11/storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp	2006-01-26 09:48:42 +01:00
@@ -1596,6 +1596,8 @@
    * Reply from nodeId
    */
   void startInfoReply(Signal *, Uint32 nodeId);
+
+  void dump_replica_info();
 };
 
 #if (DIH_CDATA_SIZE < _SYSFILE_SIZE32)

--- 1.39/storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp	2005-12-20 10:05:43 +01:00
+++ 1.40/storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp	2006-01-26 09:48:42 +01:00
@@ -8690,6 +8690,80 @@
 /*****************************************************************************/
 /* **********     START FRAGMENT MODULE                          *************/
 /*****************************************************************************/
+void
+Dbdih::dump_replica_info()
+{
+  TabRecordPtr tabPtr;
+  FragmentstorePtr fragPtr;
+
+  for(tabPtr.i = 0; tabPtr.i < ctabFileSize; tabPtr.i++)
+  {
+    ptrCheckGuard(tabPtr, ctabFileSize, tabRecord);
+    if (tabPtr.p->tabStatus != TabRecord::TS_ACTIVE)
+      continue;
+    
+    for(Uint32 fid = 0; fid<tabPtr.p->totalfragments; fid++)
+    {
+      getFragstore(tabPtr.p, fid, fragPtr);
+      ndbout_c("tab: %d frag: %d gci: %d\n  -- storedReplicas:", 
+	       tabPtr.i, fid, SYSFILE->newestRestorableGCI);
+      
+      Uint32 i;
+      ReplicaRecordPtr replicaPtr;
+      replicaPtr.i = fragPtr.p->storedReplicas;
+      for(; replicaPtr.i != RNIL; replicaPtr.i = replicaPtr.p->nextReplica)
+      {
+	ptrCheckGuard(replicaPtr, creplicaFileSize, replicaRecord);
+	ndbout_c("  node: %d initialGci: %d nextLcp: %d noCrashedReplicas: %d",
+		 replicaPtr.p->procNode,
+		 replicaPtr.p->initialGci,
+		 replicaPtr.p->nextLcp,
+		 replicaPtr.p->noCrashedReplicas);
+	for(i = 0; i<MAX_LCP_STORED; i++)
+	{
+	  ndbout_c("    i: %d %s : lcpId: %d maxGci Completed: %d Started: %d",
+		   i, 
+		   (replicaPtr.p->lcpStatus[i] == ZVALID ?"VALID":"INVALID"),
+		   replicaPtr.p->lcpId[i],
+		   replicaPtr.p->maxGciCompleted[i],
+		   replicaPtr.p->maxGciStarted[i]);
+	}
+	
+	for (i = 0; i < 8; i++)
+	{
+	  ndbout_c("    crashed replica: %d replicaLastGci: %d createGci: %d",
+		   i, 
+		   replicaPtr.p->replicaLastGci[i],
+		   replicaPtr.p->createGci[i]);
+	}
+      }
+      ndbout_c("  -- oldStoredReplicas");
+      replicaPtr.i = fragPtr.p->oldStoredReplicas;
+      for(; replicaPtr.i != RNIL; replicaPtr.i = replicaPtr.p->nextReplica)
+      {
+	ptrCheckGuard(replicaPtr, creplicaFileSize, replicaRecord);
+	for(i = 0; i<MAX_LCP_STORED; i++)
+	{
+	  ndbout_c("    i: %d %s : lcpId: %d maxGci Completed: %d Started: %d",
+		   i, 
+		   (replicaPtr.p->lcpStatus[i] == ZVALID ?"VALID":"INVALID"),
+		   replicaPtr.p->lcpId[i],
+		   replicaPtr.p->maxGciCompleted[i],
+		   replicaPtr.p->maxGciStarted[i]);
+	}
+	
+	for (i = 0; i < 8; i++)
+	{
+	  ndbout_c("    crashed replica: %d replicaLastGci: %d createGci: %d",
+		   i, 
+		   replicaPtr.p->replicaLastGci[i],
+		   replicaPtr.p->createGci[i]);
+	}
+      }
+    }
+  }
+}
+
 void Dbdih::startFragment(Signal* signal, Uint32 tableId, Uint32 fragId) 
 {
   Uint32 TloopCount = 0;
@@ -8763,6 +8837,10 @@
     char buf[64];
     BaseString::snprintf(buf, sizeof(buf), "table: %d fragment: %d gci: %d",
 			 tableId, fragId, SYSFILE->newestRestorableGCI);
+
+    ndbout_c(buf);
+    dump_replica_info();
+
     progError(__LINE__, NDBD_EXIT_NO_RESTORABLE_REPLICA, buf);
     ndbrequire(false);
     return;

--- 1.23/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp	2006-01-18 10:18:47 +01:00
+++ 1.24/storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp	2006-01-26 09:48:42 +01:00
@@ -945,10 +945,10 @@
     return;
   case ZFAIL_CLOSING:
     jam();
-#ifdef VM_TRACE
+//#ifdef VM_TRACE
     ndbout_c("Enabling communication to CM_ADD node state=%d", 
 	     nodePtr.p->phase);
-#endif
+//#endif
     nodePtr.p->phase = ZSTARTING;
     nodePtr.p->failState = NORMAL;
     signal->theData[0] = 0;

--- 1.11/storage/ndb/src/kernel/vm/TransporterCallback.cpp	2005-10-11 17:05:51 +02:00
+++ 1.12/storage/ndb/src/kernel/vm/TransporterCallback.cpp	2006-01-26 09:48:42 +01:00
@@ -55,7 +55,8 @@
 const char *lookupConnectionError(Uint32 err)
 {
   int i= 0;
-  while ((Uint32)connectionError[i].err != err && (Uint32)connectionError[i].err != -1);
+  while ((Uint32)connectionError[i].err != err && (Uint32)connectionError[i].err != -1)
+    i++;
   return connectionError[i].text;
 }
 
Thread
bk commit into 5.1 tree (tomas:1.1979)tomas26 Jan