From 8a23601e060013312368fe6b7f24b113ef2d77f1 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 15 Jul 2004 09:25:23 +0200 Subject: [PATCH 1/5] Remove the remains of SCAN_TABINFO signal ndb/include/kernel/GlobalSignalNumbers.h: Remove unused signal number for GSN_SCAN_TABINFO ndb/include/kernel/signaldata/ScanTab.hpp: Remove definition of old signal ScanTabInfo ndb/src/common/debugger/signaldata/ScanTab.cpp: Removed old print function for SCAN_TABINFO ndb/src/common/debugger/signaldata/SignalNames.cpp: Removed name for GSN_SCAN_TABINFO ndb/src/ndbapi/NdbApiSignal.cpp: Removed SCAN_TABINFO and old comment ndb/src/ndbapi/NdbConnectionScan.cpp: Removed duplicate definition of WAIFOR_SCAN_TIMEOUT, real one is in NdbScanOperation.cpp ndb/src/ndbapi/NdbScanOperation.cpp: Removed duplicate debug printout ndb/src/ndbapi/Ndbif.cpp: Removed SCAN_TABINFO --- ndb/include/kernel/GlobalSignalNumbers.h | 2 +- ndb/include/kernel/signaldata/ScanTab.hpp | 70 ------------------- .../common/debugger/signaldata/ScanTab.cpp | 19 ----- .../debugger/signaldata/SignalNames.cpp | 1 - ndb/src/ndbapi/NdbApiSignal.cpp | 21 ------ ndb/src/ndbapi/NdbConnectionScan.cpp | 5 -- ndb/src/ndbapi/NdbScanOperation.cpp | 5 -- ndb/src/ndbapi/Ndbif.cpp | 4 -- 8 files changed, 1 insertion(+), 126 deletions(-) diff --git a/ndb/include/kernel/GlobalSignalNumbers.h b/ndb/include/kernel/GlobalSignalNumbers.h index 7b70f4c3ac0..a16860561b5 100644 --- a/ndb/include/kernel/GlobalSignalNumbers.h +++ b/ndb/include/kernel/GlobalSignalNumbers.h @@ -84,7 +84,7 @@ extern const GlobalSignalNumber NO_OF_SIGNAL_NAMES; #define GSN_SCAN_NEXTREQ 28 #define GSN_SCAN_TABCONF 29 -#define GSN_SCAN_TABINFO 30 +// 30 unused #define GSN_SCAN_TABREF 31 #define GSN_SCAN_TABREQ 32 #define GSN_KEYINFO20 33 diff --git a/ndb/include/kernel/signaldata/ScanTab.hpp b/ndb/include/kernel/signaldata/ScanTab.hpp index 1c11bdee4ae..ab2978e48da 100644 --- a/ndb/include/kernel/signaldata/ScanTab.hpp +++ b/ndb/include/kernel/signaldata/ScanTab.hpp @@ -271,76 +271,6 @@ private: #define STATUS_SHIFT (8) #define STATUS_MASK (0xFF) -/** - * - * SENDER: Dbtc, API - * RECIVER: API, Dbtc - */ -class ScanTabInfo { - /** - * Reciver(s) and Sender(s) - */ - friend class NdbConnection; - friend class Dbtc; - - /** - * For printing - */ - friend bool printSCANTABINFO(FILE * output, const Uint32 * theData, Uint32 len, Uint16 receiverBlockNo); - -public: - /** - * Length of signal - */ - STATIC_CONST( SignalLength = 17 ); - -private: - - // Type definitions - - /** - * DATA VARIABLES - */ - UintR apiConnectPtr; // DATA 0 - UintR operLenAndIdx[16]; // DATA 1-16 - - /** - * Get:ers for operLenAndIdx - */ - static Uint32 getLen(const UintR & operLenAndIdx); - static Uint8 getIdx(const UintR & operLenAndIdx); - -}; - - -/** - * Operation length and index - * - l = Length of operation - 24 Bits -> Max 16777215 (Bit 0-24) - i = Index of operation - 7 Bits -> Max 255 (Bit 25-32) - - 1111111111222222222233 - 01234567890123456789012345678901 - llllllllllllllllllllllllliiiiiii -*/ - -#define LENGTH_SHIFT (0) -#define LENGTH_MASK (0xFFFFFF) - -#define INDEX_SHIFT (24) -#define INDEX_MASK (0xFF) - -inline -Uint32 -ScanTabInfo::getLen(const UintR & operLenAndIdx){ - return (Uint32)((operLenAndIdx >> LENGTH_SHIFT) & LENGTH_MASK); -} - -inline -Uint8 -ScanTabInfo::getIdx(const UintR & operLenAndIdx){ - return (Uint8)((operLenAndIdx >> INDEX_SHIFT) & INDEX_MASK); -} /** * diff --git a/ndb/src/common/debugger/signaldata/ScanTab.cpp b/ndb/src/common/debugger/signaldata/ScanTab.cpp index eabb53d1a49..4b057171963 100644 --- a/ndb/src/common/debugger/signaldata/ScanTab.cpp +++ b/ndb/src/common/debugger/signaldata/ScanTab.cpp @@ -99,25 +99,6 @@ printSCANTABCONF(FILE * output, const Uint32 * theData, Uint32 len, Uint16 recei return false; } -bool -printSCANTABINFO(FILE * output, const Uint32 * theData, Uint32 len, Uint16 receiverBlockNo){ - - const ScanTabInfo * const sig = (ScanTabInfo *) theData; - - fprintf(output, " apiConnectPtr: H\'%.8x\n", - sig->apiConnectPtr); - - fprintf(output, " Operation(s):\n"); - for(int i = 0; i<16; i++){ - fprintf(output, " [%.2u]ix=%d l=%.2d,", - i, sig->getIdx(sig->operLenAndIdx[i]), sig->getLen(sig->operLenAndIdx[i])); - if (((i+1) % 4) == 0) - fprintf(output, "\n"); - } - - return false; -} - bool printSCANTABREF(FILE * output, const Uint32 * theData, Uint32 len, Uint16 receiverBlockNo){ diff --git a/ndb/src/common/debugger/signaldata/SignalNames.cpp b/ndb/src/common/debugger/signaldata/SignalNames.cpp index 377a588dbb0..bb492fa0411 100644 --- a/ndb/src/common/debugger/signaldata/SignalNames.cpp +++ b/ndb/src/common/debugger/signaldata/SignalNames.cpp @@ -32,7 +32,6 @@ const GsnName SignalNames [] = { ,{ GSN_READCONF, "READCONF" } ,{ GSN_SCAN_NEXTREQ, "SCAN_NEXTREQ" } ,{ GSN_SCAN_TABCONF, "SCAN_TABCONF" } - ,{ GSN_SCAN_TABINFO, "SCAN_TABINFO" } ,{ GSN_SCAN_TABREF, "SCAN_TABREF" } ,{ GSN_SCAN_TABREQ, "SCAN_TABREQ" } ,{ GSN_TC_COMMITCONF, "TC_COMMITCONF" } diff --git a/ndb/src/ndbapi/NdbApiSignal.cpp b/ndb/src/ndbapi/NdbApiSignal.cpp index 4dc9bfb6fce..6f5e1e50d2c 100644 --- a/ndb/src/ndbapi/NdbApiSignal.cpp +++ b/ndb/src/ndbapi/NdbApiSignal.cpp @@ -15,18 +15,6 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -/****************************************************************************** -Name: NdbApiSignal.C -Include: -Link: -Author: UABMNST Mona Natterkvist UAB/B/SD -Date: 970829 -Version: 0.1 -Description: Interface between TIS and NDB -Documentation: -Adjust: 971114 UABMNST First version. - 000705 QABANAB Update of Protocol2 -******************************************************************************/ #include "API.hpp" #include "NdbApiSignal.hpp" @@ -193,15 +181,6 @@ NdbApiSignal::setSignal(int aNdbSignalType) } break; - case GSN_SCAN_TABINFO: - { - theTrace = TestOrd::TraceAPI; - theReceiversBlockNumber = DBTC; - theVerId_signalNumber = GSN_SCAN_TABINFO; - theLength = 17; - } - break; - case GSN_SCAN_NEXTREQ: { theTrace = TestOrd::TraceAPI; diff --git a/ndb/src/ndbapi/NdbConnectionScan.cpp b/ndb/src/ndbapi/NdbConnectionScan.cpp index 1684a0e44bd..0c4490015ff 100644 --- a/ndb/src/ndbapi/NdbConnectionScan.cpp +++ b/ndb/src/ndbapi/NdbConnectionScan.cpp @@ -43,11 +43,6 @@ #include -// time out for next scan result (-1 is infinite) -// XXX should change default only if non-trivial interpreted program is used -#define WAITFOR_SCAN_TIMEOUT 120000 - - /*************************************************************************** * int receiveSCAN_TABREF(NdbApiSignal* aSignal) diff --git a/ndb/src/ndbapi/NdbScanOperation.cpp b/ndb/src/ndbapi/NdbScanOperation.cpp index a880f308d24..603ae85ad65 100644 --- a/ndb/src/ndbapi/NdbScanOperation.cpp +++ b/ndb/src/ndbapi/NdbScanOperation.cpp @@ -470,11 +470,6 @@ int NdbScanOperation::nextResult(bool fetchAllowed) if(DEBUG_NEXT_RESULT) ndbout_c("nextResult(%d) idx=%d last=%d", fetchAllowed, idx, last); - if(DEBUG_NEXT_RESULT) - ndbout_c("nextResult(%d) idx=%d last=%d", - fetchAllowed, - idx, last); - /** * Check next buckets */ diff --git a/ndb/src/ndbapi/Ndbif.cpp b/ndb/src/ndbapi/Ndbif.cpp index f561a641961..641eccaa59c 100644 --- a/ndb/src/ndbapi/Ndbif.cpp +++ b/ndb/src/ndbapi/Ndbif.cpp @@ -728,10 +728,6 @@ Ndb::handleReceivedSignal(NdbApiSignal* aSignal, LinearSectionPtr ptr[3]) } goto InvalidSignal; } - case GSN_SCAN_TABINFO: - { - goto InvalidSignal; - } case GSN_KEYINFO20: { tFirstDataPtr = int2void(tFirstData); if (tFirstDataPtr == 0) goto InvalidSignal; From 8e74ef8acab4f64214e675d31fbf70c261a45ec9 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 15 Jul 2004 09:28:18 +0200 Subject: [PATCH 2/5] Moved testScanPerf to ndb/test/ndbapi/ and added it to Makefile BitKeeper/deleted/.del-Makefile~bf89f137b06b6e68: Delete: ndb/test/ndbapi/testScanPerf/Makefile BitKeeper/deleted/.del-testScanPerf.cpp~b619ce6099f279a1: Delete: ndb/test/ndbapi/testScanPerf/testScanPerf.cpp ndb/test/ndbapi/Makefile.am: Add testScanPerf to Makefile.am --- ndb/test/ndbapi/Makefile.am | 2 ++ ndb/test/ndbapi/{testScanPerf => }/testScanPerf.cpp | 0 ndb/test/ndbapi/testScanPerf/Makefile | 9 --------- 3 files changed, 2 insertions(+), 9 deletions(-) rename ndb/test/ndbapi/{testScanPerf => }/testScanPerf.cpp (100%) delete mode 100644 ndb/test/ndbapi/testScanPerf/Makefile diff --git a/ndb/test/ndbapi/Makefile.am b/ndb/test/ndbapi/Makefile.am index 6776ba966c1..97d839fe58c 100644 --- a/ndb/test/ndbapi/Makefile.am +++ b/ndb/test/ndbapi/Makefile.am @@ -25,6 +25,7 @@ testOperations \ testRestartGci \ testScan \ testScanInterpreter \ +testScanPerf \ testSystemRestart \ testTimeout \ testTransactions \ @@ -59,6 +60,7 @@ testOperations_SOURCES = testOperations.cpp testRestartGci_SOURCES = testRestartGci.cpp testScan_SOURCES = testScan.cpp testScanInterpreter_SOURCES = testScanInterpreter.cpp +testScanPerf_SOURCES = testScanPerf.cpp testSystemRestart_SOURCES = testSystemRestart.cpp testTimeout_SOURCES = testTimeout.cpp testTransactions_SOURCES = testTransactions.cpp diff --git a/ndb/test/ndbapi/testScanPerf/testScanPerf.cpp b/ndb/test/ndbapi/testScanPerf.cpp similarity index 100% rename from ndb/test/ndbapi/testScanPerf/testScanPerf.cpp rename to ndb/test/ndbapi/testScanPerf.cpp diff --git a/ndb/test/ndbapi/testScanPerf/Makefile b/ndb/test/ndbapi/testScanPerf/Makefile deleted file mode 100644 index fdf5980b385..00000000000 --- a/ndb/test/ndbapi/testScanPerf/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -include .defs.mk - -TYPE = ndbapitest - -BIN_TARGET = testScanPerf - -SOURCES = testScanPerf.cpp - -include $(NDB_TOP)/Epilogue.mk From 417c3a07c7ad9ea4e04b3d54951b01a03bbe35ee Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 16 Jul 2004 10:42:45 +0200 Subject: [PATCH 3/5] BUG#4511 ndb/src/common/debugger/EventLogger.cpp: Changed to STATISTICS ndb/src/common/mgmcommon/ConfigInfo.cpp: Changed to Diskless --- ndb/src/common/debugger/EventLogger.cpp | 2 +- ndb/src/common/mgmcommon/ConfigInfo.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ndb/src/common/debugger/EventLogger.cpp b/ndb/src/common/debugger/EventLogger.cpp index 8f976e7b991..3bf82f6fb5d 100644 --- a/ndb/src/common/debugger/EventLogger.cpp +++ b/ndb/src/common/debugger/EventLogger.cpp @@ -135,7 +135,7 @@ EventLogger::defEventLogMatrixSize = sizeof(EventLogger::defEventLogMatrix)/ */ const EventLogger::EventCategoryName EventLogger::eventCategoryNames[] = { { LogLevel::llStartUp, "STARTUP" }, - { LogLevel::llStatistic, "STATISTIC" }, + { LogLevel::llStatistic, "STATISTICS" }, { LogLevel::llCheckpoint, "CHECKPOINT" }, { LogLevel::llNodeRestart, "NODERESTART" }, { LogLevel::llConnection, "CONNECTION" }, diff --git a/ndb/src/common/mgmcommon/ConfigInfo.cpp b/ndb/src/common/mgmcommon/ConfigInfo.cpp index a2ca9c327d0..d7cae4356d6 100644 --- a/ndb/src/common/mgmcommon/ConfigInfo.cpp +++ b/ndb/src/common/mgmcommon/ConfigInfo.cpp @@ -921,7 +921,7 @@ const ConfigInfo::ParamInfo ConfigInfo::m_ParamInfo[] = { { CFG_DB_DISCLESS, - "Discless", + "Diskless", "DB", "Run wo/ disk", ConfigInfo::USED, From 4baaca9560fb5fd45075be380cdb6897c4830c67 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 19 Jul 2004 10:50:50 +0200 Subject: [PATCH 4/5] BUG#4511 Made Discless deprecated mysql-test/mysql-test-run.sh: Change to diskless mysql-test/ndb/ndb_config_2_node.ini: Change to diskless mysql-test/ndb/ndbcluster.sh: Change to diskless ndb/src/common/mgmcommon/ConfigInfo.cpp: Making Discless deprecated, so it still can be used but a warning will be printed if used. Adde possibilty to transform a value of type ConfigInfo::BOOL, neede for depicated Discless --- mysql-test/mysql-test-run.sh | 2 +- mysql-test/ndb/ndb_config_2_node.ini | 2 +- mysql-test/ndb/ndbcluster.sh | 8 ++++---- ndb/src/common/mgmcommon/ConfigInfo.cpp | 18 +++++++++++++++++- 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/mysql-test/mysql-test-run.sh b/mysql-test/mysql-test-run.sh index 8b86f88fda9..3516ff2a88f 100644 --- a/mysql-test/mysql-test-run.sh +++ b/mysql-test/mysql-test-run.sh @@ -1449,7 +1449,7 @@ then if [ -z "$USE_RUNNING_NDBCLUSTER" ] then echo "Starting ndbcluster" - ./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --small --discless --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1 + ./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --small --diskless --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1 export NDB_CONNECTSTRING="host=localhost:$NDBCLUSTER_PORT" else export NDB_CONNECTSTRING="$USE_RUNNING_NDBCLUSTER" diff --git a/mysql-test/ndb/ndb_config_2_node.ini b/mysql-test/ndb/ndb_config_2_node.ini index c7bba0bd3e4..312b2f8c4c0 100644 --- a/mysql-test/ndb/ndb_config_2_node.ini +++ b/mysql-test/ndb/ndb_config_2_node.ini @@ -3,7 +3,7 @@ NoOfReplicas: 2 MaxNoOfConcurrentOperations: CHOOSE_MaxNoOfConcurrentOperations DataMemory: CHOOSE_DataMemory IndexMemory: CHOOSE_IndexMemory -Discless: CHOOSE_Discless +Diskless: CHOOSE_Diskless [COMPUTER] Id: 1 diff --git a/mysql-test/ndb/ndbcluster.sh b/mysql-test/ndb/ndbcluster.sh index d05bc9a7a5b..3c5c715dde0 100644 --- a/mysql-test/ndb/ndbcluster.sh +++ b/mysql-test/ndb/ndbcluster.sh @@ -42,7 +42,7 @@ cfgfile=Ndb.cfg stop_ndb= initial_ndb= status_ndb= -ndb_discless=0 +ndb_diskless=0 ndb_con_op=100000 ndb_dmem=80M @@ -65,8 +65,8 @@ while test $# -gt 0; do ndb_dmem=40M ndb_imem=12M ;; - --discless) - ndb_discless=1 + --diskless) + ndb_diskless=1 ;; --data-dir=*) fsdir=`echo "$1" | sed -e "s;--data-dir=;;"` @@ -131,7 +131,7 @@ sed \ -e s,"CHOOSE_MaxNoOfConcurrentOperations",$ndb_con_op,g \ -e s,"CHOOSE_DataMemory",$ndb_dmem,g \ -e s,"CHOOSE_IndexMemory",$ndb_imem,g \ - -e s,"CHOOSE_Discless",$ndb_discless,g \ + -e s,"CHOOSE_Diskless",$ndb_diskless,g \ -e s,"CHOOSE_HOSTNAME_".*,"$ndb_host",g \ -e s,"CHOOSE_FILESYSTEM_NODE_1","$fs_name_1",g \ -e s,"CHOOSE_FILESYSTEM_NODE_2","$fs_name_2",g \ diff --git a/ndb/src/common/mgmcommon/ConfigInfo.cpp b/ndb/src/common/mgmcommon/ConfigInfo.cpp index d7cae4356d6..7bf99f2d588 100644 --- a/ndb/src/common/mgmcommon/ConfigInfo.cpp +++ b/ndb/src/common/mgmcommon/ConfigInfo.cpp @@ -177,6 +177,7 @@ const DepricationTransform f_deprication[] = { ,{ "DB", "MemorySpaceTuples", "DataMemory", 0, 8192 } ,{ "DB", "TransactionInactiveTimeBeforeAbort", "TransactionInactiveTimeout", 0, 1 } + ,{ "DB", "Discless", "Diskless", 0, 1 } ,{ "TCP", "ProcessId1", "NodeId1", 0, 1} ,{ "TCP", "ProcessId2", "NodeId2", 0, 1} ,{ "TCP", "SendBufferSize", "SendBufferMemory", 0, 16384 } @@ -930,6 +931,20 @@ const ConfigInfo::ParamInfo ConfigInfo::m_ParamInfo[] = { 0, 0, 1}, + + { + CFG_DB_DISCLESS, + "Discless", + "DB", + "Diskless", + ConfigInfo::DEPRICATED, + true, + ConfigInfo::BOOL, + 0, + 0, + 1}, + + { CFG_DB_ARBIT_TIMEOUT, @@ -3098,7 +3113,8 @@ transform(InitConfigFileParser::Context & ctx, require(ctx.m_currentSection->getTypeOf(oldName, &oldType)); ConfigInfo::Type newType = ctx.m_info->getType(ctx.m_currentInfo, newName); if(!((oldType == PropertiesType_Uint32 || oldType == PropertiesType_Uint64) - && (newType == ConfigInfo::INT || newType == ConfigInfo::INT64))){ + && (newType == ConfigInfo::INT || newType == ConfigInfo::INT64 || newType == ConfigInfo::BOOL))){ + ndbout << "oldType: " << (int)oldType << ", newType: " << (int)newType << endl; ctx.reportError("Unable to handle type conversion w.r.t deprication %s %s" "- [%s] starting at line: %d", oldName, newName, From 80e15e2dd4676b910fedfed2f4e60ea541a142c1 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 19 Jul 2004 11:38:28 +0200 Subject: [PATCH 5/5] Added new test/result file ndb_types to test creating tables with different column types in NDB --- mysql-test/r/ndb_types.result | 36 +++++++++++++++++++++++++++ mysql-test/t/ndb_types.test | 47 +++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100644 mysql-test/r/ndb_types.result create mode 100644 mysql-test/t/ndb_types.test diff --git a/mysql-test/r/ndb_types.result b/mysql-test/r/ndb_types.result new file mode 100644 index 00000000000..9a45b77149b --- /dev/null +++ b/mysql-test/r/ndb_types.result @@ -0,0 +1,36 @@ +DROP TABLE IF EXISTS t1; +CREATE TABLE t1 ( +auto int(5) unsigned NOT NULL auto_increment, +string char(10) default "hello", +tiny tinyint(4) DEFAULT '0' NOT NULL , +short smallint(6) DEFAULT '1' NOT NULL , +medium mediumint(8) DEFAULT '0' NOT NULL, +long_int int(11) DEFAULT '0' NOT NULL, +longlong bigint(13) DEFAULT '0' NOT NULL, +real_float float(13,1) DEFAULT 0.0 NOT NULL, +real_double double(16,4), +utiny tinyint(3) unsigned DEFAULT '0' NOT NULL, +ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL, +umedium mediumint(8) unsigned DEFAULT '0' NOT NULL, +ulong int(11) unsigned DEFAULT '0' NOT NULL, +ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL, +time_stamp timestamp, +date_field date, +time_field time, +date_time datetime, +options enum('one','two','tree') not null, +flags set('one','two','tree') not null, +PRIMARY KEY (auto), +KEY (utiny), +KEY (tiny), +KEY (short), +KEY any_name (medium), +KEY (longlong), +KEY (real_float), +KEY (ushort), +KEY (umedium), +KEY (ulong), +KEY (ulonglong,ulong), +KEY (options,flags) +); +drop table t1; diff --git a/mysql-test/t/ndb_types.test b/mysql-test/t/ndb_types.test new file mode 100644 index 00000000000..d9f50c8b3fc --- /dev/null +++ b/mysql-test/t/ndb_types.test @@ -0,0 +1,47 @@ +-- source include/have_ndb.inc + +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +# +# Test creation of different column types in NDB +# + +CREATE TABLE t1 ( + auto int(5) unsigned NOT NULL auto_increment, + string char(10) default "hello", + tiny tinyint(4) DEFAULT '0' NOT NULL , + short smallint(6) DEFAULT '1' NOT NULL , + medium mediumint(8) DEFAULT '0' NOT NULL, + long_int int(11) DEFAULT '0' NOT NULL, + longlong bigint(13) DEFAULT '0' NOT NULL, + real_float float(13,1) DEFAULT 0.0 NOT NULL, + real_double double(16,4), + utiny tinyint(3) unsigned DEFAULT '0' NOT NULL, + ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL, + umedium mediumint(8) unsigned DEFAULT '0' NOT NULL, + ulong int(11) unsigned DEFAULT '0' NOT NULL, + ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL, + time_stamp timestamp, + date_field date, + time_field time, + date_time datetime, + options enum('one','two','tree') not null, + flags set('one','two','tree') not null, + PRIMARY KEY (auto), + KEY (utiny), + KEY (tiny), + KEY (short), + KEY any_name (medium), + KEY (longlong), + KEY (real_float), + KEY (ushort), + KEY (umedium), + KEY (ulong), + KEY (ulonglong,ulong), + KEY (options,flags) +); + + +drop table t1;