mirror of
https://github.com/MariaDB/server.git
synced 2025-07-05 12:42:17 +03:00
ndb/test/tools/hugoCalculator.cpp: Rename: ndb/test/tools/hugoCalculator/hugoCalculator.cpp -> ndb/test/tools/hugoCalculator.cpp ndb/test/tools/hugoLoad.cpp: Rename: ndb/test/tools/hugoLoad/hugoLoad.cpp -> ndb/test/tools/hugoLoad.cpp ndb/test/tools/hugoFill.cpp: Rename: ndb/test/tools/hugoFill/hugoFill.cpp -> ndb/test/tools/hugoFill.cpp ndb/test/tools/hugoLockRecords.cpp: Rename: ndb/test/tools/hugoLockRecords/hugoLockRecords.cpp -> ndb/test/tools/hugoLockRecords.cpp ndb/test/tools/hugoPkRead.cpp: Rename: ndb/test/tools/hugoPkRead/hugoPkRead.cpp -> ndb/test/tools/hugoPkRead.cpp ndb/test/tools/hugoPkReadRecord.cpp: Rename: ndb/test/tools/hugoPkReadRecord/hugoPkReadRecord.cpp -> ndb/test/tools/hugoPkReadRecord.cpp ndb/test/tools/hugoScanRead.cpp: Rename: ndb/test/tools/hugoScanRead/hugoScanRead.cpp -> ndb/test/tools/hugoScanRead.cpp ndb/test/tools/restart.cpp: Rename: ndb/test/tools/restart/restart.cpp -> ndb/test/tools/restart.cpp ndb/test/ndbapi/TraceNdbApi.cpp: Rename: ndb/test/ndbapi/acid2/TraceNdbApi.cpp -> ndb/test/ndbapi/TraceNdbApi.cpp ndb/test/ndbapi/VerifyNdbApi.cpp: Rename: ndb/test/ndbapi/acid2/VerifyNdbApi.cpp -> ndb/test/ndbapi/VerifyNdbApi.cpp ndb/test/ndbapi/acid.cpp: Rename: ndb/test/ndbapi/acid/acid.cpp -> ndb/test/ndbapi/acid.cpp ndb/test/ndbapi/acid2.cpp: Rename: ndb/test/ndbapi/acid2/acid2.cpp -> ndb/test/ndbapi/acid2.cpp ndb/test/ndbapi/bulk_copy.cpp: Rename: ndb/test/ndbapi/bulk_copy/bulk_copy.cpp -> ndb/test/ndbapi/bulk_copy.cpp ndb/test/ndbapi/celloDb.cpp: Rename: ndb/test/ndbapi/cello-sessionDb/celloDb.cpp -> ndb/test/ndbapi/celloDb.cpp ndb/test/ndbapi/create_all_tabs.cpp: Rename: ndb/test/ndbapi/create_all_tabs/create_all_tabs.cpp -> ndb/test/ndbapi/create_all_tabs.cpp ndb/test/ndbapi/create_tab.cpp: Rename: ndb/test/ndbapi/create_tab/create_tab.cpp -> ndb/test/ndbapi/create_tab.cpp ndb/test/ndbapi/drop_all_tabs.cpp: Rename: ndb/test/ndbapi/drop_all_tabs/drop_all_tabs.cpp -> ndb/test/ndbapi/drop_all_tabs.cpp ndb/test/ndbapi/flexAsynch.cpp: Rename: ndb/test/ndbapi/flexAsynch/flexAsynch.cpp -> ndb/test/ndbapi/flexAsynch.cpp ndb/test/ndbapi/flexBench.cpp: Rename: ndb/test/ndbapi/flexBench/flexBench.cpp -> ndb/test/ndbapi/flexBench.cpp ndb/test/ndbapi/flexHammer.cpp: Rename: ndb/test/ndbapi/flexHammer/flexHammer.cpp -> ndb/test/ndbapi/flexHammer.cpp ndb/test/ndbapi/flexScan.cpp: Rename: ndb/test/ndbapi/flexScan/flexScan.cpp -> ndb/test/ndbapi/flexScan.cpp ndb/test/ndbapi/flexTT.cpp: Rename: ndb/test/ndbapi/flexTT/flexTT.cpp -> ndb/test/ndbapi/flexTT.cpp ndb/test/ndbapi/flexTimedAsynch.cpp: Rename: ndb/test/ndbapi/flexTimedAsynch/flexTimedAsynch.cpp -> ndb/test/ndbapi/flexTimedAsynch.cpp ndb/test/ndbapi/flex_bench_mysql.cpp: Rename: ndb/test/ndbapi/flex_bench_mysql/flex_bench_mysql.cpp -> ndb/test/ndbapi/flex_bench_mysql.cpp ndb/test/ndbapi/index.cpp: Rename: ndb/test/ndbapi/indexTest/index.cpp -> ndb/test/ndbapi/index.cpp ndb/test/ndbapi/asyncGenerator.cpp: Rename: ndb/test/ndbapi/lmc-bench/async-src/generator/asyncGenerator.cpp -> ndb/test/ndbapi/asyncGenerator.cpp ndb/test/ndbapi/index2.cpp: Rename: ndb/test/ndbapi/indexTest2/index2.cpp -> ndb/test/ndbapi/index2.cpp ndb/test/ndbapi/interpreterInTup.cpp: Rename: ndb/test/ndbapi/interpreterInTup/interpreterInTup.cpp -> ndb/test/ndbapi/interpreterInTup.cpp ndb/test/ndbapi/mainAsyncGenerator.cpp: Rename: ndb/test/ndbapi/lmc-bench/async-src/generator/mainAsyncGenerator.cpp -> ndb/test/ndbapi/mainAsyncGenerator.cpp ndb/test/ndbapi/ndb_async1.cpp: Rename: ndb/test/ndbapi/lmc-bench/async-src/user/ndb_async1.cpp -> ndb/test/ndbapi/ndb_async1.cpp ndb/test/ndbapi/ndb_async2.cpp: Rename: ndb/test/ndbapi/lmc-bench/async-src/user/ndb_async2.cpp -> ndb/test/ndbapi/ndb_async2.cpp ndb/test/ndbapi/ndb_user_populate.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_populate.cpp -> ndb/test/ndbapi/ndb_user_populate.cpp ndb/test/ndbapi/ndb_user_transaction.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction.cpp -> ndb/test/ndbapi/ndb_user_transaction.cpp ndb/test/ndbapi/ndb_user_transaction2.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction2.cpp -> ndb/test/ndbapi/ndb_user_transaction2.cpp ndb/test/ndbapi/ndb_user_transaction3.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction3.cpp -> ndb/test/ndbapi/ndb_user_transaction3.cpp ndb/test/ndbapi/userInterface.cpp: Rename: ndb/test/ndbapi/lmc-bench/async-src/user/userInterface.cpp -> ndb/test/ndbapi/userInterface.cpp ndb/test/ndbapi/benchronja.cpp: Rename: ndb/test/ndbapi/ronja/benchronja/benchronja.cpp -> ndb/test/ndbapi/benchronja.cpp ndb/test/ndbapi/ndb_user_transaction4.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction4.cpp -> ndb/test/ndbapi/ndb_user_transaction4.cpp ndb/test/ndbapi/ndb_user_transaction5.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction5.cpp -> ndb/test/ndbapi/ndb_user_transaction5.cpp ndb/test/ndbapi/ndb_user_transaction6.cpp: Rename: ndb/test/ndbapi/lmc-bench/src/user/ndb_user_transaction6.cpp -> ndb/test/ndbapi/ndb_user_transaction6.cpp ndb/test/ndbapi/restarter.cpp: Rename: ndb/test/ndbapi/restarter/restarter.cpp -> ndb/test/ndbapi/restarter.cpp ndb/test/ndbapi/restarter2.cpp: Rename: ndb/test/ndbapi/restarter2/restarter2.cpp -> ndb/test/ndbapi/restarter2.cpp ndb/test/ndbapi/restarts.cpp: Rename: ndb/test/ndbapi/restarts/restarts.cpp -> ndb/test/ndbapi/restarts.cpp ndb/test/ndbapi/InsertRecs.cpp: Rename: ndb/test/ndbapi/telco/InsertRecs.cpp -> ndb/test/ndbapi/InsertRecs.cpp ndb/test/ndbapi/adoInsertRecs.cpp: Rename: ndb/test/ndbapi/telco/adoInsertRecs.cpp -> ndb/test/ndbapi/adoInsertRecs.cpp ndb/test/ndbapi/initronja.cpp: Rename: ndb/test/ndbapi/ronja/initronja/initronja.cpp -> ndb/test/ndbapi/initronja.cpp ndb/test/ndbapi/msa.cpp: Rename: ndb/test/ndbapi/telco/msa.cpp -> ndb/test/ndbapi/msa.cpp ndb/test/ndbapi/testBasic.cpp: Rename: ndb/test/ndbapi/testBasic/testBasic.cpp -> ndb/test/ndbapi/testBasic.cpp ndb/test/ndbapi/testDataBuffers.cpp: Rename: ndb/test/ndbapi/testDataBuffers/testDataBuffers.cpp -> ndb/test/ndbapi/testDataBuffers.cpp ndb/test/ndbapi/testDict.cpp: Rename: ndb/test/ndbapi/testDict/testDict.cpp -> ndb/test/ndbapi/testDict.cpp ndb/test/ndbapi/testGrep.cpp: Rename: ndb/test/ndbapi/testGrep/testGrep.cpp -> ndb/test/ndbapi/testGrep.cpp ndb/test/ndbapi/testGrepVerify.cpp: Rename: ndb/test/ndbapi/testGrep/verify/testGrepVerify.cpp -> ndb/test/ndbapi/testGrepVerify.cpp ndb/test/ndbapi/testIndex.cpp: Rename: ndb/test/ndbapi/testIndex/testIndex.cpp -> ndb/test/ndbapi/testIndex.cpp ndb/test/ndbapi/testInterpreter.cpp: Rename: ndb/test/ndbapi/testInterpreter/testInterpreter.cpp -> ndb/test/ndbapi/testInterpreter.cpp ndb/test/ndbapi/testMgm.cpp: Rename: ndb/test/ndbapi/testMgm/testMgm.cpp -> ndb/test/ndbapi/testMgm.cpp ndb/test/ndbapi/testNdbApi.cpp: Rename: ndb/test/ndbapi/testNdbApi/testNdbApi.cpp -> ndb/test/ndbapi/testNdbApi.cpp ndb/test/ndbapi/testNodeRestart.cpp: Rename: ndb/test/ndbapi/testNodeRestart/testNodeRestart.cpp -> ndb/test/ndbapi/testNodeRestart.cpp ndb/test/ndbapi/testOIBasic.cpp: Rename: ndb/test/ndbapi/testOIBasic/testOIBasic.cpp -> ndb/test/ndbapi/testOIBasic.cpp ndb/test/ndbapi/testOperations.cpp: Rename: ndb/test/ndbapi/testOperations/testOperations.cpp -> ndb/test/ndbapi/testOperations.cpp ndb/test/ndbapi/testOrderedIndex.cpp: Rename: ndb/test/ndbapi/testOrderedIndex/testOrderedIndex.cpp -> ndb/test/ndbapi/testOrderedIndex.cpp ndb/test/ndbapi/testRestartGci.cpp: Rename: ndb/test/ndbapi/testRestartGci/testRestartGci.cpp -> ndb/test/ndbapi/testRestartGci.cpp ndb/test/ndbapi/testScan.cpp: Rename: ndb/test/ndbapi/testScan/testScan.cpp -> ndb/test/ndbapi/testScan.cpp ndb/test/ndbapi/testScanInterpreter.cpp: Rename: ndb/test/ndbapi/testScanInterpreter/testScanInterpreter.cpp -> ndb/test/ndbapi/testScanInterpreter.cpp ndb/test/ndbapi/testSystemRestart.cpp: Rename: ndb/test/ndbapi/testSystemRestart/testSystemRestart.cpp -> ndb/test/ndbapi/testSystemRestart.cpp ndb/test/ndbapi/testTimeout.cpp: Rename: ndb/test/ndbapi/testTimeout/testTimeout.cpp -> ndb/test/ndbapi/testTimeout.cpp ndb/test/ndbapi/cdrserver.cpp: Rename: ndb/test/ndbapi/vw_test/cdrserver.cpp -> ndb/test/ndbapi/cdrserver.cpp ndb/test/ndbapi/size.cpp: Rename: ndb/test/ndbapi/vw_test/size.cpp -> ndb/test/ndbapi/size.cpp ndb/test/ndbapi/testTransactions.cpp: Rename: ndb/test/ndbapi/testTransactions/testTransactions.cpp -> ndb/test/ndbapi/testTransactions.cpp ndb/test/ndbapi/test_event.cpp: Rename: ndb/test/ndbapi/test_event/test_event.cpp -> ndb/test/ndbapi/test_event.cpp ndb/tools/delete_all.cpp: Rename: ndb/tools/delete_all/delete_all.cpp -> ndb/tools/delete_all.cpp ndb/tools/desc.cpp: Rename: ndb/tools/desc/desc.cpp -> ndb/tools/desc.cpp ndb/tools/drop_index.cpp: Rename: ndb/tools/drop_index/drop_index.cpp -> ndb/tools/drop_index.cpp ndb/tools/drop_tab.cpp: Rename: ndb/tools/drop_tab/drop_tab.cpp -> ndb/tools/drop_tab.cpp ndb/tools/listTables.cpp: Rename: ndb/tools/list_tables/listTables.cpp -> ndb/tools/listTables.cpp ndb/tools/ndbsql.cpp: Rename: ndb/tools/ndbsql/ndbsql.cpp -> ndb/tools/ndbsql.cpp ndb/tools/select_all.cpp: Rename: ndb/tools/select_all/select_all.cpp -> ndb/tools/select_all.cpp ndb/tools/select_count.cpp: Rename: ndb/tools/select_count/select_count.cpp -> ndb/tools/select_count.cpp ndb/test/tools/hugoScanUpdate.cpp: Rename: ndb/test/tools/hugoScanUpd.cpp -> ndb/test/tools/hugoScanUpdate.cpp ndb/test/tools/hugoPkUpdate.cpp: Rename: ndb/test/tools/hugoPkUpd.cpp -> ndb/test/tools/hugoPkUpdate.cpp ndb/test/tools/hugoPkDelete.cpp: Rename: ndb/test/tools/hugoPkDel.cpp -> ndb/test/tools/hugoPkDelete.cpp ndb/tools/Makefile_old: Rename: ndb/tools/Makefile -> ndb/tools/Makefile_old ndb/test/tools/transproxy.cpp: Rename: ndb/tools/transproxy.cpp -> ndb/test/tools/transproxy.cpp ndb/test/tools/verify_index.cpp: Rename: ndb/tools/verify_index.cpp -> ndb/test/tools/verify_index.cpp ndb/test/tools/copy_tab.cpp: Rename: ndb/tools/copy_tab.cpp -> ndb/test/tools/copy_tab.cpp ndb/test/tools/cpcc.cpp: Rename: ndb/tools/cpcc.cpp -> ndb/test/tools/cpcc.cpp ndb/test/tools/create_index.cpp: Rename: ndb/tools/create_index.cpp -> ndb/test/tools/create_index.cpp ndb/test/tools/old_dirs/waiter/Makefile_old: mvdir ndb/test/tools/old_dirs/waiter/waiter.cpp: mvdir ndb/test/tools/old_dirs/restart/Makefile: mvdir ndb/test/tools/old_dirs/hugoScanUpdate/Makefile: mvdir ndb/test/tools/old_dirs/hugoScanRead/Makefile: mvdir ndb/test/tools/old_dirs/hugoPkUpdate/Makefile: mvdir ndb/test/tools/old_dirs/hugoPkReadRecord/Makefile: mvdir ndb/test/tools/old_dirs/hugoPkRead/Makefile: mvdir ndb/test/tools/old_dirs/hugoPkDelete/Makefile: mvdir ndb/test/tools/old_dirs/hugoLockRecords/Makefile: mvdir ndb/test/tools/old_dirs/hugoLoad/Makefile: mvdir ndb/test/tools/old_dirs/hugoFill/Makefile: mvdir ndb/test/tools/old_dirs/hugoCalculator/Makefile: mvdir ndb/tools/old_dirs/copy_tab/Makefile: mvdir ndb/tools/old_dirs/cpcc/Makefile: mvdir ndb/tools/old_dirs/create_index/Makefile: mvdir ndb/tools/old_dirs/delete_all/Makefile: mvdir ndb/tools/old_dirs/desc/Makefile: mvdir ndb/tools/old_dirs/drop_index/Makefile: mvdir ndb/tools/old_dirs/drop_tab/Makefile: mvdir ndb/tools/old_dirs/list_tables/Makefile: mvdir ndb/tools/old_dirs/select_all/Makefile: mvdir ndb/tools/old_dirs/select_count/Makefile: mvdir ndb/test/tools/old_dirs/transproxy/Makefile: mvdir ndb/test/tools/old_dirs/verify_index/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexTT/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexTimedAsynch/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexHammer/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexHammer/README: mvdir ndb/test/ndbapi/old_dirs/flexBench/Makefile.am: mvdir ndb/test/ndbapi/old_dirs/flexBench/Makefile_old: mvdir ndb/test/ndbapi/old_dirs/flexBench/ndbplot.pl: mvdir ndb/test/ndbapi/old_dirs/flexAsynch/Makefile: mvdir ndb/test/ndbapi/old_dirs/drop_all_tabs/Makefile: mvdir ndb/test/ndbapi/old_dirs/create_tab/Makefile: mvdir ndb/test/ndbapi/old_dirs/testOIBasic/Makefile: mvdir ndb/test/ndbapi/old_dirs/testOIBasic/times.txt: mvdir ndb/test/ndbapi/old_dirs/testNodeRestart/Makefile: mvdir ndb/test/ndbapi/old_dirs/testOperations/Makefile: mvdir ndb/test/ndbapi/old_dirs/testBlobs/Makefile: mvdir ndb/test/ndbapi/old_dirs/testBackup/Makefile: mvdir ndb/test/ndbapi/old_dirs/testDict/Makefile: mvdir ndb/test/ndbapi/old_dirs/test_event/Makefile: mvdir ndb/test/ndbapi/old_dirs/testTransactions/Makefile: mvdir ndb/test/ndbapi/old_dirs/testTimeout/Makefile: mvdir ndb/test/ndbapi/old_dirs/testSystemRestart/Makefile: mvdir ndb/test/ndbapi/old_dirs/testScanInterpreter/Makefile: mvdir ndb/test/ndbapi/old_dirs/testDataBuffers/Makefile: mvdir ndb/test/ndbapi/old_dirs/testIndex/Makefile: mvdir ndb/test/ndbapi/old_dirs/testMgm/Makefile: mvdir ndb/test/ndbapi/old_dirs/restarter/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexScan/Makefile: mvdir ndb/test/ndbapi/old_dirs/flexScan/README: mvdir ndb/test/ndbapi/old_dirs/testRestartGci/Makefile: mvdir ndb/test/ndbapi/old_dirs/flex_bench_mysql/Makefile: mvdir ndb/test/ndbapi/old_dirs/indexTest/Makefile: mvdir ndb/test/ndbapi/old_dirs/indexTest2/Makefile: mvdir ndb/test/ndbapi/old_dirs/testBasic/Makefile: mvdir ndb/test/ndbapi/old_dirs/basicAsynch/Makefile: mvdir ndb/test/ndbapi/old_dirs/create_all_tabs/Makefile: mvdir ndb/test/ndbapi/old_dirs/testNdbApi/Makefile: mvdir ndb/test/ndbapi/old_dirs/testOrderedIndex/Makefile: mvdir ndb/test/ndbapi/old_dirs/restarter2/Makefile: mvdir ndb/test/ndbapi/old_dirs/telco/Makefile: mvdir ndb/test/ndbapi/old_dirs/telco/readme: mvdir ndb/test/ndbapi/old_dirs/acid/Makefile: mvdir ndb/test/ndbapi/old_dirs/acid2/Makefile: mvdir ndb/test/ndbapi/old_dirs/acid2/TraceNdbApi.hpp: mvdir ndb/test/ndbapi/old_dirs/acid2/VerifyNdbApi.hpp: mvdir ndb/test/ndbapi/old_dirs/interpreterInTup/Makefile: mvdir ndb/test/ndbapi/old_dirs/ronja/Makefile: mvdir ndb/test/ndbapi/old_dirs/ronja/benchronja/Makefile: mvdir ndb/test/ndbapi/old_dirs/ronja/initronja/Makefile: mvdir ndb/test/ndbapi/old_dirs/testScan/Makefile: mvdir ndb/test/ndbapi/old_dirs/vw_test/Makefile: mvdir ndb/test/ndbapi/old_dirs/vw_test/bcd.h: mvdir ndb/test/ndbapi/old_dirs/vw_test/utv.h: mvdir ndb/test/ndbapi/old_dirs/vw_test/vcdrfunc.h: mvdir ndb/test/ndbapi/old_dirs/vw_test/script/client_start: mvdir ndb/test/ndbapi/old_dirs/testGrep/Makefile: mvdir ndb/test/ndbapi/old_dirs/testGrep/verify/Makefile: mvdir ndb/test/ndbapi/old_dirs/testInterpreter/Makefile: mvdir ndb/test/ndbapi/old_dirs/restarts/Makefile: mvdir ndb/test/ndbapi/old_dirs/bulk_copy/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/generator/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/include/dbGenerator.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/include/testData.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/include/userInterface.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/user/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/user/macros.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/async-src/user/ndb_error.hpp: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/bin/.empty: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/include/ndb_schema.hpp: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/include/testDefinitions.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/lib/.empty: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/script/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/script/async-lmc-bench-l-p10.sh: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/script/async-lmc-bench-l.sh: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/script/async-lmc-bench-p10.sh: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/script/async-lmc-bench.sh: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/README: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/generator/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/generator/dbGenerator.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/makevars.linux: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/makevars.sparc: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/generator/dbGenerator.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/generator/mainGenerator.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/include/testData.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/include/userInterface.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/populator/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/populator/dbPopulate.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/populator/dbPopulate.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/populator/mainPopulate.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/localDbPrepare.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/macros.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/ndb_error.hpp: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/old/Makefile: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/old/userHandle.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/old/userInterface.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/old/userTransaction.c: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/userHandle.h: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/userInterface.cpp: mvdir ndb/test/ndbapi/old_dirs/lmc-bench/src/user/userTransaction.c: mvdir ndb/test/ndbapi/testBasicAsynch.cpp: Change mode to -rw-rw-r-- ndb/tools/old_dirs/ndbnet/Makefile.PL: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Base.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Client.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Command.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Config.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Run.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util.pm: mvdir ndb/tools/old_dirs/ndbnet/ndbnet.pl: mvdir ndb/tools/old_dirs/ndbnet/ndbnetd.pl: mvdir ndb/tools/old_dirs/ndbnet/ndbrun: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Database.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Env.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Node.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/NodeApi.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/NodeDb.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/NodeMgmt.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/Server.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/ServerINET.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Net/ServerUNIX.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Run/Base.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Run/Database.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Run/Env.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Run/Node.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Base.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Dir.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Event.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/File.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/IO.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Lock.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Log.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/Socket.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/SocketINET.pm: mvdir ndb/tools/old_dirs/ndbnet/lib/NDB/Util/SocketUNIX.pm: mvdir ndb/tools/old_dirs/ndbsql/Makefile: mvdir ndb/tools/old_dirs/src/counterviewer/CounterViewer.java: mvdir ndb/test/ndbapi/bank/Bank.hpp: mvdir ndb/test/ndbapi/bank/Makefile_old: Rename: ndb/test/ndbapi/bank/Makefile -> ndb/test/ndbapi/bank/Makefile_old ndb/test/ndbapi/bank/old_dirs/bankCreator/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/bankSumAccounts/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/bankMakeGL/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/bankTimer/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/bankValidateAllGLs/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/bankTransactionMaker/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/src/Makefile: mvdir ndb/test/ndbapi/bank/old_dirs/testBank/Makefile: mvdir ndb/test/ndbapi/ScanFilter.hpp: Rename: ndb/test/ndbapi/old_dirs/testScanInterpreter/ScanFilter.hpp -> ndb/test/ndbapi/ScanFilter.hpp ndb/test/ndbapi/ScanInterpretTest.hpp: Rename: ndb/test/ndbapi/old_dirs/testScanInterpreter/ScanInterpretTest.hpp -> ndb/test/ndbapi/ScanInterpretTest.hpp ndb/test/ndbapi/ScanFunctions.hpp: Rename: ndb/test/ndbapi/old_dirs/testScan/ScanFunctions.hpp -> ndb/test/ndbapi/ScanFunctions.hpp
642 lines
15 KiB
Perl
642 lines
15 KiB
Perl
package NDB::Net::Command;
|
|
|
|
use strict;
|
|
use Carp;
|
|
use Getopt::Long;
|
|
use Text::ParseWords ();
|
|
use Text::Tabs ();
|
|
|
|
require NDB::Net::Base;
|
|
|
|
use vars qw(@ISA);
|
|
@ISA = qw(NDB::Net::Base);
|
|
|
|
# constructors
|
|
|
|
my $log;
|
|
|
|
sub initmodule {
|
|
$log = NDB::Util::Log->instance;
|
|
}
|
|
|
|
my($cmdtab, $aliastab);
|
|
|
|
NDB::Net::Command->attributes(
|
|
name => sub { /^\s*\w+\b/ },
|
|
argv => sub { ref eq 'ARRAY' },
|
|
optspec => sub { ref eq 'ARRAY' },
|
|
argspec => sub { /^\d+$/ || ref eq 'CODE' },
|
|
short => sub { defined && ! ref },
|
|
help => sub { defined && ! ref },
|
|
opts => sub { ref eq 'HASH' },
|
|
args => sub { ref eq 'ARRAY' },
|
|
);
|
|
|
|
sub desc {
|
|
my $cmd = shift;
|
|
return "command " . $cmd->getname("?");
|
|
};
|
|
|
|
sub processname {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my $cmdargv = $cmd->getargv;
|
|
my $name = shift(@$cmdargv);
|
|
my %seen = ();
|
|
while ((my $entry) = grep($name eq $_->{name}, @$aliastab)) {
|
|
$seen{$name}++ && last;
|
|
unshift(@$cmdargv, split(' ', $entry->{value}));
|
|
$name = shift(@$cmdargv);
|
|
}
|
|
if ((my $entry) = grep($_->{name} eq $name, @$cmdtab)) {
|
|
$cmd->setname($entry->{name})
|
|
or $log->push, return undef;
|
|
$cmd->setoptspec($entry->{optspec})
|
|
or $log->push, return undef;
|
|
$cmd->setargspec($entry->{argspec})
|
|
or $log->push, return undef;
|
|
}
|
|
else {
|
|
$log->put("$name: undefined")->push($cmd);
|
|
return undef;
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
sub getopttype {
|
|
my $cmd = shift;
|
|
my($key) = @_;
|
|
if (grep(/^$key$/, @{$cmd->getoptspec})) {
|
|
return 1;
|
|
}
|
|
if (grep(/^$key=/, @{$cmd->getoptspec})) {
|
|
return 2;
|
|
}
|
|
return undef;
|
|
}
|
|
|
|
sub processargv {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my $cmdargv = $cmd->getargv;
|
|
my @newargv = ();
|
|
while (@$cmdargv) {
|
|
my $v = shift(@$cmdargv);
|
|
if (! defined($v)) {
|
|
next;
|
|
}
|
|
if (ref($v) eq 'ARRAY') {
|
|
unshift(@$cmdargv, @$v); # push back
|
|
next;
|
|
}
|
|
if (ref($v) eq 'HASH') {
|
|
for my $k (sort keys %$v) {
|
|
if ($cmd->getopttype($k) == 1) {
|
|
push(@newargv, "--$k");
|
|
next;
|
|
}
|
|
if ($cmd->getopttype($k) == 2) {
|
|
push(@newargv, "--$k", $v->{$k});
|
|
next;
|
|
}
|
|
$log->put("$k: undefined option")->push($cmd);
|
|
return undef;
|
|
}
|
|
next;
|
|
}
|
|
if (ref($v)) {
|
|
confess 'oops';
|
|
}
|
|
push(@newargv, $v);
|
|
}
|
|
push(@$cmdargv, @newargv);
|
|
return 1;
|
|
}
|
|
|
|
sub processopts {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my $cmdargv = $cmd->getargv;
|
|
local(@ARGV) = @$cmdargv;
|
|
try: {
|
|
local $SIG{__WARN__} = sub {
|
|
my $errstr = "@_";
|
|
while (chomp($errstr)) {}
|
|
$log->put($errstr)->push($cmd);
|
|
};
|
|
$cmd->setopts({})
|
|
or $log->push, return undef;
|
|
Getopt::Long::Configure(qw(
|
|
default no_getopt_compat no_ignore_case
|
|
));
|
|
GetOptions($cmd->getopts, @{$cmd->getoptspec})
|
|
or return undef;
|
|
}
|
|
$cmd->setargs([ @ARGV ])
|
|
or $log->push, return undef;
|
|
return 1;
|
|
}
|
|
|
|
sub processargs {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my $cmdargs = $cmd->getargs;
|
|
if ($cmd->getargspec =~ /^\d+$/) {
|
|
if (@$cmdargs != $cmd->getargspec) {
|
|
$log->put("invalid arg count %d != %d",
|
|
scalar(@$cmdargs), $cmd->getargspec)->push($cmd);
|
|
return undef;
|
|
}
|
|
}
|
|
if (ref($cmd->getargspec) eq 'CODE') {
|
|
local $_ = scalar(@$cmdargs);
|
|
if (! &{$cmd->getargspec}()) {
|
|
$log->put("invalid arg count %d",
|
|
scalar(@$cmdargs))->push($cmd);
|
|
return undef;
|
|
}
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
sub new {
|
|
my $class = shift;
|
|
@_ % 2 == 0 or confess 0+@_;
|
|
my %attr = @_;
|
|
my $cmd = $class->SUPER::new(%attr);
|
|
my $cmdargv = [];
|
|
$cmd->setargv($cmdargv)
|
|
or $log->push, return undef;
|
|
my $line = $attr{line};
|
|
my $argv = $attr{argv};
|
|
defined($line) != defined($argv) # exactly one
|
|
or confess 'oops';
|
|
if (defined($line)) {
|
|
! ref($line) or confess 'oops';
|
|
push(@$cmdargv, Text::ParseWords::shellwords($line));
|
|
}
|
|
if (defined($argv)) {
|
|
ref($argv) eq 'ARRAY' or confess 'oops';
|
|
push(@$cmdargv, @$argv);
|
|
}
|
|
if (! @$cmdargv) {
|
|
$log->put("empty command");
|
|
return undef;
|
|
}
|
|
$cmd->processname
|
|
or $log->push, return undef;
|
|
$cmd->processargv
|
|
or $log->push, return undef;
|
|
$cmd->processopts
|
|
or $log->push, return undef;
|
|
$cmd->processargs
|
|
or $log->push, return undef;
|
|
return $cmd;
|
|
}
|
|
|
|
sub getline {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my @text = ($cmd->getname);
|
|
for my $k (sort keys %{$cmd->getopts}) {
|
|
if ($cmd->getopttype($k) == 1) {
|
|
push(@text, "--$k");
|
|
next;
|
|
}
|
|
if ($cmd->getopttype($k) == 2) {
|
|
push(@text, "--$k", quotemeta($cmd->getopts->{$k}));
|
|
next;
|
|
}
|
|
confess 'oops';
|
|
}
|
|
for my $s (@{$cmd->getargs}) {
|
|
push(@text, quotemeta($s));
|
|
}
|
|
return "@text";
|
|
}
|
|
|
|
sub setopt {
|
|
my $cmd = shift;
|
|
my($key, $value) = @_;
|
|
if ($cmd->getopttype($key) == 1) {
|
|
@_ == 1 or confess 0+@_;
|
|
$cmd->getopts->{$key} = 1;
|
|
}
|
|
elsif ($cmd->getopttype($key) == 2) {
|
|
@_ == 2 or confess 0+@_;
|
|
$cmd->getopts->{$key} = $value;
|
|
}
|
|
else {
|
|
confess 'oops';
|
|
}
|
|
}
|
|
|
|
sub getopt {
|
|
my $cmd = shift;
|
|
@_ == 1 or confess 0+@_;
|
|
my($key) = @_;
|
|
$cmd->getopttype($key) or confess 'oops';
|
|
return $cmd->getopts->{$key};
|
|
}
|
|
|
|
sub setarg {
|
|
my $cmd = shift;
|
|
@_ == 2 or confess 0+@_;
|
|
my($idx, $value) = @_;
|
|
$cmd->getargs->[$idx] = $value;
|
|
}
|
|
|
|
sub getarg {
|
|
my $cmd = shift;
|
|
@_ == 1 or confess 0+@_;
|
|
my($idx) = @_;
|
|
return $cmd->getargs->[$idx];
|
|
}
|
|
|
|
sub getarglist {
|
|
my $cmd = shift;
|
|
@_ == 1 or confess 0+@_;
|
|
my($idx) = @_;
|
|
my @args = @{$cmd->getargs};
|
|
@args = @args[$idx..$#args];
|
|
return \@args;
|
|
}
|
|
|
|
sub helptext {
|
|
my $cmd = shift;
|
|
@_ <= 1 or confess 0+@_;
|
|
my $name = $cmd->getargs->[0];
|
|
my $text = "";
|
|
my $indent = " "x4;
|
|
if (defined($name)) {
|
|
for my $entry (@$aliastab) {
|
|
if ($entry->{name} eq $name) {
|
|
$text .= "alias $name=\"$entry->{value}\"\n";
|
|
($name) = split(' ', $entry->{value});
|
|
last;
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
$text .= "COMMANDS\n";
|
|
}
|
|
for my $entry (@$cmdtab) {
|
|
if (defined($name)) {
|
|
if ($entry->{name} eq $name) {
|
|
$text .= uc($name) . "\n";
|
|
for my $t (split(/\n/, $entry->{help})) {
|
|
$text .= $indent;
|
|
$text .= Text::Tabs::expand($t) . "\n";
|
|
}
|
|
last;
|
|
}
|
|
}
|
|
else {
|
|
$text .= $indent;
|
|
$text .= sprintf("%-16s%s\n", $entry->{name}, $entry->{short});
|
|
}
|
|
}
|
|
if (! $text) {
|
|
$log->put("$name: undefined");
|
|
return undef;
|
|
}
|
|
return $text;
|
|
}
|
|
|
|
sub aliastext {
|
|
my $cmd = shift;
|
|
@_ == 0 or confess 0+@_;
|
|
my $text = "";
|
|
my $indent = " "x4;
|
|
$text .= "ALIASES\n";
|
|
for my $entry (@$aliastab) {
|
|
$text .= $indent;
|
|
$text .= sprintf("%-16s%s\n", $entry->{name}, $entry->{value});
|
|
}
|
|
return $text;
|
|
}
|
|
|
|
# commands
|
|
# name command name (unique)
|
|
# optspec option spec in Getopt::Long style
|
|
# argspec arg count (number or sub)
|
|
# short one line summary
|
|
# help long help text
|
|
# opts options HASH (after parse)
|
|
# args arguments ARRAY (after parse)
|
|
|
|
$cmdtab = [
|
|
{
|
|
name => "help",
|
|
optspec => [ qw() ],
|
|
argspec => sub { $_[0] <= 1 },
|
|
short => "print help (try: h h)",
|
|
help => <<END,
|
|
help [name]
|
|
name command name or alias
|
|
|
|
Print help summary or longer help text for one command.
|
|
|
|
General:
|
|
|
|
Options can be placed anywhere on command line and can be abbreviated.
|
|
Example: "start db11 -i" instead of "start --init_rm db11".
|
|
|
|
Several commands have internal option --local which makes current server
|
|
do the work, instead of passing it to other servers. This option should
|
|
not be used explicitly, except for testing.
|
|
END
|
|
},
|
|
{
|
|
name => "alias",
|
|
optspec => [ qw() ],
|
|
argspec => 0,
|
|
short => "list aliases",
|
|
help => <<END,
|
|
alias
|
|
|
|
List built-in aliases. New ones cannot be defined (yet).
|
|
END
|
|
},
|
|
{
|
|
name => "quit",
|
|
optspec => [ qw() ],
|
|
argspec => 0,
|
|
short => "exit ndbnet",
|
|
help => <<END,
|
|
quit
|
|
|
|
Exit ndbnet client.
|
|
END
|
|
},
|
|
{
|
|
name => "server",
|
|
optspec => [ qw(all direct pass parallel script=s local) ],
|
|
argspec => sub { $_ >= 1 },
|
|
short => "net server commands",
|
|
help => <<END,
|
|
server action id... [options]
|
|
action start restart stop ping
|
|
id net server id from net config
|
|
--all do all servers listed in net config
|
|
--direct do not use a server
|
|
--pass pass current ndb environment to remote command
|
|
--parallel run in parallel when possible
|
|
--script path remote script instead of "ndbnetd"
|
|
--local for internal use by servers
|
|
|
|
Each host needs one net server (ndbnetd). It should be started
|
|
from latest ndb installation, for example at system boot time.
|
|
A "server ping" is used to check that all servers are up (option
|
|
--all is added if no server ids are given).
|
|
|
|
Other actions are mainly for testing. A "server start" tries to
|
|
start servers via "ssh". This does not work if "ssh" is not allowed
|
|
or if the remote command does not get right environment.
|
|
|
|
Option --direct makes this ndbnet client do the work. It is assumed
|
|
for "server start" and it requires that a local net config exists.
|
|
Option --pass is useful in a homogeneous (NFS) environment.
|
|
|
|
There are aliases "startserver" for "server start", etc.
|
|
END
|
|
},
|
|
{
|
|
name => "start",
|
|
optspec => [ qw(init_rm nostart stop kill config old home=s clean proxy=s) ],
|
|
argspec => 1,
|
|
short => "start database",
|
|
help => <<END,
|
|
start dbname [options]
|
|
dbname database name
|
|
--init_rm destroy existing database files on each node
|
|
--nostart for DB nodes only do "ndb -n"
|
|
--stop do "stop dbname" first
|
|
--kill do "kill dbname" first
|
|
--config create run config but start no processes
|
|
--old use existing config files
|
|
--home dir override home (product dir) from config
|
|
--clean passed to startnode
|
|
--proxy list generate proxy ports (read the source)
|
|
|
|
Start a database as follows:
|
|
|
|
- start mgmt servers on all mgmt nodes
|
|
- start ndb processes on all db nodes
|
|
- send "all start" to first mgmt server (redundant)
|
|
- start processes on all api nodes (if runtype!="manual")
|
|
|
|
Older database versions (v1.0) are started similarly except that there
|
|
are no management servers.
|
|
|
|
The --proxy option is used for testing network problems.
|
|
END
|
|
},
|
|
{
|
|
name => "startnode",
|
|
optspec => [ qw(init_rm nostart config old run=s home=s local clean proxy=s) ],
|
|
argspec => 2,
|
|
short => "start database node",
|
|
help => <<END,
|
|
startnode dbname nodeid [options]
|
|
dbname database name
|
|
nodeid node number
|
|
--init_rm destroy existing database files (if db node)
|
|
--nostart if DB node only do "ndb -n"
|
|
--config create run config but start no processes
|
|
--old use existing config files
|
|
--run cmd run this shell command, default from config file
|
|
--home dir override home (product dir) from config
|
|
--local node must be local to this ndbnet server
|
|
--clean remove old node dir first
|
|
--proxy list processed by mgmt nodes, see "start" command
|
|
|
|
Start the process on one database node. The node can be of any type
|
|
(mgmt/db/api). If already running, does nothing.
|
|
|
|
The --run option specifies a simple shell command (not pipeline etc).
|
|
Defaults:
|
|
|
|
- mgmt node => mgmtsrvr -p port -l Ndb.cfg -i config.txt -c config.bin
|
|
where port comes from ndbnet.xml
|
|
- db node => ndb
|
|
- api node => based on ndbnet config, default empty
|
|
|
|
The node server exits when the command exits (unless runtype is set to
|
|
auto). Command exit status is not available.
|
|
|
|
Used internally by db "start" command.
|
|
END
|
|
},
|
|
{
|
|
name => "stop",
|
|
optspec => [ qw() ],
|
|
argspec => 1,
|
|
short => "stop database",
|
|
help => <<END,
|
|
stop dbname [options]
|
|
dbname database name
|
|
|
|
Stop a database as follows (see also "stopnode" command):
|
|
|
|
- send SIGTERM to api processes, wait for them to exit
|
|
- send "all stop" command to first mgmt server
|
|
- wait for db processes to exit
|
|
- send "quit" to mgmt servers, wait for them to exit
|
|
END
|
|
},
|
|
{
|
|
name => "stopnode",
|
|
optspec => [ qw(local) ],
|
|
argspec => 2,
|
|
short => "stop process on one node",
|
|
help => <<END,
|
|
stopnode dbname nodeid [options]
|
|
dbname database name
|
|
nodeid node number
|
|
--local node must be local to this server
|
|
|
|
Stop process on one database node. Action depends on node type:
|
|
|
|
- api node: send SIGTERM to the process, wait for it to exit
|
|
- db node: no action, wait for the ndb process to exit
|
|
- mgmt node: send "quit" command to mgmt server, wait for it to exit
|
|
|
|
Used internally by db "stop" command.
|
|
END
|
|
},
|
|
{
|
|
name => "kill",
|
|
optspec => [ qw() ],
|
|
argspec => 1,
|
|
short => "kill processes on all nodes",
|
|
help => <<END,
|
|
kill dbname [options]
|
|
dbname database name
|
|
|
|
Send SIGKILL to processes on all nodes and wait for them to exit.
|
|
END
|
|
},
|
|
{
|
|
name => "killnode",
|
|
optspec => [ qw(local) ],
|
|
argspec => 2,
|
|
short => "kill process on one node",
|
|
help => <<END,
|
|
killnode dbname nodeid [options]
|
|
dbname database name
|
|
nodeid node number
|
|
--local node must be local to this server
|
|
|
|
Send SIGKILL to the process on the node and wait for it to exit.
|
|
|
|
Used internally by db "kill" command.
|
|
END
|
|
},
|
|
{
|
|
name => "statnode",
|
|
optspec => [ qw(local) ],
|
|
argspec => 2,
|
|
short => "get node run status (internal)",
|
|
help => <<END,
|
|
statnode dbname nodeid [options]
|
|
dbname database name
|
|
nodeid node number
|
|
--local node must be local to this server
|
|
|
|
Get node run status (up/down) as a process. Used internally
|
|
and may not produce any output in ndbnet command.
|
|
END
|
|
},
|
|
{
|
|
name => "list",
|
|
optspec => [ qw(quick short) ],
|
|
argspec => sub { 1 },
|
|
short => "list databases",
|
|
help => <<END,
|
|
list [dbname] [options]
|
|
dbname database name, default is to list all
|
|
--quick only output config, do not query status
|
|
--short do list nodes
|
|
|
|
List databases and nodes. Internally returns a data structure
|
|
of process and mgmt server status values for each node. Externally
|
|
(in ndbnet command) this is formatted as a listing.
|
|
END
|
|
},
|
|
{
|
|
name => "writenode",
|
|
optspec => [ qw(wait=i local) ],
|
|
argspec => 3,
|
|
short => "write line of text to the process on a node",
|
|
help => <<END,
|
|
writenode dbname nodeid "some text"
|
|
dbname database name
|
|
nodeid node number
|
|
"some text" arbitrary text (quote if spaces)
|
|
--wait n wait n seconds for any response
|
|
--local node must be local to this server
|
|
|
|
Write the text and a newline to the standard input of the process
|
|
running on the node. If wait > 0 is specified, prints whatever
|
|
the process wrote to stdout/stderr during that time.
|
|
|
|
Used internally by "start" and other commands.
|
|
END
|
|
},
|
|
];
|
|
|
|
# aliases
|
|
# name alias
|
|
# value expansion
|
|
|
|
$aliastab = [
|
|
{
|
|
name => "h",
|
|
value => "help",
|
|
},
|
|
{
|
|
name => "q",
|
|
value => "quit",
|
|
},
|
|
{
|
|
name => "EOF",
|
|
value => "quit",
|
|
},
|
|
{
|
|
name => "startserver",
|
|
value => "server start",
|
|
},
|
|
{
|
|
name => "ss",
|
|
value => "server start",
|
|
},
|
|
{
|
|
name => "restartserver",
|
|
value => "server restart",
|
|
},
|
|
{
|
|
name => "rss",
|
|
value => "server restart",
|
|
},
|
|
{
|
|
name => "stopserver",
|
|
value => "server stop",
|
|
},
|
|
{
|
|
name => "pingserver",
|
|
value => "server ping",
|
|
},
|
|
{
|
|
name => "ps",
|
|
value => "server ping",
|
|
},
|
|
{
|
|
name => "l",
|
|
value => "list",
|
|
},
|
|
];
|
|
|
|
1;
|
|
# vim:set sw=4:
|