List:Commits« Previous MessageNext Message »
From:Pekka Nousiainen Date:November 3 2009 7:31pm
Subject:bzr commit into mysql-5.1-telco-7.0 branch (pekka:3190) Bug#48498
View as plain text  
#At file:///export/space/pekka/ndb/version/my51-wl4391/ based on revid:magnus.blaudd@stripped

 3190 Pekka Nousiainen	2009-11-03
      bug#48498 01_ddsr.diff
      DBLQH proxy START_RECREQ: pass lowest lcpId to LGMAN

    modified:
      storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.cpp
=== modified file 'storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.cpp'
--- a/storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.cpp	2009-09-29 14:02:31 +0000
+++ b/storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.cpp	2009-11-03 19:31:25 +0000
@@ -1283,7 +1283,18 @@ DblqhProxy::sendSTART_RECREQ_2(Signal* s
   if (firstReply(ss)) {
     ss.m_req = *req;
   } else {
-    // ndbrequire(ss.m_req.lcpId == req->lcpId); wl4391_todo
+    jam();
+    /*
+     * Fragments can be started from different lcpId's.  LGMAN must run
+     * UNDO until lowest lcpId.  Each DBLQH instance computes the lowest
+     * lcpId in START_FRAGREQ.  In MT case the proxy further computes
+     * the lowest of the lcpId's from worker instances.
+     */
+    if (req->lcpId < ss.m_req.lcpId)
+    {
+      jam();
+      ss.m_req.lcpId = req->lcpId;
+    }
     ndbrequire(ss.m_req.proxyBlockNo == req->proxyBlockNo);
   }
 


Attachment: [text/bzr-bundle] bzr/pekka@mysql.com-20091103193125-uc6w1uviasa3ss2m.bundle
Thread
bzr commit into mysql-5.1-telco-7.0 branch (pekka:3190) Bug#48498Pekka Nousiainen3 Nov