3889 Dmitry Lenev 2012-05-03
WL#5772 "Add partitioned Table Definition Cache to avoid
using LOCK_open and its derivatives in DML queries".
Review changes #1:
- polish test case for table-open-cache-instances variable.
- update results for mysqld--help-*.test
modified:
mysql-test/r/mysqld--help-notwin.result
mysql-test/r/mysqld--help-win.result
mysql-test/suite/sys_vars/r/table_open_cache_instances_basic.result
mysql-test/suite/sys_vars/t/table_open_cache_instances_basic.test
3888 Mikael Ronstrom 2012-04-27 [merge]
merge
removed:
mysql-test/suite/sys_vars/r/innodb_analyze_is_persistent_basic.result
mysql-test/suite/sys_vars/t/innodb_analyze_is_persistent_basic.test
added:
mysql-test/lib/My/Memcache.pm
mysql-test/r/func_group_innodb_16k.result
mysql-test/suite/innodb/include/innodb_dict.inc
mysql-test/suite/innodb/include/innodb_stats_table_flag.inc
mysql-test/suite/innodb/include/innodb_stats_table_flag_analyze.inc
mysql-test/suite/innodb/r/innodb-alter-debug.result
mysql-test/suite/innodb/r/innodb-alter.result
mysql-test/suite/innodb/r/innodb_bug13867871.result
mysql-test/suite/innodb/r/innodb_stats_create_on_corrupted.result
mysql-test/suite/innodb/r/innodb_stats_create_table.result
mysql-test/suite/innodb/r/innodb_stats_fetch.result
mysql-test/suite/innodb/r/innodb_stats_fetch_corrupted.result
mysql-test/suite/innodb/r/innodb_stats_fetch_nonexistent.result
mysql-test/suite/innodb/r/innodb_stats_flag_global_off.result
mysql-test/suite/innodb/r/innodb_stats_flag_global_on.result
mysql-test/suite/innodb/r/innodb_upd_stats_if_needed_not_inited.result
mysql-test/suite/innodb/r/innodb_ut_format_name.result
mysql-test/suite/innodb/t/innodb-alter-debug.test
mysql-test/suite/innodb/t/innodb-alter.test
mysql-test/suite/innodb/t/innodb_bug13867871.test
mysql-test/suite/innodb/t/innodb_stats_create_on_corrupted.test
mysql-test/suite/innodb/t/innodb_stats_create_table.test
mysql-test/suite/innodb/t/innodb_stats_fetch.test
mysql-test/suite/innodb/t/innodb_stats_fetch_corrupted.test
mysql-test/suite/innodb/t/innodb_stats_fetch_nonexistent.test
mysql-test/suite/innodb/t/innodb_stats_flag_global_off-master.opt
mysql-test/suite/innodb/t/innodb_stats_flag_global_off.test
mysql-test/suite/innodb/t/innodb_stats_flag_global_on-master.opt
mysql-test/suite/innodb/t/innodb_stats_flag_global_on.test
mysql-test/suite/innodb/t/innodb_upd_stats_if_needed_not_inited.test
mysql-test/suite/innodb/t/innodb_ut_format_name.test
mysql-test/suite/rpl/r/rpl_auto_increment_bug45679.result
mysql-test/suite/rpl/r/rpl_parallel_show_binlog_events_purge_logs.result
mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test
mysql-test/suite/rpl/t/rpl_parallel_show_binlog_events_purge_logs.test
mysql-test/suite/rpl/t/rpl_report_port-master.opt
mysql-test/suite/sys_vars/r/innodb_stats_persistent_basic.result
mysql-test/suite/sys_vars/t/innodb_stats_persistent_basic.test
mysql-test/t/func_group_innodb_16k.test
storage/innobase/include/dict0stats.ic
modified:
configure.cmake
include/my_base.h
mysql-test/collections/default.experimental
mysql-test/extra/rpl_tests/rpl_loaddata.test
mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test
mysql-test/include/handler.inc
mysql-test/include/subquery.inc
mysql-test/lib/My/ConfigFactory.pm
mysql-test/lib/mtr_cases.pm
mysql-test/mysql-test-run.pl
mysql-test/r/alter_table.result
mysql-test/r/archive.result
mysql-test/r/bug12427262.result
mysql-test/r/cast.result
mysql-test/r/ctype_utf8mb4.result
mysql-test/r/explain.result
mysql-test/r/fulltext.result
mysql-test/r/func_time.result
mysql-test/r/get_diagnostics.result
mysql-test/r/group_by.result
mysql-test/r/handler_innodb.result
mysql-test/r/handler_myisam.result
mysql-test/r/information_schema.result
mysql-test/r/innodb_explain_json_non_select_all.result
mysql-test/r/innodb_explain_json_non_select_none.result
mysql-test/r/innodb_explain_non_select_all.result
mysql-test/r/innodb_explain_non_select_none.result
mysql-test/r/myisam_explain_json_non_select_all.result
mysql-test/r/myisam_explain_json_non_select_none.result
mysql-test/r/myisam_explain_non_select_all.result
mysql-test/r/myisam_explain_non_select_none.result
mysql-test/r/olap.result
mysql-test/r/partition_error.result
mysql-test/r/partition_exchange.result
mysql-test/r/read_only_innodb.result
mysql-test/r/sp-destruct.result
mysql-test/r/subquery_all.result
mysql-test/r/subquery_all_bka.result
mysql-test/r/subquery_all_bka_nixbnl.result
mysql-test/r/subquery_nomat_nosj.result
mysql-test/r/subquery_nomat_nosj_bka.result
mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result
mysql-test/r/subquery_none.result
mysql-test/r/subquery_none_bka.result
mysql-test/r/subquery_none_bka_nixbnl.result
mysql-test/r/type_time.result
mysql-test/r/variables.result
mysql-test/suite/binlog/r/binlog_rewrite.result
mysql-test/suite/innodb/include/innodb_stats.inc
mysql-test/suite/innodb/r/innodb-index-online.result
mysql-test/suite/innodb/r/innodb-index.result
mysql-test/suite/innodb/r/innodb_bug11933790.result
mysql-test/suite/innodb/r/innodb_bug12429573.result
mysql-test/suite/innodb/r/innodb_bug21704.result
mysql-test/suite/innodb/r/innodb_stats.result
mysql-test/suite/innodb/r/innodb_stats_drop_locked.result
mysql-test/suite/innodb/t/innodb-blob.test
mysql-test/suite/innodb/t/innodb-index-online.test
mysql-test/suite/innodb/t/innodb-index.test
mysql-test/suite/innodb/t/innodb_bug11933790.test
mysql-test/suite/innodb/t/innodb_bug12429573.test
mysql-test/suite/innodb/t/innodb_bug21704.test
mysql-test/suite/innodb/t/innodb_stats.test
mysql-test/suite/innodb/t/innodb_stats_drop_locked.test
mysql-test/suite/innodb_fts/r/innodb_fts_misc.result
mysql-test/suite/innodb_fts/t/innodb_fts_misc.test
mysql-test/suite/perfschema/r/digest_table_full.result
mysql-test/suite/perfschema/r/statement_digest.result
mysql-test/suite/perfschema/r/statement_digest_consumers.result
mysql-test/suite/perfschema/r/statement_digest_long_query.result
mysql-test/suite/rpl/r/rpl_alter_repository.result
mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result
mysql-test/suite/rpl/r/rpl_loaddata.result
mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
mysql-test/suite/rpl/r/rpl_parallel_start_stop.result
mysql-test/suite/rpl/r/rpl_report_port.result
mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
mysql-test/suite/rpl/r/rpl_stm_EE_err2.result
mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
mysql-test/suite/rpl/r/rpl_stm_loaddata_concurrent.result
mysql-test/suite/rpl/t/rpl_alter_repository.test
mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test
mysql-test/suite/rpl/t/rpl_parallel_change_master.test
mysql-test/suite/rpl/t/rpl_parallel_start_stop.test
mysql-test/suite/rpl/t/rpl_report_port.test
mysql-test/suite/sys_vars/r/max_binlog_cache_size_basic.result
mysql-test/suite/sys_vars/r/max_binlog_stmt_cache_size_basic.result
mysql-test/t/archive.test
mysql-test/t/bug12427262.test
mysql-test/t/cast.test
mysql-test/t/ctype_utf8mb4.test
mysql-test/t/fulltext.test
mysql-test/t/func_time.test
mysql-test/t/group_by.test
mysql-test/t/handler_myisam.test
mysql-test/t/information_schema.test
mysql-test/t/olap.test
scripts/mysql_system_tables.sql
sql/binlog.cc
sql/field.h
sql/handler.h
sql/item.h
sql/item_buff.cc
sql/item_cmpfunc.h
sql/item_func.h
sql/item_timefunc.cc
sql/lex.h
sql/log_event.cc
sql/log_event.h
sql/opt_range.cc
sql/opt_sum.cc
sql/rpl_rli.cc
sql/rpl_rli.h
sql/rpl_rli_pdb.cc
sql/rpl_slave.cc
sql/rpl_utility.cc
sql/rpl_utility.h
sql/share/errmsg-utf8.txt
sql/sql_base.cc
sql/sql_class.cc
sql/sql_class.h
sql/sql_handler.cc
sql/sql_lex.cc
sql/sql_lex.h
sql/sql_parse.cc
sql/sql_show.cc
sql/sql_table.cc
sql/sql_yacc.yy
storage/archive/ha_archive.cc
storage/innobase/api/api0api.cc
storage/innobase/btr/btr0cur.cc
storage/innobase/buf/buf0flu.cc
storage/innobase/dict/dict0dict.cc
storage/innobase/dict/dict0load.cc
storage/innobase/dict/dict0mem.cc
storage/innobase/dict/dict0stats.cc
storage/innobase/fil/fil0fil.cc
storage/innobase/fts/fts0ast.cc
storage/innobase/fts/fts0fts.cc
storage/innobase/fts/fts0opt.cc
storage/innobase/fts/fts0que.cc
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/ha_innodb.h
storage/innobase/handler/handler0alter.cc
storage/innobase/handler/i_s.cc
storage/innobase/include/dict0dict.h
storage/innobase/include/dict0dict.ic
storage/innobase/include/dict0mem.h
storage/innobase/include/dict0stats.h
storage/innobase/include/fts0ast.h
storage/innobase/include/fts0priv.h
storage/innobase/include/read0read.h
storage/innobase/include/read0read.ic
storage/innobase/include/row0merge.h
storage/innobase/include/row0upd.ic
storage/innobase/include/srv0srv.h
storage/innobase/include/ut0ut.h
storage/innobase/pars/pars0pars.cc
storage/innobase/read/read0read.cc
storage/innobase/row/row0ftsort.cc
storage/innobase/row/row0ins.cc
storage/innobase/row/row0log.cc
storage/innobase/row/row0merge.cc
storage/innobase/row/row0mysql.cc
storage/innobase/row/row0sel.cc
storage/innobase/row/row0upd.cc
storage/innobase/srv/srv0srv.cc
storage/innobase/srv/srv0start.cc
storage/innobase/trx/trx0trx.cc
storage/innobase/ut/ut0ut.cc
unittest/gunit/stdcxx-t.cc
=== modified file 'mysql-test/r/mysqld--help-notwin.result'
--- a/mysql-test/r/mysqld--help-notwin.result 2012-03-21 21:19:11 +0000
+++ b/mysql-test/r/mysqld--help-notwin.result 2012-05-03 10:22:18 +0000
@@ -853,6 +853,8 @@ The following options may be given as th
The number of cached table definitions
--table-open-cache=#
The number of cached open tables
+ --table-open-cache-instances=#
+ The number of table cache instances
--tc-heuristic-recover=name
Decision to use in heuristic recover process. Possible
values are COMMIT or ROLLBACK.
@@ -1155,6 +1157,7 @@ sysdate-is-now FALSE
table-cache 400
table-definition-cache 400
table-open-cache 400
+table-open-cache-instances 1
tc-heuristic-recover COMMIT
thread-cache-size 0
thread-handling one-thread-per-connection
=== modified file 'mysql-test/r/mysqld--help-win.result'
--- a/mysql-test/r/mysqld--help-win.result 2012-03-21 21:19:11 +0000
+++ b/mysql-test/r/mysqld--help-win.result 2012-05-03 10:22:18 +0000
@@ -861,6 +861,8 @@ The following options may be given as th
The number of cached table definitions
--table-open-cache=#
The number of cached open tables
+ --table-open-cache-instances=#
+ The number of table cache instances
--tc-heuristic-recover=name
Decision to use in heuristic recover process. Possible
values are COMMIT or ROLLBACK.
@@ -1166,6 +1168,7 @@ sysdate-is-now FALSE
table-cache 400
table-definition-cache 400
table-open-cache 400
+table-open-cache-instances 1
tc-heuristic-recover COMMIT
thread-cache-size 0
thread-handling one-thread-per-connection
=== modified file 'mysql-test/suite/sys_vars/r/table_open_cache_instances_basic.result'
--- a/mysql-test/suite/sys_vars/r/table_open_cache_instances_basic.result 2012-04-25 07:15:04 +0000
+++ b/mysql-test/suite/sys_vars/r/table_open_cache_instances_basic.result 2012-05-03 10:22:18 +0000
@@ -1,50 +1,51 @@
-'#---------------------BS_STVARS_004_01----------------------#'
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
-COUNT(@@GLOBAL.table_open_cache_instances)
-1
-1 Expected
-'#---------------------BS_STVARS_004_02----------------------#'
+####################################################################
+# Displaying default value #
+####################################################################
+SELECT @@GLOBAL.table_open_cache_instances;
+@@GLOBAL.table_open_cache_instances
+1
+####################################################################
+# Check that value cannot be set (this variable is settable only #
+# at start-up). #
+####################################################################
SET @@GLOBAL.table_open_cache_instances=1;
ERROR HY000: Variable 'table_open_cache_instances' is a read only variable
-Expected error 'Read only variable'
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
-COUNT(@@GLOBAL.table_open_cache_instances)
+SELECT @@GLOBAL.table_open_cache_instances;
+@@GLOBAL.table_open_cache_instances
1
-1 Expected
-'#---------------------BS_STVARS_004_03----------------------#'
+#################################################################
+# Check if the value in GLOBAL Table matches value in variable #
+#################################################################
SELECT @@GLOBAL.table_open_cache_instances = VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME='table_open_cache_instances';
@@GLOBAL.table_open_cache_instances = VARIABLE_VALUE
1
-1 Expected
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
-COUNT(@@GLOBAL.table_open_cache_instances)
+SELECT @@GLOBAL.table_open_cache_instances;
+@@GLOBAL.table_open_cache_instances
1
-1 Expected
-SELECT COUNT(VARIABLE_VALUE)
+SELECT VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME='table_open_cache_instances';
-COUNT(VARIABLE_VALUE)
+VARIABLE_VALUE
1
-1 Expected
-'#---------------------BS_STVARS_004_04----------------------#'
+######################################################################
+# Check if accessing variable with and without GLOBAL point to same #
+# variable #
+######################################################################
SELECT @@table_open_cache_instances = @@GLOBAL.table_open_cache_instances;
@@table_open_cache_instances = @@GLOBAL.table_open_cache_instances
1
-1 Expected
-'#---------------------BS_STVARS_004_05----------------------#'
-SELECT COUNT(@@table_open_cache_instances);
-COUNT(@@table_open_cache_instances)
+######################################################################
+# Check if variable has only the GLOBAL scope #
+######################################################################
+SELECT @@table_open_cache_instances;
+@@table_open_cache_instances
+1
+SELECT @@GLOBAL.table_open_cache_instances;
+@@GLOBAL.table_open_cache_instances
1
-1 Expected
-SELECT COUNT(@@local.table_open_cache_instances);
+SELECT @@local.table_open_cache_instances;
ERROR HY000: Variable 'table_open_cache_instances' is a GLOBAL variable
-Expected error 'Variable is a GLOBAL variable'
-SELECT COUNT(@@SESSION.table_open_cache_instances);
+SELECT @@SESSION.table_open_cache_instances;
ERROR HY000: Variable 'table_open_cache_instances' is a GLOBAL variable
-Expected error 'Variable is a GLOBAL variable'
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
-COUNT(@@GLOBAL.table_open_cache_instances)
-1
-1 Expected
=== modified file 'mysql-test/suite/sys_vars/t/table_open_cache_instances_basic.test'
--- a/mysql-test/suite/sys_vars/t/table_open_cache_instances_basic.test 2012-04-25 07:15:04 +0000
+++ b/mysql-test/suite/sys_vars/t/table_open_cache_instances_basic.test 2012-05-03 10:22:18 +0000
@@ -1,95 +1,73 @@
-
-
######### mysql-test\t\table_open_cache_instances_basic.test ##################
# #
# Variable Name: table_open_cache_instances #
# Scope: Global #
# Access Type: Static #
-# Data Type: filename #
+# Data Type: Integer #
# #
# #
# Creation Date: 2012-04-25 #
# Author : Mikael Ronstrom #
# #
# #
-#
-# Description:Test Cases of Static System Variable table_open_cache_instances#
-# that checks the behavior of this variable in the following ways #
-# * Value Check #
-# * Scope Check #
# #
-# Reference: http://dev.mysql.com/doc/refman/6.0/en/ #
-# server-system-variables.html #
+# Description: #
+# Test case for static system variable table_open_cache_instances, #
+# Checks the behavior of this variable in the following ways: #
+# * Value Check #
+# * Scope Check #
+# #
# #
###############################################################################
---echo '#---------------------BS_STVARS_004_01----------------------#'
-####################################################################
-# Displaying default value #
-####################################################################
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
---echo 1 Expected
+--echo ####################################################################
+--echo # Displaying default value #
+--echo ####################################################################
+SELECT @@GLOBAL.table_open_cache_instances;
---echo '#---------------------BS_STVARS_004_02----------------------#'
-####################################################################
-# Check if Value can set #
-####################################################################
+--echo ####################################################################
+--echo # Check that value cannot be set (this variable is settable only #
+--echo # at start-up). #
+--echo ####################################################################
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
SET @@GLOBAL.table_open_cache_instances=1;
---echo Expected error 'Read only variable'
-
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
---echo 1 Expected
-
+SELECT @@GLOBAL.table_open_cache_instances;
---echo '#---------------------BS_STVARS_004_03----------------------#'
-#################################################################
-# Check if the value in GLOBAL Table matches value in variable #
-#################################################################
-
+--echo #################################################################
+--echo # Check if the value in GLOBAL Table matches value in variable #
+--echo #################################################################
SELECT @@GLOBAL.table_open_cache_instances = VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME='table_open_cache_instances';
---echo 1 Expected
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
---echo 1 Expected
+SELECT @@GLOBAL.table_open_cache_instances;
-SELECT COUNT(VARIABLE_VALUE)
+SELECT VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME='table_open_cache_instances';
---echo 1 Expected
-
---echo '#---------------------BS_STVARS_004_04----------------------#'
-################################################################################
-# Check if accessing variable with and without GLOBAL point to same variable #
-################################################################################
+--echo ######################################################################
+--echo # Check if accessing variable with and without GLOBAL point to same #
+--echo # variable #
+--echo ######################################################################
SELECT @@table_open_cache_instances = @@GLOBAL.table_open_cache_instances;
---echo 1 Expected
-
---echo '#---------------------BS_STVARS_004_05----------------------#'
-################################################################################
-# Check if server_uuid can be accessed with and without @@ sign #
-################################################################################
+--echo ######################################################################
+--echo # Check if variable has only the GLOBAL scope #
+--echo ######################################################################
-SELECT COUNT(@@table_open_cache_instances);
---echo 1 Expected
+SELECT @@table_open_cache_instances;
---Error ER_INCORRECT_GLOBAL_LOCAL_VAR
-SELECT COUNT(@@local.table_open_cache_instances);
---echo Expected error 'Variable is a GLOBAL variable'
+SELECT @@GLOBAL.table_open_cache_instances;
---Error ER_INCORRECT_GLOBAL_LOCAL_VAR
-SELECT COUNT(@@SESSION.table_open_cache_instances);
---echo Expected error 'Variable is a GLOBAL variable'
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@local.table_open_cache_instances;
-SELECT COUNT(@@GLOBAL.table_open_cache_instances);
---echo 1 Expected
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@SESSION.table_open_cache_instances;
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (Dmitry.Lenev:3888 to 3889) WL#5772 | Dmitry Lenev | 3 May |