Commit 8f755453 authored by unknown's avatar unknown

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb

into  poseidon.:/home/tomas/mysql-5.1-new-ndb


sql/ha_ndbcluster.cc:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
parents e2fc9ab7 5948a569
...@@ -7188,21 +7188,16 @@ Dbtc::nodeFailCheckTransactions(Signal* signal, ...@@ -7188,21 +7188,16 @@ Dbtc::nodeFailCheckTransactions(Signal* signal,
for (transPtr.i = transPtrI; transPtr.i < capiConnectFilesize; transPtr.i++) for (transPtr.i = transPtrI; transPtr.i < capiConnectFilesize; transPtr.i++)
{ {
ptrCheckGuard(transPtr, capiConnectFilesize, apiConnectRecord); ptrCheckGuard(transPtr, capiConnectFilesize, apiConnectRecord);
Uint32 state = transPtr.p->apiConnectstate;
if (transPtr.p->m_transaction_nodes.get(failedNodeId)) if (transPtr.p->m_transaction_nodes.get(failedNodeId))
{ {
jam(); jam();
// avoid assertion in timeoutfoundlab
if (state != CS_PREPARE_TO_COMMIT)
{
// Force timeout regardless of state // Force timeout regardless of state
c_appl_timeout_value = 1; c_appl_timeout_value = 1;
setApiConTimer(transPtr.i, TtcTimer - 2, __LINE__); setApiConTimer(transPtr.i, TtcTimer - 2, __LINE__);
timeOutFoundLab(signal, transPtr.i, ZNODEFAIL_BEFORE_COMMIT); timeOutFoundLab(signal, transPtr.i, ZNODEFAIL_BEFORE_COMMIT);
c_appl_timeout_value = TapplTimeout; c_appl_timeout_value = TapplTimeout;
} }
}
// Send CONTINUEB to continue later // Send CONTINUEB to continue later
signal->theData[0] = TcContinueB::ZNF_CHECK_TRANSACTIONS; signal->theData[0] = TcContinueB::ZNF_CHECK_TRANSACTIONS;
......
...@@ -887,6 +887,9 @@ int runBug20185(NDBT_Context* ctx, NDBT_Step* step){ ...@@ -887,6 +887,9 @@ int runBug20185(NDBT_Context* ctx, NDBT_Step* step){
return NDBT_FAILED; return NDBT_FAILED;
NdbSleep_MilliSleep(3000); NdbSleep_MilliSleep(3000);
Vector<int> nodes;
for (Uint32 i = 0; i<restarter.getNumDbNodes(); i++)
nodes.push_back(restarter.getDbNodeId(i));
retry: retry:
if(hugoOps.startTransaction(pNdb) != 0) if(hugoOps.startTransaction(pNdb) != 0)
...@@ -910,11 +913,16 @@ int runBug20185(NDBT_Context* ctx, NDBT_Step* step){ ...@@ -910,11 +913,16 @@ int runBug20185(NDBT_Context* ctx, NDBT_Step* step){
nodeId = restarter.getDbNodeId(rand() % restarter.getNumDbNodes()); nodeId = restarter.getDbNodeId(rand() % restarter.getNumDbNodes());
} while (nodeId == node); } while (nodeId == node);
if (restarter.insertErrorInAllNodes(7030)) ndbout_c("7031 to %d", nodeId);
if (restarter.insertErrorInNode(nodeId, 7031))
return NDBT_FAILED; return NDBT_FAILED;
if (restarter.insertErrorInNode(nodeId, 7031)) for (Uint32 i = 0; i<nodes.size(); i++)
{
if (nodes[i] != nodeId)
if (restarter.insertErrorInNode(nodes[i], 7030))
return NDBT_FAILED; return NDBT_FAILED;
}
NdbSleep_MilliSleep(500); NdbSleep_MilliSleep(500);
......
...@@ -842,11 +842,12 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step) ...@@ -842,11 +842,12 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step)
int result = NDBT_OK; int result = NDBT_OK;
const NdbDictionary::Table * table= ctx->getTab(); const NdbDictionary::Table * table= ctx->getTab();
HugoTransactions hugoTrans(* table); HugoTransactions hugoTrans(* table);
Ndb* ndb= GETNDB(step);
char buf[1024]; char buf[1024];
sprintf(buf, "%s_EVENT", table->getName()); sprintf(buf, "%s_EVENT", table->getName());
NdbEventOperation *pOp, *pCreate = 0; NdbEventOperation *pOp, *pCreate = 0;
pCreate = pOp = GETNDB(step)->createEventOperation(buf); pCreate = pOp = ndb->createEventOperation(buf);
if ( pOp == NULL ) { if ( pOp == NULL ) {
g_err << "Event operation creation failed on %s" << buf << endl; g_err << "Event operation creation failed on %s" << buf << endl;
return NDBT_FAILED; return NDBT_FAILED;
...@@ -870,7 +871,6 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step) ...@@ -870,7 +871,6 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step)
goto end; goto end;
} }
Ndb* ndb= GETNDB(step);
while(!ctx->isTestStopped()) while(!ctx->isTestStopped())
{ {
Uint64 curr_gci = 0; Uint64 curr_gci = 0;
...@@ -887,10 +887,10 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step) ...@@ -887,10 +887,10 @@ int runEventListenerUntilStopped(NDBT_Context* ctx, NDBT_Step* step)
end: end:
if(pCreate) if(pCreate)
{ {
if (GETNDB(step)->dropEventOperation(pCreate)) { if (ndb->dropEventOperation(pCreate)) {
g_err << "dropEventOperation execution failed " g_err << "dropEventOperation execution failed "
<< GETNDB(step)->getNdbError().code << " " << ndb->getNdbError().code << " "
<< GETNDB(step)->getNdbError().message << endl; << ndb->getNdbError().message << endl;
result = NDBT_FAILED; result = NDBT_FAILED;
} }
} }
......
...@@ -204,17 +204,17 @@ cmd: testSystemRestart ...@@ -204,17 +204,17 @@ cmd: testSystemRestart
args: -l 1 -n SR9 T1 args: -l 1 -n SR9 T1
# #
max-time: 2500 max-time: 3600
cmd: test_event cmd: test_event
args: -n EventOperationApplier -l 2 args: -n EventOperationApplier -l 2
# #
max-time: 2500 max-time: 3600
cmd: test_event cmd: test_event
args: -n EventOperationApplier_NR -l 2 args: -n EventOperationApplier_NR -l 2
# #
max-time: 2500 max-time: 3600
cmd: test_event cmd: test_event
args: -n MergeEventOperationApplier_NR -l 2 args: -n MergeEventOperationApplier_NR -l 2
...@@ -224,9 +224,9 @@ cmd: test_event ...@@ -224,9 +224,9 @@ cmd: test_event
args: -n Multi args: -n Multi
# #
max-time: 2500 max-time: 3600
cmd: test_event cmd: test_event
args: -n CreateDropNR -l 2 args: -n CreateDropNR -l 1
# #
max-time: 600 max-time: 600
......
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