diff options
author | unknown <jonas@perch.ndb.mysql.com> | 2006-10-05 14:25:18 +0200 |
---|---|---|
committer | unknown <jonas@perch.ndb.mysql.com> | 2006-10-05 14:25:18 +0200 |
commit | d7bb7cc561300fbb6bacee3bcb5993f34099d8f3 (patch) | |
tree | ea479eba9eaa67aac7a14413ad8243485064fdee /storage/ndb/tools | |
parent | 83ad64b6bc5349f6e01dd4bc0459b38f6b44e10d (diff) | |
download | mariadb-git-d7bb7cc561300fbb6bacee3bcb5993f34099d8f3.tar.gz |
ndb - bug#17929
guess which scan type to use in handler
sql/ha_ndbcluster.cc:
Add guessing of scan type when starting full-table-scan
storage/ndb/include/ndbapi/NdbDictionary.hpp:
Add methods to check properties of a bitmap of columns
storage/ndb/include/ndbapi/NdbScanOperation.hpp:
Add DiskScanFlag
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Add aggregate of #disk columns
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Add #disk columns
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Add disk scan flag
storage/ndb/tools/delete_all.cpp:
Add tupscan/diskscan to delete_all
Diffstat (limited to 'storage/ndb/tools')
-rw-r--r-- | storage/ndb/tools/delete_all.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/storage/ndb/tools/delete_all.cpp b/storage/ndb/tools/delete_all.cpp index fcf9b425bd0..d8011365a6e 100644 --- a/storage/ndb/tools/delete_all.cpp +++ b/storage/ndb/tools/delete_all.cpp @@ -29,6 +29,8 @@ NDB_STD_OPTS_VARS; static const char* _dbname = "TEST_DB"; static my_bool _transactional = false; +static my_bool _tupscan = 0; +static my_bool _diskscan = 0; static struct my_option my_long_options[] = { NDB_STD_OPTS("ndb_desc"), @@ -38,6 +40,12 @@ static struct my_option my_long_options[] = { "transactional", 't', "Single transaction (may run out of operations)", (gptr*) &_transactional, (gptr*) &_transactional, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, + { "tupscan", 999, "Run tupscan", + (gptr*) &_tupscan, (gptr*) &_tupscan, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, + { "diskscan", 999, "Run diskcan", + (gptr*) &_diskscan, (gptr*) &_diskscan, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0} }; static void usage() @@ -139,8 +147,11 @@ int clear_table(Ndb* pNdb, const NdbDictionary::Table* pTab, goto failed; } + int flags = 0; + flags |= _tupscan ? NdbScanOperation::SF_TupScan : 0; + flags |= _diskscan ? NdbScanOperation::SF_DiskScan : 0; if( pOp->readTuples(NdbOperation::LM_Exclusive, - NdbScanOperation::SF_TupScan, par) ) { + flags, par) ) { goto failed; } |