mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-17475: Increase maximum possible value for table_definition_cache to match table_open_cache
Allow table definition cache be bigger than open table cache (due to problem with VIEWs and prepared statements).
This commit is contained in:
@ -28,14 +28,14 @@ Warning 1292 Truncated incorrect table_definition_cache value: '2'
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
400
|
||||
SET @@global.table_definition_cache = 524287;
|
||||
SET @@global.table_definition_cache = 2097151;
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
524287
|
||||
SET @@global.table_definition_cache = 524288;
|
||||
2097151
|
||||
SET @@global.table_definition_cache = 2097152;
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
524288
|
||||
2097152
|
||||
'#--------------------FN_DYNVARS_019_04-------------------------#'
|
||||
SET @@global.table_definition_cache = 0;
|
||||
Warnings:
|
||||
@ -49,18 +49,18 @@ Warning 1292 Truncated incorrect table_definition_cache value: '-1024'
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
400
|
||||
SET @@global.table_definition_cache = 524289;
|
||||
SET @@global.table_definition_cache = 2097153;
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect table_definition_cache value: '524289'
|
||||
Warning 1292 Truncated incorrect table_definition_cache value: '2097153'
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
524288
|
||||
2097152
|
||||
SET @@global.table_definition_cache = 42949672950;
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect table_definition_cache value: '42949672950'
|
||||
SELECT @@global.table_definition_cache;
|
||||
@@global.table_definition_cache
|
||||
524288
|
||||
2097152
|
||||
SET @@global.table_definition_cache = 21221204.10;
|
||||
ERROR 42000: Incorrect argument type to variable 'table_definition_cache'
|
||||
SET @@global.table_definition_cache = ON;
|
||||
|
@ -64,9 +64,9 @@ SET @@global.table_definition_cache = 1;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = 2;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = 524287;
|
||||
SET @@global.table_definition_cache = 2097151;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = 524288;
|
||||
SET @@global.table_definition_cache = 2097152;
|
||||
SELECT @@global.table_definition_cache;
|
||||
|
||||
|
||||
@ -79,7 +79,7 @@ SET @@global.table_definition_cache = 0;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = -1024;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = 524289;
|
||||
SET @@global.table_definition_cache = 2097153;
|
||||
SELECT @@global.table_definition_cache;
|
||||
SET @@global.table_definition_cache = 42949672950;
|
||||
SELECT @@global.table_definition_cache;
|
||||
|
@ -3039,11 +3039,15 @@ static Sys_var_charptr Sys_system_time_zone(
|
||||
NO_CMD_LINE,
|
||||
IN_SYSTEM_CHARSET, DEFAULT(system_time_zone));
|
||||
|
||||
/*
|
||||
If One use views with prepared statements this should be bigger than
|
||||
table_open_cache (now we allow 2 times bigger value)
|
||||
*/
|
||||
static Sys_var_ulong Sys_table_def_size(
|
||||
"table_definition_cache",
|
||||
"The number of cached table definitions",
|
||||
GLOBAL_VAR(tdc_size), CMD_LINE(REQUIRED_ARG),
|
||||
VALID_RANGE(TABLE_DEF_CACHE_MIN, 512*1024),
|
||||
VALID_RANGE(TABLE_DEF_CACHE_MIN, 2*1024*1024),
|
||||
DEFAULT(TABLE_DEF_CACHE_DEFAULT), BLOCK_SIZE(1));
|
||||
|
||||
|
||||
@ -3055,7 +3059,7 @@ static bool fix_table_open_cache(sys_var *, THD *, enum_var_type)
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/* Check the table_definition_cache comment if makes changes */
|
||||
static Sys_var_ulong Sys_table_cache_size(
|
||||
"table_open_cache", "The number of cached open tables",
|
||||
GLOBAL_VAR(tc_size), CMD_LINE(REQUIRED_ARG),
|
||||
|
Reference in New Issue
Block a user