summaryrefslogtreecommitdiff
path: root/ndb/tools
diff options
context:
space:
mode:
authorunknown <tomas@poseidon.ndb.mysql.com>2005-01-20 13:45:42 +0100
committerunknown <tomas@poseidon.ndb.mysql.com>2005-01-20 13:45:42 +0100
commit12d1ee5473faecc14137a00b73f8606244cf43d9 (patch)
treec518f3c3554eaf727ca41dc821925d2a09e57531 /ndb/tools
parent0c20ad6c1529a9efe9dcc84cc84039bb36471216 (diff)
downloadmariadb-git-12d1ee5473faecc14137a00b73f8606244cf43d9.tar.gz
added variable NDB_MGM to be able to run the management client in tests
added testcase for Bug#8035 added option to wait for not-started Bug#8035 mysql-test/mysql-test-run.sh: added variable NDB_MGM to be able to run the management client in tests mysql-test/r/ndb_autodiscover.result: added testcase for Bug#8035 mysql-test/t/ndb_autodiscover.test: added testcase for Bug#8035 ndb/tools/waiter.cpp: added option to wait for not-started sql/lock.cc: Bug#8035
Diffstat (limited to 'ndb/tools')
-rw-r--r--ndb/tools/waiter.cpp27
1 files changed, 21 insertions, 6 deletions
diff --git a/ndb/tools/waiter.cpp b/ndb/tools/waiter.cpp
index 4b86de36514..dfdb11524e3 100644
--- a/ndb/tools/waiter.cpp
+++ b/ndb/tools/waiter.cpp
@@ -31,11 +31,13 @@ waitClusterStatus(const char* _addr, ndb_mgm_node_status _status,
unsigned int _timeout);
enum ndb_waiter_options {
- NDB_STD_OPTS_OPTIONS
+ NDB_STD_OPTS_OPTIONS,
+ OPT_WAIT_STATUS_NOT_STARTED
};
NDB_STD_OPTS_VARS;
static int _no_contact = 0;
+static int _not_started = 0;
static int _timeout = 120;
static struct my_option my_long_options[] =
{
@@ -43,6 +45,9 @@ static struct my_option my_long_options[] =
{ "no-contact", 'n', "Wait for cluster no contact",
(gptr*) &_no_contact, (gptr*) &_no_contact, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
+ { "not-started", OPT_WAIT_STATUS_NOT_STARTED, "Wait for cluster not started",
+ (gptr*) &_not_started, (gptr*) &_not_started, 0,
+ GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "timeout", 't', "Timeout to wait",
(gptr*) &_timeout, (gptr*) &_timeout, 0,
GET_INT, REQUIRED_ARG, 120, 0, 0, 0, 0, 0 },
@@ -91,12 +96,22 @@ int main(int argc, char** argv){
if (_hostName == 0)
_hostName= opt_connect_str;
- if (_no_contact) {
- if (waitClusterStatus(_hostName, NDB_MGM_NODE_STATUS_NO_CONTACT, _timeout) != 0)
- return NDBT_ProgramExit(NDBT_FAILED);
- } else if (waitClusterStatus(_hostName, NDB_MGM_NODE_STATUS_STARTED, _timeout) != 0)
- return NDBT_ProgramExit(NDBT_FAILED);
+ enum ndb_mgm_node_status wait_status;
+ if (_no_contact)
+ {
+ wait_status= NDB_MGM_NODE_STATUS_NO_CONTACT;
+ }
+ else if (_not_started)
+ {
+ wait_status= NDB_MGM_NODE_STATUS_NOT_STARTED;
+ }
+ else
+ {
+ wait_status= NDB_MGM_NODE_STATUS_STARTED;
+ }
+ if (waitClusterStatus(_hostName, wait_status, _timeout) != 0)
+ return NDBT_ProgramExit(NDBT_FAILED);
return NDBT_ProgramExit(NDBT_OK);
}