MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:jonas Date:January 6 2008 6:12pm
Subject:bk commit into 5.1 tree (jonas:1.2825) BUG#33715
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of jonas.  When jonas 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@stripped, 2008-01-06 19:12:24+01:00, jonas@stripped +4 -0
  ndb - bug#33715
    init commitackmarker bitmask during LQH_TRANSCONF (tc-takeover)
    also change so that TC_COMMIT_ACK is sent JBB

  storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp@stripped, 2008-01-06 19:12:19+01:00, jonas@stripped +3 -1
    ndb - bug#33715
      init commitackmarker bitmask during LQH_TRANSCONF (tc-takeover)

  storage/ndb/src/ndbapi/Ndbif.cpp@stripped, 2008-01-06 19:12:20+01:00, jonas@stripped +1 -1
    send TC_COMMIT_ACK on prio b

  storage/ndb/src/ndbapi/TransporterFacade.cpp@stripped, 2008-01-06 19:12:20+01:00, jonas@stripped +6 -3
    send TC_COMMIT_ACK on prio b

  storage/ndb/src/ndbapi/TransporterFacade.hpp@stripped, 2008-01-06 19:12:20+01:00, jonas@stripped +1 -1
    send TC_COMMIT_ACK on prio b

diff -Nrup a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
--- a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2007-12-23 13:52:21 +01:00
+++ b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2008-01-06 19:12:19 +01:00
@@ -4584,7 +4584,7 @@ void Dbtc::sendCommitLqh(Signal* signal,
   if (unlikely(!ndb_check_micro_gcp(getNodeInfo(Thostptr.i).m_version)))
   {
     jam();
-    ndbassert(Tdata5 == 0);
+    //ndbassert(Tdata5 == 0);
     Thostptr.p->noOfPackedWordsLqh = Tindex + 4; // no gci_lo
   }
 }//Dbtc::sendCommitLqh()
@@ -8452,6 +8452,7 @@ void Dbtc::initApiConnectFail(Signal* si
     tmp.p->transid1      = ttransid1;
     tmp.p->transid2      = ttransid2;
     tmp.p->apiNodeId     = refToNode(tapplRef);
+    tmp.p->m_commit_ack_marker_nodes.clear();
     tmp.p->m_commit_ack_marker_nodes.set(tnodeid);
     tmp.p->apiConnectPtr = apiConnectptr.i;
 
@@ -8616,6 +8617,7 @@ void Dbtc::updateApiStateFail(Signal* si
       tmp.p->transid2      = ttransid2;
       tmp.p->apiNodeId     = refToNode(tapplRef);
       tmp.p->apiConnectPtr = apiConnectptr.i;
+      tmp.p->m_commit_ack_marker_nodes.clear();
 #if defined VM_TRACE || defined ERROR_INSERT
       {
 	CommitAckMarkerPtr check;
diff -Nrup a/storage/ndb/src/ndbapi/Ndbif.cpp b/storage/ndb/src/ndbapi/Ndbif.cpp
--- a/storage/ndb/src/ndbapi/Ndbif.cpp	2007-09-12 13:30:25 +02:00
+++ b/storage/ndb/src/ndbapi/Ndbif.cpp	2008-01-06 19:12:20 +01:00
@@ -1452,7 +1452,7 @@ NdbTransaction::sendTC_COMMIT_ACK(Transp
   Uint32 * dataPtr = aSignal->getDataPtrSend();
   dataPtr[0] = transId1;
   dataPtr[1] = transId2;
-  tp->sendSignalUnCond(aSignal, refToNode(aTCRef));
+  tp->sendSignalUnCond(aSignal, refToNode(aTCRef), 1);
 }
 
 int
diff -Nrup a/storage/ndb/src/ndbapi/TransporterFacade.cpp b/storage/ndb/src/ndbapi/TransporterFacade.cpp
--- a/storage/ndb/src/ndbapi/TransporterFacade.cpp	2007-11-20 15:12:56 +01:00
+++ b/storage/ndb/src/ndbapi/TransporterFacade.cpp	2008-01-06 19:12:20 +01:00
@@ -1047,15 +1047,18 @@ TransporterFacade::sendSignal(NdbApiSign
 }
 
 int
-TransporterFacade::sendSignalUnCond(NdbApiSignal * aSignal, NodeId aNode){
+TransporterFacade::sendSignalUnCond(NdbApiSignal * aSignal, 
+                                    NodeId aNode,
+                                    Uint32 prio){
   Uint32* tDataPtr = aSignal->getDataPtrSend();
+  assert(prio >= 0 && prio <= 1);
 #ifdef API_TRACE
   if(setSignalLog() && TRACE_GSN(aSignal->theVerId_signalNumber)){
     Uint32 tmp = aSignal->theSendersBlockRef;
     aSignal->theSendersBlockRef = numberToRef(tmp, theOwnId);
     LinearSectionPtr ptr[3];
     signalLogger.sendSignal(* aSignal,
-			    0,
+			    prio,
 			    tDataPtr,
 			    aNode, ptr, 0);
     signalLogger.flushSignalLog();
@@ -1066,7 +1069,7 @@ TransporterFacade::sendSignalUnCond(NdbA
          (aSignal->theLength <= 25) &&
          (aSignal->theReceiversBlockNumber != 0));
   SendStatus ss = theTransporterRegistry->prepareSend(aSignal, 
-						      0, 
+						      prio, 
 						      tDataPtr,
 						      aNode, 
 						      0);
diff -Nrup a/storage/ndb/src/ndbapi/TransporterFacade.hpp b/storage/ndb/src/ndbapi/TransporterFacade.hpp
--- a/storage/ndb/src/ndbapi/TransporterFacade.hpp	2007-04-02 21:37:47 +02:00
+++ b/storage/ndb/src/ndbapi/TransporterFacade.hpp	2008-01-06 19:12:20 +01:00
@@ -177,7 +177,7 @@ private:
   friend class Ndb_cluster_connection_impl;
   friend class NdbTransaction;
   
-  int sendSignalUnCond(NdbApiSignal *, NodeId nodeId);
+  int sendSignalUnCond(NdbApiSignal *, NodeId nodeId, Uint32 prio = 0);
 
   bool isConnected(NodeId aNodeId);
   void doStop();
Thread
bk commit into 5.1 tree (jonas:1.2825) BUG#33715jonas6 Jan