ndb - fix 5.1 scan error handling problem

Make sure that error gets set corretly also
    when error code directly after taking mutex
This commit is contained in:
jonas@mc01.ndb.mysql.com 2006-06-09 11:39:27 +02:00
parent b7ce47b28e
commit 9064f067e8

View File

@ -478,10 +478,14 @@ int NdbScanOperation::nextResultImpl(bool fetchAllowed, bool forceSend)
*/
PollGuard poll_guard(tp, &theNdb->theImpl->theWaiter,
theNdb->theNdbBlockNumber);
if(theError.code)
return -1;
Uint32 seq = theNdbCon->theNodeSequence;
const Uint32 seq = theNdbCon->theNodeSequence;
if(theError.code)
{
goto err4;
}
if(seq == tp->getNodeSequence(nodeId) && send_next_scan(idx, false) == 0)
{
@ -564,6 +568,10 @@ int NdbScanOperation::nextResultImpl(bool fetchAllowed, bool forceSend)
if(theError.code == 0)
setErrorCode(4028); // seq changed = Node fail
break;
case -4:
err4:
setErrorCode(theError.code);
break;
}
theNdbCon->theTransactionIsStarted = false;