List:Commits« Previous MessageNext Message »
From:Mikael Ronstrom Date:December 20 2011 2:19pm
Subject:bzr push into mysql-5.5-cluster-7.2 branch (mikael.ronstrom:3670 to 3672)
View as plain text  
 3672 Mikael Ronstrom	2011-12-20
      Missed init of one entry in arrays for multiple receive threads

    modified:
      storage/ndb/src/common/transporter/TransporterRegistry.cpp
 3671 Mikael Ronstrom	2011-12-20
      Improved fix of getReceiveThreadId method

    modified:
      storage/ndb/src/common/transporter/TransporterRegistry.cpp
      storage/ndb/src/kernel/blocks/trpman.cpp
 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
=== modified file 'storage/ndb/src/common/transporter/TransporterRegistry.cpp'
--- a/storage/ndb/src/common/transporter/TransporterRegistry.cpp	revid:mikael.ronstrom@stripped
+++ b/storage/ndb/src/common/transporter/TransporterRegistry.cpp	revid:mikael.ronstrom@stripped
@@ -139,7 +139,7 @@ TransporterRegistry::TransporterRegistry
             maxTransporters * sizeof(struct epoll_event));
    }
  }
- for (i = maxReceiveThreads + 1; i < MAX_NDBMT_RECEIVE_THREADS; i++)
+ for (i = maxReceiveThreads; i < MAX_NDBMT_RECEIVE_THREADS; i++)
  {
    m_epoll_events[i] = NULL;
    m_epoll_fd[i] = (int)-1;
@@ -989,10 +989,12 @@ TransporterRegistry::wakeup()
 
 Uint32 TransporterRegistry::getReceiveThreadId(Uint32 node)
 {
+  /* Always use receive thread id 0 for own node and not used
+     node ids */
   if (theTransporters[node])
     return theTransporters[node]->receiver_thread_id();
   else
-    return 255; /* Returns an impossible thread id simply */
+    return 0; /* Returns an impossible thread id simply */
 }
 
 Uint32

=== 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
@@ -807,8 +807,6 @@ TrpmanProxy::execROUTE_ORD(Signal* signa
   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:3670 to 3672) Mikael Ronstrom21 Dec