Commit cbd659f7 authored by unknown's avatar unknown

Merge perch.ndb.mysql.com:/home/jonas/src/41-work

into  perch.ndb.mysql.com:/home/jonas/src/mysql-4.1


ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Auto merged
parents ab58ea55 63d2bc23
......@@ -3,7 +3,7 @@ Next NDBCNTR 1000
Next NDBFS 2000
Next DBACC 3002
Next DBTUP 4013
Next DBLQH 5042
Next DBLQH 5043
Next DBDICT 6006
Next DBDIH 7174
Next DBTC 8037
......@@ -312,6 +312,8 @@ LQH:
5026 Crash when receiving COPY_ACTIVEREQ
5027 Crash when receiving STAT_RECREQ
5042 Crash starting node, when scan is finished on primary replica
Test Crashes in handling take over
----------------------------------
......
......@@ -9220,6 +9220,15 @@ void Dblqh::nextScanConfCopyLab(Signal* signal)
// completion. Signal completion through scanCompletedStatus-flag.
/*---------------------------------------------------------------------------*/
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;
}//if
......
......@@ -254,12 +254,6 @@ testcase(int flag)
ndbout << "tab=" << tab << " cols=" << attrcnt
<< " size max=" << smax << " tot=" << stot << endl;
ndb = new Ndb("TEST_DB");
if (ndb->init() != 0)
return ndberror("init");
if (ndb->waitUntilReady(30) < 0)
return ndberror("waitUntilReady");
if ((tcon = NdbSchemaCon::startSchemaTrans(ndb)) == 0)
return ndberror("startSchemaTransaction");
if ((top = tcon->getNdbSchemaOp()) == 0)
......@@ -541,7 +535,6 @@ testcase(int flag)
return ndberror("key %d not found", k);
ndbout << "scanned " << key << endl;
ndb = 0;
ndbout << "done" << endl;
return 0;
}
......@@ -605,7 +598,23 @@ NDB_COMMAND(testDataBuffers, "testDataBuffers", "testDataBuffers", "testDataBuff
return NDBT_ProgramExit(NDBT_WRONGARGS);
}
}
unsigned ok = true;
ndb = new Ndb("TEST_DB");
if (ndb->init() != 0)
{
ndberror("init");
ok = false;
goto out;
}
if (ndb->waitUntilReady(30) < 0)
{
ndberror("waitUntilReady");
ok = false;
goto out;
}
for (i = 1; 0 == loopcnt || i <= loopcnt; i++) {
ndbout << "=== loop " << i << " ===" << endl;
for (int flag = 0; flag < (1<<testbits); flag++) {
......@@ -614,9 +623,13 @@ NDB_COMMAND(testDataBuffers, "testDataBuffers", "testDataBuffers", "testDataBuff
if (! kontinue)
goto out;
}
NdbDictionary::Dictionary * dict = ndb->getDictionary();
dict->dropTable(tab);
}
}
out:
delete ndb;
return NDBT_ProgramExit(ok ? NDBT_OK : NDBT_FAILED);
}
......
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