You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

342 lines
12 KiB

Merge r3403..3414 from mysql-5.1-innodb: ------------------------------------------------------------ revno: 3414 revision-id: marko.makela@oracle.com-20100422093342-jf9ojlzdqsdebohn parent: marko.makela@oracle.com-20100421185359-8qaxoa2yyrpzwdd7 committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Thu 2010-04-22 12:33:42 +0300 message: Correct the definition of DICT_SYS_INDEXES_NAME_FIELD. When row_merge_drop_temp_indexes() was reworked to drop the indexes via the data dictionary cache, the code was broken because it would read the index name from the wrong field. modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/dict/dict0boot.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fdict%2Fdict0boot.c storage/innodb_plugin/include/dict0boot.h 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Fdict0boot.h ------------------------------------------------------------ revno: 3413 revision-id: marko.makela@oracle.com-20100421185359-8qaxoa2yyrpzwdd7 parent: marko.makela@oracle.com-20100421102723-0i80uezbyu0ekj5d committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 21:53:59 +0300 message: btr_page_split_and_insert(): Avoid an infinite loop. (Bug #52964) btr_page_tuple_smaller(): New function, refactored from btr_page_split_and_insert(). btr_page_get_split_rec(): Renamed from btr_page_get_sure_split_rec(). Note that a NULL return may mean that the tuple is to be inserted into either the lower or upper page, to be determined by btr_page_tuple_smaller(). btr_page_split_and_insert(): When btr_page_get_split_rec() returns NULL, invoke btr_page_tuple_smaller() to determine which half-page the tuple belongs to. Reviewed by Sunny Bains modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/btr/btr0btr.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbtr%2Fbtr0btr.c ------------------------------------------------------------ revno: 3412 revision-id: marko.makela@oracle.com-20100421102723-0i80uezbyu0ekj5d parent: marko.makela@oracle.com-20100421100029-mji6lmdgvuqh96qq committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 13:27:23 +0300 message: dict_create_index_step(): Be strict about DYNAMIC and COMPRESSED tables. Bug #50495 is about REDUNDANT and COMPACT tables, after all. modified: mysql-test/suite/innodb_plugin/r/innodb-zip.result 2252@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fmysql-test%2Finnodb-zip.result mysql-test/suite/innodb_plugin/t/innodb-zip.test 2252@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fmysql-test%2Finnodb-zip.test storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/dict/dict0crea.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fdict%2Fdict0crea.c ------------------------------------------------------------ revno: 3411 revision-id: marko.makela@oracle.com-20100421100029-mji6lmdgvuqh96qq parent: marko.makela@oracle.com-20100421095033-0acvzxb8um8cms0a committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 13:00:29 +0300 message: ha_innobase::add_index(): Only check for duplicate indexes when the data dictionary is locked. This fixes a UNIV_DEBUG assertion failure in innodb-index.test. modified: storage/innodb_plugin/handler/handler0alter.cc 1845@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fhandler%2Fhandler0alter.cc ------------------------------------------------------------ revno: 3410 revision-id: marko.makela@oracle.com-20100421095033-0acvzxb8um8cms0a parent: marko.makela@oracle.com-20100421094032-ir4glqk46qvg2ywn committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 12:50:33 +0300 message: dtuple_convert_big_rec(): Store locally any fields whose maximum length is less than 256 bytes. (Bug #52745) Add related comments and debug assertions to the "offsets" functions in rem0rec.c. Approved by Sunny Bains modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/data/data0data.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fdata%2Fdata0data.c storage/innodb_plugin/rem/rem0rec.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Frem%2Frem0rec.c ------------------------------------------------------------ revno: 3409 revision-id: marko.makela@oracle.com-20100421094032-ir4glqk46qvg2ywn parent: marko.makela@oracle.com-20100421091611-uu46iygmv5sizjru committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 12:40:32 +0300 message: Adjust tests for the Bug #50495 fix. modified: mysql-test/suite/innodb_plugin/r/innodb-zip.result 2252@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fmysql-test%2Finnodb-zip.result mysql-test/suite/innodb_plugin/t/innodb-zip.test 2252@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fmysql-test%2Finnodb-zip.test mysql-test/suite/innodb_plugin/t/innodb_bug36169.test 2418@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2Fmysql-test%2Finnodb_bug36169.test ------------------------------------------------------------ revno: 3408 revision-id: marko.makela@oracle.com-20100421091611-uu46iygmv5sizjru parent: marko.makela@oracle.com-20100421063916-h3gwjea7jzjilyww committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 12:16:11 +0300 message: rec_convert_dtuple_to_rec(): Correct the debug check. The "extern" accessor functions return zero or nonzero, not 0 or 1. modified: storage/innodb_plugin/rem/rem0rec.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Frem%2Frem0rec.c ------------------------------------------------------------ revno: 3407 revision-id: marko.makela@oracle.com-20100421063916-h3gwjea7jzjilyww parent: marko.makela@oracle.com-20100420201550-cax1xywvlcdshgfg committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-04-21 09:39:16 +0300 message: rec_convert_dtuple_to_rec(): Add a debug check. modified: storage/innodb_plugin/rem/rem0rec.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Frem%2Frem0rec.c ------------------------------------------------------------ revno: 3406 revision-id: marko.makela@oracle.com-20100420201550-cax1xywvlcdshgfg parent: marko.makela@oracle.com-20100420114222-diq7h2hiom9ww6me committer: Marko Makela <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-04-20 23:15:50 +0300 message: btr_cur_optimistic_insert(): Remove unused variable "heap". modified: storage/innodb_plugin/btr/btr0cur.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbtr%2Fbtr0cur.c ------------------------------------------------------------ revno: 3405 revision-id: marko.makela@oracle.com-20100420114222-diq7h2hiom9ww6me parent: marko.makela@oracle.com-20100420082908-tpako8jd4imkh1xb committer: Marko Makela <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-04-20 14:42:22 +0300 message: dict_create_index_step(): Invoke dict_index_add_to_cache() in strict mode only if innodb_strict_mode is set. (Bug #50495) trx_is_strict(): New function, for checking innodb_strict_mode. modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/dict/dict0crea.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fdict%2Fdict0crea.c storage/innodb_plugin/handler/ha_innodb.cc 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fhandler%2Fha_innodb.cc storage/innodb_plugin/include/trx0trx.h 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Ftrx0trx.h ------------------------------------------------------------ revno: 3404 revision-id: marko.makela@oracle.com-20100420082908-tpako8jd4imkh1xb parent: marko.makela@oracle.com-20100419103603-u5pz4qc6hfhx4nua committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-04-20 11:29:08 +0300 message: Implement UNIV_BTR_AVOID_COPY, an optimization of page splits. modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/btr/btr0btr.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbtr%2Fbtr0btr.c storage/innodb_plugin/include/univ.i 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Funiv.i ------------------------------------------------------------ revno: 3403 revision-id: marko.makela@oracle.com-20100419103603-u5pz4qc6hfhx4nua parent: marko.makela@oracle.com-20100419094405-fd3xwadullishv07 committer: Marko =?ISO-8859-1?Q?M=E4kel=E4?= <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Mon 2010-04-19 13:36:03 +0300 message: Enable UNIV_DEBUG_VALGRIND when HAVE_purify is set. modified: storage/innobase/include/univ.i 2@cee13dc7-1704-0410-992b-c9b4543f1246:trunk%2Finclude%2Funiv.i storage/innodb_plugin/include/univ.i 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Funiv.i
16 years ago
Fixes to tests and their results, to account for differences between InnoDB 1.0.4 and the old builtin. All committed result differences have either been verified by me or copied from Oracle's provided results (storage/innodb_plugin/mysql-test/*.result, storage/innodb_plugin/mysql-test/patches). mysql-test/r/information_schema.result: queries changed a bit mysql-test/r/information_schema_db.result: queries changed a bit mysql-test/r/innodb-autoinc.result: importing piece from storage/innodb_plugin/mysql-test/innodb-autoinc.result mysql-test/r/innodb.result: result close to storage/innodb_plugin/innodb.result, except 4095 pages instead of 8191, which makes sense as Summit runs with a buffer pool of 64M, whereas the mentioned result file was made with a buffer pool of 128M. mysql-test/r/mysqlshow.result: InnoDB I_S tables have arrived mysql-test/suite/funcs_1/r/is_columns_is.result: queries changed a bit mysql-test/suite/funcs_1/r/is_columns_is_embedded.result: queries changed a bit mysql-test/suite/funcs_1/r/is_tables_is.result: queries changed a bit mysql-test/suite/funcs_1/t/is_columns_is.test: making I_S queries ignore InnoDB I_S tables mysql-test/suite/funcs_1/t/is_columns_is_embedded.test: making I_S queries ignore InnoDB I_S tables mysql-test/suite/funcs_1/t/is_tables_is.test: making I_S queries ignore InnoDB I_S tables mysql-test/suite/innodb/r/innodb-zip.result: result update mysql-test/suite/innodb/t/innodb-zip.test: 439, as size of prefix key, throws error with certain system zlib (ubuntu "intrepid") but not with zlib bundled with MySQL, because zlib's compressBound() are different (and used by InnoDB's page_zip_empty_size()). mysql-test/suite/sys_vars/r/innodb_file_per_table_basic.result: result update mysql-test/suite/sys_vars/r/innodb_lock_wait_timeout_basic.result: result update mysql-test/suite/sys_vars/r/innodb_sync_spin_loops_basic_32.result: result update (default value is 30 in the plugin, 20 in the builtin) mysql-test/suite/sys_vars/r/innodb_sync_spin_loops_basic_64.result: result update (default value is 30 in the plugin, 20 in the builtin) mysql-test/suite/sys_vars/r/table_definition_cache_basic.result: result update (default value is 400 in Summit) mysql-test/suite/sys_vars/t/innodb_file_per_table_basic.test: variable is writable in the plugin (patch from Oracle) mysql-test/suite/sys_vars/t/innodb_lock_wait_timeout_basic.test: variable is per-session in the plugin (patch from Oracle) mysql-test/t/information_schema.test: making I_S queries ignore InnoDB I_S tables mysql-test/t/information_schema_db.test: making I_S queries ignore InnoDB I_S tables mysql-test/t/innodb-autoinc.test: importing piece from storage/innodb_plugin/mysql-test/innodb-autoinc.test mysql-test/t/innodb.test: importing most of storage/innodb_plugin/t/innodb.test. Most replace_result were not needed (no path printed), some where (for --embedded). mysql-test/t/mysqlshow.test: output of test now depends on InnoDB or not InnoDB. As there is no way to make mysqlshow produce a single output in those two cases (no way to make it exclude InnoDB I_S tables), let the test depend on InnoDB, it isn't a very selective condition, and the test is simple enough. storage/innobase/CMakeLists.txt: thanks Vlad for the noticing () vs {}
17 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
WL#4738 streamline/simplify @@variable creation process Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies CMakeLists.txt: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled client/mysql.cc: don't crash with --show-warnings when mysqld dies config/ac-macros/plugins.m4: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled include/my_getopt.h: comments include/my_pthread.h: fix double #define mysql-test/mysql-test-run.pl: run sys_vars suite by default properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0 escape gdb command line arguments mysql-test/suite/sys_vars/r/rpl_init_slave_func.result: init_slave+utf8 bug mysql-test/suite/sys_vars/t/rpl_init_slave_func.test: init_slave+utf8 bug mysys/my_getopt.c: Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) mysys/typelib.c: support for flagset sql/ha_ndbcluster.cc: backport from telco tree sql/item_func.cc: Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters sql/sql_builtin.cc.in: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled sql/sql_plugin.cc: Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#32902 plugin variables don't know their names Bug#44797 plugins w/o command-line options have no disabling option in --help sql/sys_vars.cc: all server variables are defined here storage/myisam/ft_parser.c: remove unnecessary updates of param->quot storage/myisam/ha_myisam.cc: myisam_* variables belong here strings/my_vsnprintf.c: %o and %llx unittest/mysys/my_vsnprintf-t.c: %o and %llx tests vio/viosocket.c: bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
16 years ago
  1. -- source include/have_innodb.inc
  2. let $per_table=`select @@innodb_file_per_table`;
  3. let $format=`select @@innodb_file_format`;
  4. let $innodb_strict_mode_orig=`select @@session.innodb_strict_mode`;
  5. set session innodb_strict_mode=0;
  6. set global innodb_file_per_table=off;
  7. set global innodb_file_format=`0`;
  8. create table t0(a int primary key) engine=innodb row_format=compressed;
  9. create table t00(a int primary key) engine=innodb
  10. key_block_size=4 row_format=compressed;
  11. create table t1(a int primary key) engine=innodb row_format=dynamic;
  12. create table t2(a int primary key) engine=innodb row_format=redundant;
  13. create table t3(a int primary key) engine=innodb row_format=compact;
  14. create table t4(a int primary key) engine=innodb key_block_size=9;
  15. create table t5(a int primary key) engine=innodb
  16. key_block_size=1 row_format=redundant;
  17. set global innodb_file_per_table=on;
  18. create table t6(a int primary key) engine=innodb
  19. key_block_size=1 row_format=redundant;
  20. set global innodb_file_format=`1`;
  21. create table t7(a int primary key) engine=innodb
  22. key_block_size=1 row_format=redundant;
  23. create table t8(a int primary key) engine=innodb
  24. key_block_size=1 row_format=fixed;
  25. create table t9(a int primary key) engine=innodb
  26. key_block_size=1 row_format=compact;
  27. create table t10(a int primary key) engine=innodb
  28. key_block_size=1 row_format=dynamic;
  29. create table t11(a int primary key) engine=innodb
  30. key_block_size=1 row_format=compressed;
  31. create table t12(a int primary key) engine=innodb
  32. key_block_size=1;
  33. create table t13(a int primary key) engine=innodb
  34. row_format=compressed;
  35. create table t14(a int primary key) engine=innodb key_block_size=9;
  36. SELECT table_schema, table_name, row_format, data_length, index_length
  37. FROM information_schema.tables WHERE engine='innodb';
  38. drop table t0,t00,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14;
  39. alter table t1 key_block_size=0;
  40. alter table t1 row_format=dynamic;
  41. SELECT table_schema, table_name, row_format, data_length, index_length
  42. FROM information_schema.tables WHERE engine='innodb';
  43. alter table t1 row_format=compact;
  44. SELECT table_schema, table_name, row_format, data_length, index_length
  45. FROM information_schema.tables WHERE engine='innodb';
  46. alter table t1 row_format=redundant;
  47. SELECT table_schema, table_name, row_format, data_length, index_length
  48. FROM information_schema.tables WHERE engine='innodb';
  49. drop table t1;
  50. create table t1(a int not null, b text, index(b(10))) engine=innodb
  51. key_block_size=1;
  52. create table t2(b text)engine=innodb;
  53. insert into t2 values(concat('1abcdefghijklmnopqrstuvwxyz', repeat('A',5000)));
  54. insert into t1 select 1, b from t2;
  55. commit;
  56. connect (a,localhost,root,,);
  57. connect (b,localhost,root,,);
  58. connection a;
  59. begin;
  60. update t1 set b=repeat('B',100);
  61. connection b;
  62. select a,left(b,40) from t1 natural join t2;
  63. connection a;
  64. rollback;
  65. connection b;
  66. select a,left(b,40) from t1 natural join t2;
  67. connection default;
  68. disconnect a;
  69. disconnect b;
  70. SELECT table_schema, table_name, row_format, data_length, index_length
  71. FROM information_schema.tables WHERE engine='innodb';
  72. drop table t1,t2;
  73. # The following should fail in non-strict mode too.
  74. # (The fix of Bug #50945 only affects REDUNDANT and COMPACT tables.)
  75. SET SESSION innodb_strict_mode = off;
  76. --error ER_TOO_BIG_ROWSIZE
  77. CREATE TABLE t1(
  78. c TEXT NOT NULL, d TEXT NOT NULL,
  79. PRIMARY KEY (c(767),d(767)))
  80. ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
  81. --error ER_TOO_BIG_ROWSIZE
  82. CREATE TABLE t1(
  83. c TEXT NOT NULL, d TEXT NOT NULL,
  84. PRIMARY KEY (c(767),d(767)))
  85. ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2 CHARSET=ASCII;
  86. CREATE TABLE t1(
  87. c TEXT NOT NULL, d TEXT NOT NULL,
  88. PRIMARY KEY (c(767),d(767)))
  89. ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4 CHARSET=ASCII;
  90. drop table t1;
  91. --error ER_TOO_BIG_ROWSIZE
  92. CREATE TABLE t1(c TEXT, PRIMARY KEY (c(440)))
  93. ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
  94. CREATE TABLE t1(c TEXT, PRIMARY KEY (c(438)))
  95. ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
  96. INSERT INTO t1 VALUES(REPEAT('A',512)),(REPEAT('B',512));
  97. DROP TABLE t1;
  98. #
  99. # Test blob column inheritance (mantis issue#36)
  100. #
  101. create table t1( c1 int not null, c2 blob, c3 blob, c4 blob,
  102. primary key(c1, c2(22), c3(22)))
  103. engine = innodb row_format = dynamic;
  104. begin;
  105. insert into t1 values(1, repeat('A', 20000), repeat('B', 20000),
  106. repeat('C', 20000));
  107. update t1 set c3 = repeat('D', 20000) where c1 = 1;
  108. commit;
  109. # one blob column which is unchanged in update and part of PK
  110. # one blob column which is changed and part of of PK
  111. # one blob column which is not part of PK and is unchanged
  112. select count(*) from t1 where c2 = repeat('A', 20000);
  113. select count(*) from t1 where c3 = repeat('D', 20000);
  114. select count(*) from t1 where c4 = repeat('C', 20000);
  115. update t1 set c3 = repeat('E', 20000) where c1 = 1;
  116. drop table t1;
  117. #
  118. #
  119. # Test innodb_file_format
  120. #
  121. set global innodb_file_format=`0`;
  122. select @@innodb_file_format;
  123. set global innodb_file_format=`1`;
  124. select @@innodb_file_format;
  125. -- error ER_WRONG_VALUE_FOR_VAR
  126. set global innodb_file_format=`2`;
  127. -- error ER_WRONG_VALUE_FOR_VAR
  128. set global innodb_file_format=`-1`;
  129. set global innodb_file_format=`Antelope`;
  130. set global innodb_file_format=`Barracuda`;
  131. -- error ER_WRONG_VALUE_FOR_VAR
  132. set global innodb_file_format=`Cheetah`;
  133. -- error ER_WRONG_VALUE_FOR_VAR
  134. set global innodb_file_format=`abc`;
  135. -- error ER_WRONG_VALUE_FOR_VAR
  136. set global innodb_file_format=`1a`;
  137. -- error ER_WRONG_VALUE_FOR_VAR
  138. set global innodb_file_format=``;
  139. #test strict mode.
  140. # this does not work anymore, has been removed from mysqltest
  141. # -- enable_errors
  142. set global innodb_file_per_table = on;
  143. set global innodb_file_format = `1`;
  144. set innodb_strict_mode = off;
  145. create table t1 (id int primary key) engine = innodb key_block_size = 0;
  146. drop table t1;
  147. #set strict_mode
  148. set innodb_strict_mode = on;
  149. #Test different values of KEY_BLOCK_SIZE
  150. create table t1 (id int primary key) engine = innodb key_block_size = 0;
  151. --error ER_CANT_CREATE_TABLE
  152. create table t2 (id int primary key) engine = innodb key_block_size = 9;
  153. show warnings;
  154. create table t3 (id int primary key) engine = innodb key_block_size = 1;
  155. create table t4 (id int primary key) engine = innodb key_block_size = 2;
  156. create table t5 (id int primary key) engine = innodb key_block_size = 4;
  157. create table t6 (id int primary key) engine = innodb key_block_size = 8;
  158. create table t7 (id int primary key) engine = innodb key_block_size = 16;
  159. #check various ROW_FORMAT values.
  160. create table t8 (id int primary key) engine = innodb row_format = compressed;
  161. create table t9 (id int primary key) engine = innodb row_format = dynamic;
  162. create table t10(id int primary key) engine = innodb row_format = compact;
  163. create table t11(id int primary key) engine = innodb row_format = redundant;
  164. SELECT table_schema, table_name, row_format, data_length, index_length
  165. FROM information_schema.tables WHERE engine='innodb';
  166. drop table t1, t3, t4, t5, t6, t7, t8, t9, t10, t11;
  167. #test different values of ROW_FORMAT with KEY_BLOCK_SIZE
  168. create table t1 (id int primary key) engine = innodb
  169. key_block_size = 8 row_format = compressed;
  170. --error ER_CANT_CREATE_TABLE
  171. create table t2 (id int primary key) engine = innodb
  172. key_block_size = 8 row_format = redundant;
  173. show warnings;
  174. --error ER_CANT_CREATE_TABLE
  175. create table t3 (id int primary key) engine = innodb
  176. key_block_size = 8 row_format = compact;
  177. show warnings;
  178. --error ER_CANT_CREATE_TABLE
  179. create table t4 (id int primary key) engine = innodb
  180. key_block_size = 8 row_format = dynamic;
  181. show warnings;
  182. create table t5 (id int primary key) engine = innodb
  183. key_block_size = 8 row_format = default;
  184. SELECT table_schema, table_name, row_format, data_length, index_length
  185. FROM information_schema.tables WHERE engine='innodb';
  186. drop table t1, t5;
  187. #test multiple errors
  188. --error ER_CANT_CREATE_TABLE
  189. create table t1 (id int primary key) engine = innodb
  190. key_block_size = 9 row_format = redundant;
  191. show warnings;
  192. --error ER_CANT_CREATE_TABLE
  193. create table t2 (id int primary key) engine = innodb
  194. key_block_size = 9 row_format = compact;
  195. show warnings;
  196. --error ER_CANT_CREATE_TABLE
  197. create table t2 (id int primary key) engine = innodb
  198. key_block_size = 9 row_format = dynamic;
  199. show warnings;
  200. SELECT table_schema, table_name, row_format, data_length, index_length
  201. FROM information_schema.tables WHERE engine='innodb';
  202. #test valid values with innodb_file_per_table unset
  203. set global innodb_file_per_table = off;
  204. --error ER_CANT_CREATE_TABLE
  205. create table t1 (id int primary key) engine = innodb key_block_size = 1;
  206. show warnings;
  207. --error ER_CANT_CREATE_TABLE
  208. create table t2 (id int primary key) engine = innodb key_block_size = 2;
  209. show warnings;
  210. --error ER_CANT_CREATE_TABLE
  211. create table t3 (id int primary key) engine = innodb key_block_size = 4;
  212. show warnings;
  213. --error ER_CANT_CREATE_TABLE
  214. create table t4 (id int primary key) engine = innodb key_block_size = 8;
  215. show warnings;
  216. --error ER_CANT_CREATE_TABLE
  217. create table t5 (id int primary key) engine = innodb key_block_size = 16;
  218. show warnings;
  219. --error ER_CANT_CREATE_TABLE
  220. create table t6 (id int primary key) engine = innodb row_format = compressed;
  221. show warnings;
  222. --error ER_CANT_CREATE_TABLE
  223. create table t7 (id int primary key) engine = innodb row_format = dynamic;
  224. show warnings;
  225. create table t8 (id int primary key) engine = innodb row_format = compact;
  226. create table t9 (id int primary key) engine = innodb row_format = redundant;
  227. SELECT table_schema, table_name, row_format, data_length, index_length
  228. FROM information_schema.tables WHERE engine='innodb';
  229. drop table t8, t9;
  230. #test valid values with innodb_file_format unset
  231. set global innodb_file_per_table = on;
  232. set global innodb_file_format = `0`;
  233. --error ER_CANT_CREATE_TABLE
  234. create table t1 (id int primary key) engine = innodb key_block_size = 1;
  235. show warnings;
  236. --error ER_CANT_CREATE_TABLE
  237. create table t2 (id int primary key) engine = innodb key_block_size = 2;
  238. show warnings;
  239. --error ER_CANT_CREATE_TABLE
  240. create table t3 (id int primary key) engine = innodb key_block_size = 4;
  241. show warnings;
  242. --error ER_CANT_CREATE_TABLE
  243. create table t4 (id int primary key) engine = innodb key_block_size = 8;
  244. show warnings;
  245. --error ER_CANT_CREATE_TABLE
  246. create table t5 (id int primary key) engine = innodb key_block_size = 16;
  247. show warnings;
  248. --error ER_CANT_CREATE_TABLE
  249. create table t6 (id int primary key) engine = innodb row_format = compressed;
  250. show warnings;
  251. --error ER_CANT_CREATE_TABLE
  252. create table t7 (id int primary key) engine = innodb row_format = dynamic;
  253. show warnings;
  254. create table t8 (id int primary key) engine = innodb row_format = compact;
  255. create table t9 (id int primary key) engine = innodb row_format = redundant;
  256. SELECT table_schema, table_name, row_format, data_length, index_length
  257. FROM information_schema.tables WHERE engine='innodb';
  258. drop table t8, t9;
  259. eval set global innodb_file_per_table=$per_table;
  260. eval set global innodb_file_format=$format;
  261. #
  262. # Testing of tablespace tagging
  263. #
  264. -- disable_info
  265. set global innodb_file_per_table=on;
  266. set global innodb_file_format=`Barracuda`;
  267. set global innodb_file_format_max=`Antelope`;
  268. create table normal_table (
  269. c1 int
  270. ) engine = innodb;
  271. select @@innodb_file_format_max;
  272. create table zip_table (
  273. c1 int
  274. ) engine = innodb key_block_size = 8;
  275. select @@innodb_file_format_max;
  276. set global innodb_file_format_max=`Antelope`;
  277. select @@innodb_file_format_max;
  278. -- disable_result_log
  279. show table status;
  280. -- enable_result_log
  281. select @@innodb_file_format_max;
  282. drop table normal_table, zip_table;
  283. -- disable_result_log
  284. #
  285. # restore environment to the state it was before this test execution
  286. #
  287. -- disable_query_log
  288. eval set global innodb_file_format=$format;
  289. eval set global innodb_file_per_table=$per_table;
  290. eval set session innodb_strict_mode=$innodb_strict_mode_orig;