Commit a3879be7 authored by unknown's avatar unknown

bug#15908 - ndb

  When scan is completed, but lqhkeyreq is outstanding on primary replica and
  starting node dies, scan will not be closed leading to error handling of failed
  node not completing


ndb/src/kernel/blocks/ERROR_codes.txt:
  New error code
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Set scan state to WAIT_LQHKEY_COPY when scan is finished but LQHKEYREQ is outstanding
parent 5c61bd54
...@@ -3,7 +3,7 @@ Next NDBCNTR 1000 ...@@ -3,7 +3,7 @@ Next NDBCNTR 1000
Next NDBFS 2000 Next NDBFS 2000
Next DBACC 3002 Next DBACC 3002
Next DBTUP 4013 Next DBTUP 4013
Next DBLQH 5042 Next DBLQH 5043
Next DBDICT 6006 Next DBDICT 6006
Next DBDIH 7174 Next DBDIH 7174
Next DBTC 8037 Next DBTC 8037
...@@ -312,6 +312,8 @@ LQH: ...@@ -312,6 +312,8 @@ LQH:
5026 Crash when receiving COPY_ACTIVEREQ 5026 Crash when receiving COPY_ACTIVEREQ
5027 Crash when receiving STAT_RECREQ 5027 Crash when receiving STAT_RECREQ
5042 Crash starting node, when scan is finished on primary replica
Test Crashes in handling take over Test Crashes in handling take over
---------------------------------- ----------------------------------
......
...@@ -9220,6 +9220,15 @@ void Dblqh::nextScanConfCopyLab(Signal* signal) ...@@ -9220,6 +9220,15 @@ void Dblqh::nextScanConfCopyLab(Signal* signal)
// completion. Signal completion through scanCompletedStatus-flag. // completion. Signal completion through scanCompletedStatus-flag.
/*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/
scanptr.p->scanCompletedStatus = ZTRUE; scanptr.p->scanCompletedStatus = ZTRUE;
scanptr.p->scanState = ScanRecord::WAIT_LQHKEY_COPY;
if (ERROR_INSERTED(5042))
{
CLEAR_ERROR_INSERT_VALUE;
tcConnectptr.p->copyCountWords = ~0;
signal->theData[0] = 9999;
sendSignal(numberToRef(CMVMI, scanptr.p->scanNodeId),
GSN_NDB_TAMPER, signal, 1, JBA);
}
return; return;
}//if }//if
......
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