diff options
author | unknown <joreland@mysql.com> | 2004-10-13 12:34:36 +0200 |
---|---|---|
committer | unknown <joreland@mysql.com> | 2004-10-13 12:34:36 +0200 |
commit | 27ca2d660d6d36774671c2187de3de73e5969347 (patch) | |
tree | 7139ceb12f55b2e3898879a3b40705911b40d7ef /ndb | |
parent | 9acbb9c0f68c6d9e5d38ff6decfbce935bb79b9a (diff) | |
download | mariadb-git-27ca2d660d6d36774671c2187de3de73e5969347.tar.gz |
Handle temporary errors in clearTable
Diffstat (limited to 'ndb')
-rw-r--r-- | ndb/test/src/UtilTransactions.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/ndb/test/src/UtilTransactions.cpp b/ndb/test/src/UtilTransactions.cpp index 52341c0e0e6..68fd5d3662d 100644 --- a/ndb/test/src/UtilTransactions.cpp +++ b/ndb/test/src/UtilTransactions.cpp @@ -383,11 +383,20 @@ UtilTransactions::clearTable3(Ndb* pNdb, pOp = pTrans->getNdbScanOperation(tab.getName()); if (pOp == NULL) { + err = pTrans->getNdbError(); + if(err.status == NdbError::TemporaryError){ + ERR(err); + pNdb->closeTransaction(pTrans); + NdbSleep_MilliSleep(50); + par = 1; + goto restart; + } goto failed; } NdbResultSet * rs = pOp->readTuplesExclusive(par); if( rs == 0 ) { + err = pTrans->getNdbError(); goto failed; } @@ -647,8 +656,16 @@ UtilTransactions::scanReadRecords(Ndb* pNdb, pOp = pTrans->getNdbScanOperation(tab.getName()); if (pOp == NULL) { - ERR(pTrans->getNdbError()); + const NdbError err = pNdb->getNdbError(); pNdb->closeTransaction(pTrans); + + if (err.status == NdbError::TemporaryError){ + ERR(err); + NdbSleep_MilliSleep(50); + retryAttempt++; + continue; + } + ERR(err); return NDBT_FAILED; } |