diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok index 5c9df32641bfba6ce84d7e172581ecfd8cee10c4..a55a5f46496bd126c101f07728620cfe36a23884 100644 --- a/BitKeeper/etc/logging_ok +++ b/BitKeeper/etc/logging_ok @@ -62,6 +62,7 @@ pem@mysql.com peter@linux.local peter@mysql.com ram@ram.(none) +ranger@regul.home.lan root@x3.internalnet salle@geopard.(none) salle@geopard.online.bg diff --git a/sql-bench/crash-me.sh b/sql-bench/crash-me.sh index d18070d30b703c82f0e66522939527d31f09025f..b101a7f595a080b37207bb814158e6db33e7c5b3 100644 --- a/sql-bench/crash-me.sh +++ b/sql-bench/crash-me.sh @@ -66,7 +66,7 @@ $retry_limit=3; GetOptions("Information","help","server=s","debug","user=s","password=s","database=s","restart","force","quick","log-all-queries","comment=s","host=s","fix-limit-file","dir=s","db-start-cmd=s","sleep=s","suffix=s","batch-mode","config-file=s","log-queries-to-file=s","check-server") || usage(); usage() if ($opt_help || $opt_Information); -$opt_suffix = '-'.$opt_suffix if (length($opt_suffix) == 0); +$opt_suffix = '-'.$opt_suffix if (length($opt_suffix) != 0); $opt_config_file = "$pwd/$opt_dir/$opt_server$opt_suffix.cfg" if (length($opt_config_file) == 0); #!!! @@ -2726,223 +2726,223 @@ sub check_reserved_words my $answer, $prompt, $config, $keyword_type; - my @keywords_type = ( "(ANSI SQL 92/99)", "(ANSI SQL 92)", "(ANSI SQL 99)", "(EXTRA)"); - my @keywords_ext = ( "ansi92/99", "ansi92", "ansi99", "extra"); + my @keywords_ext = ( "ansi-92/99", "ansi92", "ansi99", "extra"); my %reserved_words = ( - ABSOLUTE => 0, ACTION => 0, ADD => 0, - AFTER => 0, ALIAS => 0, ALL => 0, - ALLOCATE => 0, ALTER => 0, AND => 0, - ANY => 0, ARE => 0, AS => 0, - ASC => 0, ASSERTION => 0, AT => 0, - AUTHORIZATION => 0, BEFORE => 0, BEGIN => 0, - BIT => 0, BOOLEAN => 0, BOTH => 0, - BREADTH => 0, BY => 0, CALL => 0, - CASCADE => 0, CASCADED => 0, CASE => 0, - CAST => 0, CATALOG => 0, CHAR => 0, - CHARACTER => 0, CHECK => 0, CLOSE => 0, - COLLATE => 0, COLLATION => 0, COLUMN => 0, - COMMIT => 0, COMPLETION => 0, CONNECT => 0, - CONNECTION => 0, CONSTRAINT => 0, CONSTRAINTS => 0, - CONTINUE => 0, CORRESPONDING => 0, CREATE => 0, - CROSS => 0, CURRENT => 0, CURRENT_DATE => 0, - CURRENT_TIME => 0, CURRENT_TIMESTAMP => 0, CURRENT_USER => 0, - CURSOR => 0, CYCLE => 0, DATA => 0, - DATE => 0, DAY => 0, DEALLOCATE => 0, - DEC => 0, DECIMAL => 0, DECLARE => 0, - DEFAULT => 0, DEFERRABLE => 0, DEFERRED => 0, - DELETE => 0, DEPTH => 0, DESC => 0, - DESCRIBE => 0, DESCRIPTOR => 0, DIAGNOSTICS => 0, - DICTIONARY => 0, DISCONNECT => 0, DISTINCT => 0, - DOMAIN => 0, DOUBLE => 0, DROP => 0, - EACH => 0, ELSE => 0, ELSEIF => 0, - END => 0, END-EXEC => 0, EQUALS => 0, - ESCAPE => 0, EXCEPT => 0, EXCEPTION => 0, - EXEC => 0, EXECUTE => 0, EXTERNAL => 0, - FALSE => 0, FETCH => 0, FIRST => 0, - FLOAT => 0, FOR => 0, FOREIGN => 0, - FOUND => 0, FROM => 0, FULL => 0, - GENERAL => 0, GET => 0, GLOBAL => 0, - GO => 0, GOTO => 0, GRANT => 0, - GROUP => 0, HAVING => 0, HOUR => 0, - IDENTITY => 0, IF => 0, IGNORE => 0, - IMMEDIATE => 0, IN => 0, INDICATOR => 0, - INITIALLY => 0, INNER => 0, INPUT => 0, - INSERT => 0, INT => 0, INTEGER => 0, - INTERSECT => 0, INTERVAL => 0, INTO => 0, - IS => 0, ISOLATION => 0, JOIN => 0, - KEY => 0, LANGUAGE => 0, LAST => 0, - LEADING => 0, LEAVE => 0, LEFT => 0, - LESS => 0, LEVEL => 0, LIKE => 0, - LIMIT => 0, LOCAL => 0, LOOP => 0, - MATCH => 0, MINUTE => 0, MODIFY => 0, - MODULE => 0, MONTH => 0, NAMES => 0, - NATIONAL => 0, NATURAL => 0, NCHAR => 0, - NEW => 0, NEXT => 0, NO => 0, - NONE => 0, NOT => 0, NULL => 0, - NUMERIC => 0, OBJECT => 0, OF => 0, - OFF => 0, OLD => 0, ON => 0, - ONLY => 0, OPEN => 0, OPERATION => 0, - OPTION => 0, OR => 0, ORDER => 0, - OUTER => 0, OUTPUT => 0, PAD => 0, - PARAMETERS => 0, PARTIAL => 0, PRECISION => 0, - PREORDER => 0, PREPARE => 0, PRESERVE => 0, - PRIMARY => 0, PRIOR => 0, PRIVILEGES => 0, - PROCEDURE => 0, PUBLIC => 0, READ => 0, - REAL => 0, RECURSIVE => 0, REF => 0, - REFERENCES => 0, REFERENCING => 0, RELATIVE => 0, - RESIGNAL => 0, RESTRICT => 0, RETURN => 0, - RETURNS => 0, REVOKE => 0, RIGHT => 0, - ROLE => 0, ROLLBACK => 0, ROUTINE => 0, - ROW => 0, ROWS => 0, SAVEPOINT => 0, - SCHEMA => 0, SCROLL => 0, SEARCH => 0, - SECOND => 0, SECTION => 0, SELECT => 0, - SEQUENCE => 0, SESSION => 0, SESSION_USER => 0, - SET => 0, SIGNAL => 0, SIZE => 0, - SMALLINT => 0, SOME => 0, SPACE => 0, - SQL => 0, SQLEXCEPTION => 0, SQLSTATE => 0, - SQLWARNING => 0, STRUCTURE => 0, SYSTEM_USER => 0, - TABLE => 0, TEMPORARY => 0, THEN => 0, - TIME => 0, TIMESTAMP => 0, TIMEZONE_HOUR => 0, - TIMEZONE_MINUTE => 0, TO => 0, TRAILING => 0, - TRANSACTION => 0, TRANSLATION => 0, TRIGGER => 0, - TRUE => 0, UNDER => 0, UNION => 0, - UNIQUE => 0, UNKNOWN => 0, UPDATE => 0, - USAGE => 0, USER => 0, USING => 0, - VALUE => 0, VALUES => 0, VARCHAR => 0, - VARIABLE => 0, VARYING => 0, VIEW => 0, - WHEN => 0, WHENEVER => 0, WHERE => 0, - WHILE => 0, WITH => 0, WITHOUT => 0, - WORK => 0, WRITE => 0, YEAR => 0, - ZONE => 0, - - ASYNC => 1, AVG => 1, BETWEEN => 1, - BIT_LENGTH => 1, CHARACTER_LENGTH => 1, CHAR_LENGTH => 1, - COALESCE => 1, CONVERT => 1, COUNT => 1, - EXISTS => 1, EXTRACT => 1, INSENSITIVE => 1, - LOWER => 1, MAX => 1, MIN => 1, - NULLIF => 1, OCTET_LENGTH => 1, OID => 1, - OPERATORS => 1, OTHERS => 1, OVERLAPS => 1, - PENDANT => 1, POSITION => 1, PRIVATE => 1, - PROTECTED => 1, REPLACE => 1, SENSITIVE => 1, - SIMILAR => 1, SQLCODE => 1, SQLERROR => 1, - SUBSTRING => 1, SUM => 1, TEST => 1, - THERE => 1, TRANSLATE => 1, TRIM => 1, - TYPE => 1, UPPER => 1, VIRTUAL => 1, - VISIBLE => 1, WAIT => 1, - - ADMIN => 2, AGGREGATE => 2, ARRAY => 2, - BINARY => 2, BLOB => 2, CLASS => 2, - CLOB => 2, CONDITION => 2, CONSTRUCTOR => 2, - CONTAINS => 2, CUBE => 2, CURRENT_PATH => 2, - CURRENT_ROLE => 2, DATALINK => 2, DEREF => 2, - DESTROY => 2, DESTRUCTOR => 2, DETERMINISTIC => 2, - DO => 2, DYNAMIC => 2, EVERY => 2, - EXIT => 2, EXPAND => 2, EXPANDING => 2, - FREE => 2, FUNCTION => 2, GROUPING => 2, - HANDLER => 2, HAST => 2, HOST => 2, - INITIALIZE => 2, INOUT => 2, ITERATE => 2, - LARGE => 2, LATERAL => 2, LOCALTIME => 2, - LOCALTIMESTAMP => 2, LOCATOR => 2, MEETS => 2, - MODIFIES => 2, NCLOB => 2, NORMALIZE => 2, - ORDINALITY => 2, OUT => 2, PARAMETER => 2, - PATH => 2, PERIOD => 2, POSTFIX => 2, - PRECEDES => 2, PREFIX => 2, READS => 2, - REDO => 2, REPEAT => 2, RESULT => 2, - ROLLUP => 2, SETS => 2, SPECIFIC => 2, - SPECIFICTYPE => 2, START => 2, STATE => 2, - STATIC => 2, SUCCEEDS => 2, TERMINATE => 2, - THAN => 2, TREAT => 2, UNDO => 2, - UNTIL => 2, - - ANALYZE => 3, AUTO_INCREMENT => 3, BDB => 3, - BERKELEYDB => 3, BIGINT => 3, BTREE => 3, - CHANGE => 3, COLUMNS => 3, DATABASE => 3, - DATABASES => 3, DAY_HOUR => 3, DAY_MINUTE => 3, - DAY_SECOND => 3, DELAYED => 3, DISTINCTROW => 3, - ENCLOSED => 3, ERRORS => 3, ESCAPED => 3, - EXPLAIN => 3, FIELDS => 3, FULLTEXT => 3, - GEOMETRY => 3, HASH => 3, HIGH_PRIORITY => 3, - HOUR_MINUTE => 3, HOUR_SECOND => 3, INDEX => 3, - INFILE => 3, INNODB => 3, KEYS => 3, - KILL => 3, LINES => 3, LOAD => 3, - LOCK => 3, LONG => 3, LONGBLOB => 3, - LONGTEXT => 3, LOW_PRIORITY => 3, MASTER_SERVER_ID => 3, - MEDIUMBLOB => 3, MEDIUMINT => 3, MEDIUMTEXT => 3, - MIDDLEINT => 3, MINUTE_SECOND => 3, MRG_MYISAM => 3, - OPTIMIZE => 3, OPTIONALLY => 3, OUTFILE => 3, - PURGE => 3, REGEXP => 3, RENAME => 3, - REQUIRE => 3, RLIKE => 3, RTREE => 3, - SHOW => 3, SONAME => 3, SPATIAL => 3, - SQL_BIG_RESULT => 3,SQL_CALC_FOUND_ROWS => 3, SQL_SMALL_RESULT => 3, - SSL => 3, STARTING => 3, STRAIGHT_JOIN => 3, - STRIPED => 3, TABLES => 3, TERMINATED => 3, - TINYBLOB => 3, TINYINT => 3, TINYTEXT => 3, - TYPES => 3, UNLOCK => 3, UNSIGNED => 3, - USE => 3, USER_RESOURCES => 3, VARBINARY => 3, - WARNINGS => 3, XOR => 3, YEAR_MONTH => 3, - ZEROFILL => 3, - - BACKUP => 3, BREAK => 3, BROWSE => 3, - BULK => 3, CHECKPOINT => 3, CLUSTERED => 3, - COMPUTE => 3, CONTAINSTABLE => 3, DBCC => 3, - DENY => 3, DISK => 3, DISTRIBUTED => 3, - DUMMY => 3, DUMP => 3, ERRLVL => 3, - FILE => 3, FILLFACTOR => 3, FREETEXT => 3, - FREETEXTTABLE => 3, HOLDLOCK => 3, IDENTITYCOL => 3, - IDENTITY_INSERT => 3, LINENO => 3, NOCHECK => 3, - NONCLUSTERED => 3, OFFSETS => 3, OPENDATASOURCE => 3, - OPENQUERY => 3, OPENROWSET => 3, OPENXML => 3, - OVER => 3, PERCENT => 3, PLAN => 3, - PRINT => 3, PROC => 3, RAISERROR => 3, - READTEXT => 3, RECONFIGURE => 3, REPLICATION => 3, - RESTORE => 3, ROWCOUNT => 3, ROWGUIDCOL => 3, - RULE => 3, SAVE => 3, SETUSER => 3, - SHUTDOWN => 3, STATISTICS => 3, TEXTSIZE => 3, - TOP => 3, TRAN => 3, TRUNCATE => 3, - TSEQUAL => 3, UPDATETEXT => 3, WAITFOR => 3, - WRITETEXT => 3, - - ACCESS => 3, AUDIT => 3, CLUSTER => 3, - COMMENT => 3, COMPRESS => 3, EXCLUSIVE => 3, - IDENTIFIED => 3, INCREMENT => 3, INITIAL => 3, - MAXEXTENTS => 3, MINUS => 3, MLSLABEL => 3, - MODE => 3, NOAUDIT => 3, NOCOMPRESS => 3, - NOWAIT => 3, NUMBER => 3, OFFLINE => 3, - ONLINE => 3, PCTFREE => 3, RAW => 3, - RESOURCE => 3, ROWID => 3, ROWNUM => 3, - SHARE => 3, SUCCESSFUL => 3, SYNONYM => 3, - SYSDATE => 3, UID => 3, VALIDATE => 3, - VARCHAR2 => 3 - ); + 'ABSOLUTE' => 0, 'ACTION' => 0, 'ADD' => 0, + 'AFTER' => 0, 'ALIAS' => 0, 'ALL' => 0, + 'ALLOCATE' => 0, 'ALTER' => 0, 'AND' => 0, + 'ANY' => 0, 'ARE' => 0, 'AS' => 0, + 'ASC' => 0, 'ASSERTION' => 0, 'AT' => 0, + 'AUTHORIZATION' => 0, 'BEFORE' => 0, 'BEGIN' => 0, + 'BIT' => 0, 'BOOLEAN' => 0, 'BOTH' => 0, + 'BREADTH' => 0, 'BY' => 0, 'CALL' => 0, + 'CASCADE' => 0, 'CASCADED' => 0, 'CASE' => 0, + 'CAST' => 0, 'CATALOG' => 0, 'CHAR' => 0, + 'CHARACTER' => 0, 'CHECK' => 0, 'CLOSE' => 0, + 'COLLATE' => 0, 'COLLATION' => 0, 'COLUMN' => 0, + 'COMMIT' => 0, 'COMPLETION' => 0, 'CONNECT' => 0, + 'CONNECTION' => 0, 'CONSTRAINT' => 0, 'CONSTRAINTS' => 0, + 'CONTINUE' => 0, 'CORRESPONDING' => 0, 'CREATE' => 0, + 'CROSS' => 0, 'CURRENT' => 0, 'CURRENT_DATE' => 0, + 'CURRENT_TIME' => 0,'CURRENT_TIMESTAMP' => 0, 'CURRENT_USER' => 0, + 'CURSOR' => 0, 'CYCLE' => 0, 'DATA' => 0, + 'DATE' => 0, 'DAY' => 0, 'DEALLOCATE' => 0, + 'DEC' => 0, 'DECIMAL' => 0, 'DECLARE' => 0, + 'DEFAULT' => 0, 'DEFERRABLE' => 0, 'DEFERRED' => 0, + 'DELETE' => 0, 'DEPTH' => 0, 'DESC' => 0, + 'DESCRIBE' => 0, 'DESCRIPTOR' => 0, 'DIAGNOSTICS' => 0, + 'DICTIONARY' => 0, 'DISCONNECT' => 0, 'DISTINCT' => 0, + 'DOMAIN' => 0, 'DOUBLE' => 0, 'DROP' => 0, + 'EACH' => 0, 'ELSE' => 0, 'ELSEIF' => 0, + 'END' => 0, 'END-EXEC' => 0, 'EQUALS' => 0, + 'ESCAPE' => 0, 'EXCEPT' => 0, 'EXCEPTION' => 0, + 'EXEC' => 0, 'EXECUTE' => 0, 'EXTERNAL' => 0, + 'FALSE' => 0, 'FETCH' => 0, 'FIRST' => 0, + 'FLOAT' => 0, 'FOR' => 0, 'FOREIGN' => 0, + 'FOUND' => 0, 'FROM' => 0, 'FULL' => 0, + 'GENERAL' => 0, 'GET' => 0, 'GLOBAL' => 0, + 'GO' => 0, 'GOTO' => 0, 'GRANT' => 0, + 'GROUP' => 0, 'HAVING' => 0, 'HOUR' => 0, + 'IDENTITY' => 0, 'IF' => 0, 'IGNORE' => 0, + 'IMMEDIATE' => 0, 'IN' => 0, 'INDICATOR' => 0, + 'INITIALLY' => 0, 'INNER' => 0, 'INPUT' => 0, + 'INSERT' => 0, 'INT' => 0, 'INTEGER' => 0, + 'INTERSECT' => 0, 'INTERVAL' => 0, 'INTO' => 0, + 'IS' => 0, 'ISOLATION' => 0, 'JOIN' => 0, + 'KEY' => 0, 'LANGUAGE' => 0, 'LAST' => 0, + 'LEADING' => 0, 'LEAVE' => 0, 'LEFT' => 0, + 'LESS' => 0, 'LEVEL' => 0, 'LIKE' => 0, + 'LIMIT' => 0, 'LOCAL' => 0, 'LOOP' => 0, + 'MATCH' => 0, 'MINUTE' => 0, 'MODIFY' => 0, + 'MODULE' => 0, 'MONTH' => 0, 'NAMES' => 0, + 'NATIONAL' => 0, 'NATURAL' => 0, 'NCHAR' => 0, + 'NEW' => 0, 'NEXT' => 0, 'NO' => 0, + 'NONE' => 0, 'NOT' => 0, 'NULL' => 0, + 'NUMERIC' => 0, 'OBJECT' => 0, 'OF' => 0, + 'OFF' => 0, 'OLD' => 0, 'ON' => 0, + 'ONLY' => 0, 'OPEN' => 0, 'OPERATION' => 0, + 'OPTION' => 0, 'OR' => 0, 'ORDER' => 0, + 'OUTER' => 0, 'OUTPUT' => 0, 'PAD' => 0, + 'PARAMETERS' => 0, 'PARTIAL' => 0, 'PRECISION' => 0, + 'PREORDER' => 0, 'PREPARE' => 0, 'PRESERVE' => 0, + 'PRIMARY' => 0, 'PRIOR' => 0, 'PRIVILEGES' => 0, + 'PROCEDURE' => 0, 'PUBLIC' => 0, 'READ' => 0, + 'REAL' => 0, 'RECURSIVE' => 0, 'REF' => 0, + 'REFERENCES' => 0, 'REFERENCING' => 0, 'RELATIVE' => 0, + 'RESIGNAL' => 0, 'RESTRICT' => 0, 'RETURN' => 0, + 'RETURNS' => 0, 'REVOKE' => 0, 'RIGHT' => 0, + 'ROLE' => 0, 'ROLLBACK' => 0, 'ROUTINE' => 0, + 'ROW' => 0, 'ROWS' => 0, 'SAVEPOINT' => 0, + 'SCHEMA' => 0, 'SCROLL' => 0, 'SEARCH' => 0, + 'SECOND' => 0, 'SECTION' => 0, 'SELECT' => 0, + 'SEQUENCE' => 0, 'SESSION' => 0, 'SESSION_USER' => 0, + 'SET' => 0, 'SIGNAL' => 0, 'SIZE' => 0, + 'SMALLINT' => 0, 'SOME' => 0, 'SPACE' => 0, + 'SQL' => 0, 'SQLEXCEPTION' => 0, 'SQLSTATE' => 0, + 'SQLWARNING' => 0, 'STRUCTURE' => 0, 'SYSTEM_USER' => 0, + 'TABLE' => 0, 'TEMPORARY' => 0, 'THEN' => 0, + 'TIME' => 0, 'TIMESTAMP' => 0, 'TIMEZONE_HOUR' => 0, + 'TIMEZONE_MINUTE' => 0, 'TO' => 0, 'TRAILING' => 0, + 'TRANSACTION' => 0, 'TRANSLATION' => 0, 'TRIGGER' => 0, + 'TRUE' => 0, 'UNDER' => 0, 'UNION' => 0, + 'UNIQUE' => 0, 'UNKNOWN' => 0, 'UPDATE' => 0, + 'USAGE' => 0, 'USER' => 0, 'USING' => 0, + 'VALUE' => 0, 'VALUES' => 0, 'VARCHAR' => 0, + 'VARIABLE' => 0, 'VARYING' => 0, 'VIEW' => 0, + 'WHEN' => 0, 'WHENEVER' => 0, 'WHERE' => 0, + 'WHILE' => 0, 'WITH' => 0, 'WITHOUT' => 0, + 'WORK' => 0, 'WRITE' => 0, 'YEAR' => 0, + 'ZONE' => 0, + + 'ASYNC' => 1, 'AVG' => 1, 'BETWEEN' => 1, + 'BIT_LENGTH' => 1,'CHARACTER_LENGTH' => 1, 'CHAR_LENGTH' => 1, + 'COALESCE' => 1, 'CONVERT' => 1, 'COUNT' => 1, + 'EXISTS' => 1, 'EXTRACT' => 1, 'INSENSITIVE' => 1, + 'LOWER' => 1, 'MAX' => 1, 'MIN' => 1, + 'NULLIF' => 1, 'OCTET_LENGTH' => 1, 'OID' => 1, + 'OPERATORS' => 1, 'OTHERS' => 1, 'OVERLAPS' => 1, + 'PENDANT' => 1, 'POSITION' => 1, 'PRIVATE' => 1, + 'PROTECTED' => 1, 'REPLACE' => 1, 'SENSITIVE' => 1, + 'SIMILAR' => 1, 'SQLCODE' => 1, 'SQLERROR' => 1, + 'SUBSTRING' => 1, 'SUM' => 1, 'TEST' => 1, + 'THERE' => 1, 'TRANSLATE' => 1, 'TRIM' => 1, + 'TYPE' => 1, 'UPPER' => 1, 'VIRTUAL' => 1, + 'VISIBLE' => 1, 'WAIT' => 1, + + 'ADMIN' => 2, 'AGGREGATE' => 2, 'ARRAY' => 2, + 'BINARY' => 2, 'BLOB' => 2, 'CLASS' => 2, + 'CLOB' => 2, 'CONDITION' => 2, 'CONSTRUCTOR' => 2, + 'CONTAINS' => 2, 'CUBE' => 2, 'CURRENT_PATH' => 2, + 'CURRENT_ROLE' => 2, 'DATALINK' => 2, 'DEREF' => 2, + 'DESTROY' => 2, 'DESTRUCTOR' => 2, 'DETERMINISTIC' => 2, + 'DO' => 2, 'DYNAMIC' => 2, 'EVERY' => 2, + 'EXIT' => 2, 'EXPAND' => 2, 'EXPANDING' => 2, + 'FREE' => 2, 'FUNCTION' => 2, 'GROUPING' => 2, + 'HANDLER' => 2, 'HAST' => 2, 'HOST' => 2, + 'INITIALIZE' => 2, 'INOUT' => 2, 'ITERATE' => 2, + 'LARGE' => 2, 'LATERAL' => 2, 'LOCALTIME' => 2, + 'LOCALTIMESTAMP' => 2, 'LOCATOR' => 2, 'MEETS' => 2, + 'MODIFIES' => 2, 'NCLOB' => 2, 'NORMALIZE' => 2, + 'ORDINALITY' => 2, 'OUT' => 2, 'PARAMETER' => 2, + 'PATH' => 2, 'PERIOD' => 2, 'POSTFIX' => 2, + 'PRECEDES' => 2, 'PREFIX' => 2, 'READS' => 2, + 'REDO' => 2, 'REPEAT' => 2, 'RESULT' => 2, + 'ROLLUP' => 2, 'SETS' => 2, 'SPECIFIC' => 2, + 'SPECIFICTYPE' => 2, 'START' => 2, 'STATE' => 2, + 'STATIC' => 2, 'SUCCEEDS' => 2, 'TERMINATE' => 2, + 'THAN' => 2, 'TREAT' => 2, 'UNDO' => 2, + 'UNTIL' => 2, + + 'ACCESS' => 3, 'ANALYZE' => 3, 'AUDIT' => 3, + 'AUTO_INCREMENT' => 3, 'BACKUP' => 3, 'BDB' => 3, + 'BERKELEYDB' => 3, 'BIGINT' => 3, 'BREAK' => 3, + 'BROWSE' => 3, 'BTREE' => 3, 'BULK' => 3, + 'CHANGE' => 3, 'CHECKPOINT' => 3, 'CLUSTER' => 3, + 'CLUSTERED' => 3, 'COLUMNS' => 3, 'COMMENT' => 3, + 'COMPRESS' => 3, 'COMPUTE' => 3, 'CONTAINSTABLE' => 3, + 'DATABASE' => 3, 'DATABASES' => 3, 'DAY_HOUR' => 3, + 'DAY_MINUTE' => 3, 'DAY_SECOND' => 3, 'DBCC' => 3, + 'DELAYED' => 3, 'DENY' => 3, 'DISK' => 3, + 'DISTINCTROW' => 3, 'DISTRIBUTED' => 3, 'DUMMY' => 3, + 'DUMP' => 3, 'ENCLOSED' => 3, 'ERRLVL' => 3, + 'ERRORS' => 3, 'ESCAPED' => 3, 'EXCLUSIVE' => 3, + 'EXPLAIN' => 3, 'FIELDS' => 3, 'FILE' => 3, + 'FILLFACTOR' => 3, 'FREETEXT' => 3, 'FREETEXTTABLE' => 3, + 'FULLTEXT' => 3, 'GEOMETRY' => 3, 'HASH' => 3, + 'HIGH_PRIORITY' => 3, 'HOLDLOCK' => 3, 'HOUR_MINUTE' => 3, + 'HOUR_SECOND' => 3, 'IDENTIFIED' => 3, 'IDENTITYCOL' => 3, + 'IDENTITY_INSERT' => 3, 'INCREMENT' => 3, 'INDEX' => 3, + 'INFILE' => 3, 'INITIAL' => 3, 'INNODB' => 3, + 'KEYS' => 3, 'KILL' => 3, 'LINENO' => 3, + 'LINES' => 3, 'LOAD' => 3, 'LOCK' => 3, + 'LONG' => 3, 'LONGBLOB' => 3, 'LONGTEXT' => 3, + 'LOW_PRIORITY' => 3, 'MASTER_SERVER_ID' => 3, 'MAXEXTENTS' => 3, + 'MEDIUMBLOB' => 3, 'MEDIUMINT' => 3, 'MEDIUMTEXT' => 3, + 'MIDDLEINT' => 3, 'MINUS' => 3, 'MINUTE_SECOND' => 3, + 'MLSLABEL' => 3, 'MODE' => 3, 'MRG_MYISAM' => 3, + 'NOAUDIT' => 3, 'NOCHECK' => 3, 'NOCOMPRESS' => 3, + 'NONCLUSTERED' => 3, 'NOWAIT' => 3, 'NUMBER' => 3, + 'OFFLINE' => 3, 'OFFSETS' => 3, 'ONLINE' => 3, + 'OPENDATASOURCE' => 3, 'OPENQUERY' => 3, 'OPENROWSET' => 3, + 'OPENXML' => 3, 'OPTIMIZE' => 3, 'OPTIONALLY' => 3, + 'OUTFILE' => 3, 'OVER' => 3, 'PCTFREE' => 3, + 'PERCENT' => 3, 'PLAN' => 3, 'PRINT' => 3, + 'PROC' => 3, 'PURGE' => 3, 'RAISERROR' => 3, + 'RAW' => 3, 'READTEXT' => 3, 'RECONFIGURE' => 3, + 'REGEXP' => 3, 'RENAME' => 3, 'REPLICATION' => 3, + 'REQUIRE' => 3, 'RESOURCE' => 3, 'RESTORE' => 3, + 'RLIKE' => 3, 'ROWCOUNT' => 3, 'ROWGUIDCOL' => 3, + 'ROWID' => 3, 'ROWNUM' => 3, 'RTREE' => 3, + 'RULE' => 3, 'SAVE' => 3, 'SETUSER' => 3, + 'SHARE' => 3, 'SHOW' => 3, 'SHUTDOWN' => 3, + 'SONAME' => 3, 'SPATIAL' => 3, 'SQL_BIG_RESULT' => 3, +'SQL_CALC_FOUND_ROWS' => 3,'SQL_SMALL_RESULT' => 3, 'SSL' => 3, + 'STARTING' => 3, 'STATISTICS' => 3, 'STRAIGHT_JOIN' => 3, + 'STRIPED' => 3, 'SUCCESSFUL' => 3, 'SYNONYM' => 3, + 'SYSDATE' => 3, 'TABLES' => 3, 'TERMINATED' => 3, + 'TEXTSIZE' => 3, 'TINYBLOB' => 3, 'TINYINT' => 3, + 'TINYTEXT' => 3, 'TOP' => 3, 'TRAN' => 3, + 'TRUNCATE' => 3, 'TSEQUAL' => 3, 'TYPES' => 3, + 'UID' => 3, 'UNLOCK' => 3, 'UNSIGNED' => 3, + 'UPDATETEXT' => 3, 'USE' => 3, 'USER_RESOURCES' => 3, + 'VALIDATE' => 3, 'VARBINARY' => 3, 'VARCHAR2' => 3, + 'WAITFOR' => 3, 'WARNINGS' => 3, 'WRITETEXT' => 3, + 'XOR' => 3, 'YEAR_MONTH' => 3, 'ZEROFILL' => 3 +); + $dbh->do("drop table crash_me10"); - $dbh->do("create table crash_me10 (id int not null)") or warn "$dbh->errstr\n"; - $dbh->{RaiseError}= 1; - foreach my $keyword (keys %reserved_words) + foreach my $keyword (sort {$a cmp $b} keys %reserved_words) { - $keyword_type= $reserved_words{$keyword}; - $prompt= "Reserved keyword ".$keyword." ".$keywords_type[$keyword_type]; + $prompt= "Keyword ".$keyword; $config= "reserved_word_".$keywords_ext[$keyword_type]."_".lc($keyword); + $dbh->{RaiseError}= 1; + + $answer= "yes"; + eval { - $dbh->do("alter table crash_me10 add column $keyword int not null"); + $dbh->do("create table crash_me10 ($keyword int not null)"); }; - $answer= ($@) ? "yes" : "no"; + $dbh->{RaiseError}= 0; + + if (!$@) + { + $answer= "no"; + $dbh->do("drop table crash_me10"); + } save_config_data($config,$answer,$prompt); print "$prompt: ",$limits{$config},"\n"; - } - - $dbh->{RaiseError}= 0; } - + # # Do a query on a query package object. #