summaryrefslogtreecommitdiff
path: root/ndb/src
diff options
context:
space:
mode:
authorunknown <jonas@mysql.com>2005-01-05 13:37:34 +0100
committerunknown <jonas@mysql.com>2005-01-05 13:37:34 +0100
commitae736acfc3d94537d48be8d85d2c260154d76a52 (patch)
treeab78155fe9721390b9afbbb949d30e9508980670 /ndb/src
parent0e29e5e71560a44788050b8ac78ff4c7abc4652b (diff)
downloadmariadb-git-ae736acfc3d94537d48be8d85d2c260154d76a52.tar.gz
ndb - getTable retry if DICT busy
ndb/src/ndbapi/NdbDictionaryImpl.cpp: getTable retry if DICT busy BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
Diffstat (limited to 'ndb/src')
-rw-r--r--ndb/src/ndbapi/NdbDictionaryImpl.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/ndb/src/ndbapi/NdbDictionaryImpl.cpp b/ndb/src/ndbapi/NdbDictionaryImpl.cpp
index 2d37c7883ec..5a4bfb77541 100644
--- a/ndb/src/ndbapi/NdbDictionaryImpl.cpp
+++ b/ndb/src/ndbapi/NdbDictionaryImpl.cpp
@@ -941,7 +941,7 @@ NdbDictInterface::dictSignal(NdbApiSignal* signal,
for (int j=0; j < noerrcodes; j++)
if(m_error.code == errcodes[j]) {
doContinue = 1;
- continue;
+ break;
}
if (doContinue)
continue;
@@ -1007,12 +1007,14 @@ NdbDictInterface::getTable(class NdbApiSignal * signal,
Uint32 noOfSections, bool fullyQualifiedNames)
{
//GetTabInfoReq * const req = CAST_PTR(GetTabInfoReq, signal->getDataPtrSend());
+ int errCodes[] = {GetTabInfoRef::Busy };
+
int r = dictSignal(signal,ptr,noOfSections,
0/*do not use masternode id*/,
100,
WAIT_GET_TAB_INFO_REQ,
WAITFOR_RESPONSE_TIMEOUT,
- NULL,0);
+ errCodes, 1);
if (r) return 0;
NdbTableImpl * rt = 0;