summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorunknown <jonas@perch.ndb.mysql.com>2007-03-19 12:39:03 +0100
committerunknown <jonas@perch.ndb.mysql.com>2007-03-19 12:39:03 +0100
commit0cdd8600df6d647febfdbed085b5c86563fbb43e (patch)
tree44c072af576cdb21d3cb973872b3fa6247a7c0dd /storage
parent542c495d684fb5d294b1c1dbefc36f2c49db4bc9 (diff)
parent75bd09a6652ed3ef9dad764a94a91324cfaa66de (diff)
downloadmariadb-git-0cdd8600df6d647febfdbed085b5c86563fbb43e.tar.gz
Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: Auto merged storage/ndb/test/ndbapi/testNodeRestart.cpp: Auto merged
Diffstat (limited to 'storage')
-rw-r--r--storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp15
-rw-r--r--storage/ndb/test/ndbapi/testNodeRestart.cpp14
2 files changed, 16 insertions, 13 deletions
diff --git a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
index 7ea6d3936b0..8e81b350947 100644
--- a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
+++ b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
@@ -7104,20 +7104,15 @@ Dbtc::nodeFailCheckTransactions(Signal* signal,
for (transPtr.i = transPtrI; transPtr.i < capiConnectFilesize; transPtr.i++)
{
ptrCheckGuard(transPtr, capiConnectFilesize, apiConnectRecord);
- Uint32 state = transPtr.p->apiConnectstate;
if (transPtr.p->m_transaction_nodes.get(failedNodeId))
{
jam();
- // avoid assertion in timeoutfoundlab
- if (state != CS_PREPARE_TO_COMMIT)
- {
- // Force timeout regardless of state
- c_appl_timeout_value = 1;
- setApiConTimer(transPtr.i, TtcTimer - 2, __LINE__);
- timeOutFoundLab(signal, transPtr.i, ZNODEFAIL_BEFORE_COMMIT);
- c_appl_timeout_value = TapplTimeout;
- }
+ // Force timeout regardless of state
+ c_appl_timeout_value = 1;
+ setApiConTimer(transPtr.i, TtcTimer - 2, __LINE__);
+ timeOutFoundLab(signal, transPtr.i, ZNODEFAIL_BEFORE_COMMIT);
+ c_appl_timeout_value = TapplTimeout;
}
// Send CONTINUEB to continue later
diff --git a/storage/ndb/test/ndbapi/testNodeRestart.cpp b/storage/ndb/test/ndbapi/testNodeRestart.cpp
index 9816675eb57..cd0bc7face5 100644
--- a/storage/ndb/test/ndbapi/testNodeRestart.cpp
+++ b/storage/ndb/test/ndbapi/testNodeRestart.cpp
@@ -887,6 +887,9 @@ int runBug20185(NDBT_Context* ctx, NDBT_Step* step){
return NDBT_FAILED;
NdbSleep_MilliSleep(3000);
+ Vector<int> nodes;
+ for (Uint32 i = 0; i<restarter.getNumDbNodes(); i++)
+ nodes.push_back(restarter.getDbNodeId(i));
retry:
if(hugoOps.startTransaction(pNdb) != 0)
@@ -910,11 +913,16 @@ retry:
nodeId = restarter.getDbNodeId(rand() % restarter.getNumDbNodes());
} while (nodeId == node);
- if (restarter.insertErrorInAllNodes(7030))
- return NDBT_FAILED;
-
+ ndbout_c("7031 to %d", nodeId);
if (restarter.insertErrorInNode(nodeId, 7031))
return NDBT_FAILED;
+
+ for (Uint32 i = 0; i<nodes.size(); i++)
+ {
+ if (nodes[i] != nodeId)
+ if (restarter.insertErrorInNode(nodes[i], 7030))
+ return NDBT_FAILED;
+ }
NdbSleep_MilliSleep(500);