1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

MDEV-19713 Remove big_tables system variable

mark big_tables deprecated, the server can put temp tables on disk
as needed avoiding "table full" errors.

in case someone would really need to force a tmp table to be created
on disk from the start and for testing allow tmp_memory_table_size
to be set to 0.

fix tests to use that instead (and add a test that it actually
works).

make sure in-memory TREE size limit is never 0 (it's [ab]using
tmp_memory_table_size at the moment)

remove few sys_vars.*_basic tests
This commit is contained in:
Sergei Golubchik
2019-09-18 14:17:26 +02:00
parent de9ef03ae6
commit cd41ffe1f1
47 changed files with 453 additions and 1155 deletions

View File

@@ -4,16 +4,24 @@ SELECT @start_value;
0
'#--------------------FN_DYNVARS_005_01------------------------#'
SET @@big_tables = 1;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SET @@big_tables = DEFAULT;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
0
'#--------------------FN_DYNVARS_005_02------------------------#'
SET @@big_tables = 0;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
0
SET @@big_tables = 1;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
1
@@ -44,10 +52,14 @@ SET @@big_tables = '';
ERROR 42000: Variable 'big_tables' can't be set to the value of ''
'#-------------------FN_DYNVARS_005_04----------------------------#'
SET @@global.big_tables = 1-@@global.big_tables;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@global.big_tables;
@@global.big_tables
1
SET @@global.big_tables = 1-@@global.big_tables;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
'#----------------------FN_DYNVARS_005_05------------------------#'
SELECT IF(@@big_tables, "ON", "OFF") = VARIABLE_VALUE
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
@@ -56,33 +68,47 @@ IF(@@big_tables, "ON", "OFF") = VARIABLE_VALUE
1
'#---------------------FN_DYNVARS_005_06----------------------#'
SET @@big_tables = OFF;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
0
SET @@big_tables = ON;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
1
'#---------------------FN_DYNVARS_005_07----------------------#'
SET @@big_tables = TRUE;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
1
SET @@big_tables = FALSE;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
0
'#---------------------FN_DYNVARS_005_08----------------------#'
SET @@big_tables = 0;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables = @@session.big_tables;
@@big_tables = @@session.big_tables
1
SET @@big_tables = 1;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables = @@local.big_tables and @@local.big_tables = @@session.big_tables;
@@big_tables = @@local.big_tables and @@local.big_tables = @@session.big_tables
1
'#---------------------FN_DYNVARS_005_09----------------------#'
SET big_tables = 1;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
1
@@ -93,6 +119,8 @@ ERROR 42S02: Unknown table 'session' in field list
select big_tables;
ERROR 42S22: Unknown column 'big_tables' in 'field list'
SET @@big_tables = @start_value;
Warnings:
Warning 1287 '@@big_tables' is deprecated and will be removed in a future release
SELECT @@big_tables;
@@big_tables
0