diff options
Diffstat (limited to 'ndb/tools/desc.cpp')
-rw-r--r-- | ndb/tools/desc.cpp | 51 |
1 files changed, 27 insertions, 24 deletions
diff --git a/ndb/tools/desc.cpp b/ndb/tools/desc.cpp index e5371b9b458..74cd740f2ae 100644 --- a/ndb/tools/desc.cpp +++ b/ndb/tools/desc.cpp @@ -48,13 +48,6 @@ static void usage() my_print_help(my_long_options); my_print_variables(my_long_options); } -static my_bool -get_one_option(int optid, const struct my_option *opt __attribute__((unused)), - char *argument) -{ - return ndb_std_get_one_option(optid, opt, argument ? argument : - "d:t:O,/tmp/ndb_desc.trace"); -} static void print_part_info(Ndb* pNdb, NDBT_Table* pTab); @@ -63,22 +56,32 @@ int main(int argc, char** argv){ const char *load_default_groups[]= { "mysql_cluster",0 }; load_defaults("my",load_default_groups,&argc,&argv); int ho_error; - if ((ho_error=handle_options(&argc, &argv, my_long_options, get_one_option))) +#ifndef DBUG_OFF + opt_debug= "d:t:O,/tmp/ndb_desc.trace"; +#endif + if ((ho_error=handle_options(&argc, &argv, my_long_options, + ndb_std_get_one_option))) return NDBT_ProgramExit(NDBT_WRONGARGS); - Ndb::setConnectString(opt_connect_str); - - Ndb* pMyNdb; - pMyNdb = new Ndb(_dbname); - pMyNdb->init(); - - ndbout << "Waiting..."; - while (pMyNdb->waitUntilReady() != 0) { - ndbout << "..."; + Ndb_cluster_connection con(opt_connect_str); + if(con.connect(12, 5, 1) != 0) + { + ndbout << "Unable to connect to management server." << endl; + return NDBT_ProgramExit(NDBT_FAILED); + } + if (con.wait_until_ready(30,0) < 0) + { + ndbout << "Cluster nodes not ready in 30 seconds." << endl; + return NDBT_ProgramExit(NDBT_FAILED); } - ndbout << endl; - NdbDictionary::Dictionary * dict = pMyNdb->getDictionary(); + Ndb MyNdb(&con, _dbname); + if(MyNdb.init() != 0){ + ERR(MyNdb.getNdbError()); + return NDBT_ProgramExit(NDBT_FAILED); + } + + const NdbDictionary::Dictionary * dict= MyNdb.getDictionary(); for (int i = 0; i < argc; i++) { NDBT_Table* pTab = (NDBT_Table*)dict->getTable(argv[i]); if (pTab != 0){ @@ -116,13 +119,12 @@ int main(int argc, char** argv){ ndbout << endl; if (_partinfo) - print_part_info(pMyNdb, pTab); + print_part_info(&MyNdb, pTab); } else ndbout << argv[i] << ": " << dict->getNdbError() << endl; } - delete pMyNdb; return NDBT_ProgramExit(NDBT_OK); } @@ -141,6 +143,7 @@ void print_part_info(Ndb* pNdb, NDBT_Table* pTab) { "Partition", 0, NdbDictionary::Column::FRAGMENT }, { "Row count", 0, NdbDictionary::Column::ROW_COUNT }, { "Commit count", 0, NdbDictionary::Column::COMMIT_COUNT }, + { "Frag memory", 0, NdbDictionary::Column::FRAGMENT_MEMORY }, { 0, 0, 0 } }; @@ -156,8 +159,8 @@ void print_part_info(Ndb* pNdb, NDBT_Table* pTab) if (pOp == NULL) break; - NdbResultSet* rs= pOp->readTuples(NdbOperation::LM_CommittedRead); - if (rs == 0) + int rs = pOp->readTuples(NdbOperation::LM_CommittedRead); + if (rs != 0) break; if (pOp->interpret_exit_last_row() != 0) @@ -180,7 +183,7 @@ void print_part_info(Ndb* pNdb, NDBT_Table* pTab) ndbout << g_part_info[i].m_title << "\t"; ndbout << endl; - while(rs->nextResult() == 0) + while(pOp->nextResult() == 0) { for(i = 0; g_part_info[i].m_title != 0; i++) { |