List:Commits« Previous MessageNext Message »
From:Mikael Ronstrom Date:December 20 2011 1:57pm
Subject:bzr push into mysql-5.5-cluster-7.2 branch (mikael.ronstrom:3669 to 3670)
View as plain text  
 3670 Mikael Ronstrom	2011-12-20
      ROUTE_ORD could use nodeId == 0, handle this before calling getReceiveThreadId

    modified:
      storage/ndb/src/kernel/blocks/trpman.cpp
 3669 Mikael Ronstrom	2011-12-20 [merge]
      null merge

=== modified file 'storage/ndb/src/kernel/blocks/trpman.cpp'
--- a/storage/ndb/src/kernel/blocks/trpman.cpp	revid:mikael.ronstrom@stripped
+++ b/storage/ndb/src/kernel/blocks/trpman.cpp	revid:mikael.ronstrom@stripped
@@ -183,7 +183,7 @@ Trpman::execCLOSE_COMREQ(Signal* signal)
 //  Uint32 noOfNodes = closeCom->noOfNodes;
 
   jamEntry();
-  for (unsigned i = 0; i < MAX_NODES; i++)
+  for (unsigned i = 1; i < MAX_NODES; i++)
   {
     if (NodeBitmask::get(closeCom->theNodes, i) &&
         handles_this_node(i))
@@ -246,7 +246,7 @@ Trpman::execENABLE_COMREQ(Signal* signal
   MEMCOPY_NO_WORDS(nodes, enableComReq->m_nodeIds, NodeBitmask::Size);
 
   /* Enable communication with all our NDB blocks to these nodes. */
-  Uint32 search_from = 0;
+  Uint32 search_from = 1;
   for (;;)
   {
     Uint32 tStartingNode = NodeBitmask::find(nodes, search_from);
@@ -463,7 +463,7 @@ Trpman::execDUMP_STATE_ORD(Signal* signa
     CLEAR_ERROR_INSERT_VALUE;
     if (signal->getLength() == 1 || signal->theData[1])
     {
-      for (Uint32 i = 0; i<MAX_NODES; i++)
+      for (Uint32 i = 1; i<MAX_NODES; i++)
       {
 	if (c_error_9000_nodes_mask.get(i) &&
             handles_this_node(i))
@@ -488,7 +488,7 @@ Trpman::execDUMP_STATE_ORD(Signal* signa
   if (arg == 9005 && signal->getLength() == 2 && ERROR_INSERTED(9004))
   {
     Uint32 db = signal->theData[1];
-    Uint32 i = c_error_9000_nodes_mask.find(0);
+    Uint32 i = c_error_9000_nodes_mask.find(1);
     if (handles_this_node(i))
     {
       signal->theData[0] = i;
@@ -594,7 +594,7 @@ Trpman::execDUMP_STATE_ORD(Signal* signa
   }
   if (arg == 9991) /* Unblock recv from all blocked */
   {
-    for (Uint32 node = 0; node < MAX_NODES; node++)
+    for (Uint32 node = 1; node < MAX_NODES; node++)
     {
       if (!handles_this_node(node))
         continue;
@@ -806,6 +806,9 @@ TrpmanProxy::execROUTE_ORD(Signal* signa
   Uint32 dstRef = ord->dstRef;
   Uint32 nodeId = refToNode(dstRef);
   jamEntry();
+
+  if (!nodeId)
+    nodeId = getOwnNodeId();
   Uint32 workerId = globalTransporterRegistry.getReceiveThreadId(nodeId);
   SectionHandle handle(this, signal);
   sendSignal(workerRef(workerId), GSN_ROUTE_ORD, signal,

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-5.5-cluster-7.2 branch (mikael.ronstrom:3669 to 3670) Mikael Ronstrom21 Dec