Loading storage/ndb/test/include/NDBT_Tables.hpp +2 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,8 @@ public: static const NdbDictionary::Table* getTable(int _num); static int getNumTables(); static int create_default_tablespace(Ndb* pNdb); private: static const NdbDictionary::Table* tableWithPkSize(const char* _nam, Uint32 pkSize); }; Loading storage/ndb/test/ndbapi/bank/Bank.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ #include <NdbSleep.h> #include <UtilTransactions.hpp> Bank::Bank(Ndb_cluster_connection& con, bool _init, char * dbase): Bank::Bank(Ndb_cluster_connection& con, bool _init, const char * dbase): m_ndb(&con, dbase), m_maxAccount(-1), m_initialized(false) Loading storage/ndb/test/ndbapi/bank/Bank.hpp +4 −4 Original line number Diff line number Diff line Loading @@ -27,9 +27,9 @@ class Bank { public: Bank(Ndb_cluster_connection&, bool init = true, char *dbase="BANK"); Bank(Ndb_cluster_connection&, bool init = true, const char *dbase="BANK"); int createAndLoadBank(bool overWrite, int num_accounts=10); int createAndLoadBank(bool overWrite, bool disk= false, int num_accounts=10); int dropBank(); int performTransactions(int maxSleepBetweenTrans = 20, int yield=0); Loading Loading @@ -121,8 +121,8 @@ private: int prepareReadSystemValueOp(NdbConnection*, SystemValueId sysValId, Uint64 &time); int prepareGetCurrTimeOp(NdbConnection*, Uint64 &time); int createTables(); int createTable(const char* tabName); int createTables(bool disk); int createTable(const char* tabName, bool disk); int dropTables(); int dropTable(const char* tabName); Loading storage/ndb/test/ndbapi/bank/BankLoad.cpp +32 −11 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ int Bank::getNumAccountTypes(){ return accountTypesSize; } int Bank::createAndLoadBank(bool ovrWrt, int num_accounts){ int Bank::createAndLoadBank(bool ovrWrt, bool disk, int num_accounts){ m_ndb.init(); if (m_ndb.waitUntilReady() != 0) Loading @@ -69,7 +69,7 @@ int Bank::createAndLoadBank(bool ovrWrt, int num_accounts){ } } if (createTables() != NDBT_OK) if (createTables(disk) != NDBT_OK) return NDBT_FAILED; if (clearTables() != NDBT_OK) Loading Loading @@ -104,9 +104,9 @@ int Bank::dropBank(){ } int Bank::createTables(){ int Bank::createTables(bool disk){ for (int i = 0; i < tableNamesSize; i++){ if (createTable(tableNames[i]) != NDBT_OK) if (createTable(tableNames[i], disk) != NDBT_OK) return NDBT_FAILED; } return NDBT_OK; Loading Loading @@ -136,7 +136,7 @@ int Bank::clearTable(const char* tabName){ return NDBT_OK; } int Bank::createTable(const char* tabName){ int Bank::createTable(const char* tabName, bool disk){ ndbout << "createTable " << tabName << endl; const NdbDictionary::Table* pTab = NDBT_Tables::getTable(tabName); Loading @@ -146,7 +146,8 @@ int Bank::createTable(const char* tabName){ const NdbDictionary::Table* org = m_ndb.getDictionary()->getTable(tabName); if (org != 0 && pTab->equal(* org)){ if (org != 0 && (disk || pTab->equal(* org))) { return NDBT_OK; } Loading @@ -155,11 +156,31 @@ int Bank::createTable(const char* tabName){ return NDBT_FAILED; } if (disk) { if (NDBT_Tables::create_default_tablespace(&m_ndb)) { ndbout << "Failed to create tablespaces" << endl; return NDBT_FAILED; } NdbDictionary::Table copy(* pTab); copy.setTablespace("DEFAULT-TS"); for (Uint32 i = 0; i<copy.getNoOfColumns(); i++) copy.getColumn(i)->setStorageType(NdbDictionary::Column::StorageTypeDisk); if(m_ndb.getDictionary()->createTable(copy) == -1){ ndbout << "Failed to create table: " << m_ndb.getNdbError() << endl; return NDBT_FAILED; } } else { if(m_ndb.getDictionary()->createTable(* pTab) == -1){ ndbout << "Failed to create table: " << m_ndb.getNdbError() << endl; return NDBT_FAILED; } } return NDBT_OK; } Loading storage/ndb/test/ndbapi/bank/bankCreator.cpp +4 −2 Original line number Diff line number Diff line Loading @@ -30,9 +30,11 @@ int main(int argc, const char** argv){ ndb_init(); int _help = 0; char * _database = "BANK"; int disk = 0; struct getargs args[] = { { "database", 'd', arg_string, &_database, "Database name", ""}, { "disk", 0, arg_flag, &disk, "Use disk tables", "" }, { "usage", '?', arg_flag, &_help, "Print help", "" } }; int num_args = sizeof(args) / sizeof(args[0]); Loading @@ -53,7 +55,7 @@ int main(int argc, const char** argv){ Bank bank(con,_database); int overWriteExisting = true; if (bank.createAndLoadBank(overWriteExisting) != NDBT_OK) if (bank.createAndLoadBank(overWriteExisting, disk) != NDBT_OK) return NDBT_ProgramExit(NDBT_FAILED); return NDBT_ProgramExit(NDBT_OK); Loading Loading
storage/ndb/test/include/NDBT_Tables.hpp +2 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,8 @@ public: static const NdbDictionary::Table* getTable(int _num); static int getNumTables(); static int create_default_tablespace(Ndb* pNdb); private: static const NdbDictionary::Table* tableWithPkSize(const char* _nam, Uint32 pkSize); }; Loading
storage/ndb/test/ndbapi/bank/Bank.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ #include <NdbSleep.h> #include <UtilTransactions.hpp> Bank::Bank(Ndb_cluster_connection& con, bool _init, char * dbase): Bank::Bank(Ndb_cluster_connection& con, bool _init, const char * dbase): m_ndb(&con, dbase), m_maxAccount(-1), m_initialized(false) Loading
storage/ndb/test/ndbapi/bank/Bank.hpp +4 −4 Original line number Diff line number Diff line Loading @@ -27,9 +27,9 @@ class Bank { public: Bank(Ndb_cluster_connection&, bool init = true, char *dbase="BANK"); Bank(Ndb_cluster_connection&, bool init = true, const char *dbase="BANK"); int createAndLoadBank(bool overWrite, int num_accounts=10); int createAndLoadBank(bool overWrite, bool disk= false, int num_accounts=10); int dropBank(); int performTransactions(int maxSleepBetweenTrans = 20, int yield=0); Loading Loading @@ -121,8 +121,8 @@ private: int prepareReadSystemValueOp(NdbConnection*, SystemValueId sysValId, Uint64 &time); int prepareGetCurrTimeOp(NdbConnection*, Uint64 &time); int createTables(); int createTable(const char* tabName); int createTables(bool disk); int createTable(const char* tabName, bool disk); int dropTables(); int dropTable(const char* tabName); Loading
storage/ndb/test/ndbapi/bank/BankLoad.cpp +32 −11 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ int Bank::getNumAccountTypes(){ return accountTypesSize; } int Bank::createAndLoadBank(bool ovrWrt, int num_accounts){ int Bank::createAndLoadBank(bool ovrWrt, bool disk, int num_accounts){ m_ndb.init(); if (m_ndb.waitUntilReady() != 0) Loading @@ -69,7 +69,7 @@ int Bank::createAndLoadBank(bool ovrWrt, int num_accounts){ } } if (createTables() != NDBT_OK) if (createTables(disk) != NDBT_OK) return NDBT_FAILED; if (clearTables() != NDBT_OK) Loading Loading @@ -104,9 +104,9 @@ int Bank::dropBank(){ } int Bank::createTables(){ int Bank::createTables(bool disk){ for (int i = 0; i < tableNamesSize; i++){ if (createTable(tableNames[i]) != NDBT_OK) if (createTable(tableNames[i], disk) != NDBT_OK) return NDBT_FAILED; } return NDBT_OK; Loading Loading @@ -136,7 +136,7 @@ int Bank::clearTable(const char* tabName){ return NDBT_OK; } int Bank::createTable(const char* tabName){ int Bank::createTable(const char* tabName, bool disk){ ndbout << "createTable " << tabName << endl; const NdbDictionary::Table* pTab = NDBT_Tables::getTable(tabName); Loading @@ -146,7 +146,8 @@ int Bank::createTable(const char* tabName){ const NdbDictionary::Table* org = m_ndb.getDictionary()->getTable(tabName); if (org != 0 && pTab->equal(* org)){ if (org != 0 && (disk || pTab->equal(* org))) { return NDBT_OK; } Loading @@ -155,11 +156,31 @@ int Bank::createTable(const char* tabName){ return NDBT_FAILED; } if (disk) { if (NDBT_Tables::create_default_tablespace(&m_ndb)) { ndbout << "Failed to create tablespaces" << endl; return NDBT_FAILED; } NdbDictionary::Table copy(* pTab); copy.setTablespace("DEFAULT-TS"); for (Uint32 i = 0; i<copy.getNoOfColumns(); i++) copy.getColumn(i)->setStorageType(NdbDictionary::Column::StorageTypeDisk); if(m_ndb.getDictionary()->createTable(copy) == -1){ ndbout << "Failed to create table: " << m_ndb.getNdbError() << endl; return NDBT_FAILED; } } else { if(m_ndb.getDictionary()->createTable(* pTab) == -1){ ndbout << "Failed to create table: " << m_ndb.getNdbError() << endl; return NDBT_FAILED; } } return NDBT_OK; } Loading
storage/ndb/test/ndbapi/bank/bankCreator.cpp +4 −2 Original line number Diff line number Diff line Loading @@ -30,9 +30,11 @@ int main(int argc, const char** argv){ ndb_init(); int _help = 0; char * _database = "BANK"; int disk = 0; struct getargs args[] = { { "database", 'd', arg_string, &_database, "Database name", ""}, { "disk", 0, arg_flag, &disk, "Use disk tables", "" }, { "usage", '?', arg_flag, &_help, "Print help", "" } }; int num_args = sizeof(args) / sizeof(args[0]); Loading @@ -53,7 +55,7 @@ int main(int argc, const char** argv){ Bank bank(con,_database); int overWriteExisting = true; if (bank.createAndLoadBank(overWriteExisting) != NDBT_OK) if (bank.createAndLoadBank(overWriteExisting, disk) != NDBT_OK) return NDBT_ProgramExit(NDBT_FAILED); return NDBT_ProgramExit(NDBT_OK); Loading