diff options
author | unknown <tomas@poseidon.ndb.mysql.com> | 2006-05-17 00:22:43 +0200 |
---|---|---|
committer | unknown <tomas@poseidon.ndb.mysql.com> | 2006-05-17 00:22:43 +0200 |
commit | a2f26487ff737228735c120d1a303dff2636a70e (patch) | |
tree | 8f566bf747bce640af403d3ccc26cf3946970200 /ndb | |
parent | 976deafba68897f6b5610f663e7ef8035f26a51f (diff) | |
download | mariadb-git-a2f26487ff737228735c120d1a303dff2636a70e.tar.gz |
ndb: added some missing error codes to mgmapi
ndb: ndb_waiter disconnect/reconnect on get status error
ndb/src/mgmapi/mgmapi.cpp:
ndb: added some missing error codes to mgmapi
ndb/tools/waiter.cpp:
ndb: ndb_waiter disconnect/reconnect on get status error
Diffstat (limited to 'ndb')
-rw-r--r-- | ndb/src/mgmapi/mgmapi.cpp | 3 | ||||
-rw-r--r-- | ndb/tools/waiter.cpp | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/ndb/src/mgmapi/mgmapi.cpp b/ndb/src/mgmapi/mgmapi.cpp index 06b534ac0ca..fc9e5a20f4e 100644 --- a/ndb/src/mgmapi/mgmapi.cpp +++ b/ndb/src/mgmapi/mgmapi.cpp @@ -638,10 +638,12 @@ ndb_mgm_get_status(NdbMgmHandle handle) Vector<BaseString> split; tmp.split(split, ":"); if(split.size() != 2){ + SET_ERROR(handle, NDB_MGM_ILLEGAL_NODE_STATUS, buf); return NULL; } if(!(split[0].trim() == "nodes")){ + SET_ERROR(handle, NDB_MGM_ILLEGAL_NODE_STATUS, buf); return NULL; } @@ -690,6 +692,7 @@ ndb_mgm_get_status(NdbMgmHandle handle) if(i+1 != noOfNodes){ free(state); + SET_ERROR(handle, NDB_MGM_ILLEGAL_NODE_STATUS, "Node count mismatch"); return NULL; } diff --git a/ndb/tools/waiter.cpp b/ndb/tools/waiter.cpp index cc6a21428c8..9bd2befce15 100644 --- a/ndb/tools/waiter.cpp +++ b/ndb/tools/waiter.cpp @@ -129,6 +129,12 @@ getStatus(){ ndbout << "status==NULL, retries="<<retries<<endl; MGMERR(handle); retries++; + ndb_mgm_disconnect(handle); + if (ndb_mgm_connect(handle,0,0,1)) { + MGMERR(handle); + g_err << "Reconnect failed" << endl; + break; + } continue; } int count = status->no_of_nodes; |