Commit af76e150 authored by jonas@perch.ndb.mysql.com's avatar jonas@perch.ndb.mysql.com

Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca

into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
parents a3c733c3 b940b92e
...@@ -11794,6 +11794,13 @@ void Dblqh::sendLCP_COMPLETE_REP(Signal* signal, Uint32 lcpId) ...@@ -11794,6 +11794,13 @@ void Dblqh::sendLCP_COMPLETE_REP(Signal* signal, Uint32 lcpId)
jam(); jam();
sendEMPTY_LCP_CONF(signal, true); sendEMPTY_LCP_CONF(signal, true);
} }
if (getNodeState().getNodeRestartInProgress())
{
jam();
ndbrequire(cstartRecReq == 2);
cstartRecReq = 3;
}
return; return;
}//Dblqh::sendCOMP_LCP_ROUND() }//Dblqh::sendCOMP_LCP_ROUND()
...@@ -12064,15 +12071,27 @@ void Dblqh::execGCP_SAVEREQ(Signal* signal) ...@@ -12064,15 +12071,27 @@ void Dblqh::execGCP_SAVEREQ(Signal* signal)
}//if }//if
ndbrequire(ccurrentGcprec == RNIL); ndbrequire(ccurrentGcprec == RNIL);
ccurrentGcprec = 0;
gcpPtr.i = ccurrentGcprec;
ptrCheckGuard(gcpPtr, cgcprecFileSize, gcpRecord);
cnewestCompletedGci = gci; cnewestCompletedGci = gci;
if (gci > cnewestGci) { if (gci > cnewestGci) {
jam(); jam();
cnewestGci = gci; cnewestGci = gci;
}//if }//if
if(getNodeState().getNodeRestartInProgress() && cstartRecReq < 3)
{
GCPSaveRef * const saveRef = (GCPSaveRef*)&signal->theData[0];
saveRef->dihPtr = dihPtr;
saveRef->nodeId = getOwnNodeId();
saveRef->gci = gci;
saveRef->errorCode = GCPSaveRef::NodeRestartInProgress;
sendSignal(dihBlockRef, GSN_GCP_SAVEREF, signal,
GCPSaveRef::SignalLength, JBB);
return;
}
ccurrentGcprec = 0;
gcpPtr.i = ccurrentGcprec;
ptrCheckGuard(gcpPtr, cgcprecFileSize, gcpRecord);
gcpPtr.p->gcpBlockref = dihBlockRef; gcpPtr.p->gcpBlockref = dihBlockRef;
gcpPtr.p->gcpUserptr = dihPtr; gcpPtr.p->gcpUserptr = dihPtr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment