From c7daabdb0579531a22c24697f9efbe2ea2759435 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 16 Mar 2020 10:10:11 +0200 Subject: [PATCH] MDEV-13134/MDEV-21855: Add a test case --- .../sys_vars/r/alter_algorithm_basic.result | 89 +++++++++++++++++++ .../sys_vars/t/alter_algorithm_basic.test | 58 ++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 mysql-test/suite/sys_vars/r/alter_algorithm_basic.result create mode 100644 mysql-test/suite/sys_vars/t/alter_algorithm_basic.test diff --git a/mysql-test/suite/sys_vars/r/alter_algorithm_basic.result b/mysql-test/suite/sys_vars/r/alter_algorithm_basic.result new file mode 100644 index 00000000000..39cfad4d35c --- /dev/null +++ b/mysql-test/suite/sys_vars/r/alter_algorithm_basic.result @@ -0,0 +1,89 @@ +SET @start_global_value = @@global.alter_algorithm; +SET GLOBAL alter_algorithm=1.1; +ERROR 42000: Incorrect argument type to variable 'alter_algorithm' +SET GLOBAL alter_algorithm=-1; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of '-1' +SET GLOBAL alter_algorithm=weird; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of 'weird' +SET GLOBAL alter_algorithm=4; +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +INSTANT +SET GLOBAL alter_algorithm=3; +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +NOCOPY +SET GLOBAL alter_algorithm=0; +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +DEFAULT +SET GLOBAL alter_algorithm=1; +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +COPY +SET GLOBAL alter_algorithm=2; +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +INPLACE +SET GLOBAL alter_algorithm=5; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of '5' +SELECT @@global.alter_algorithm; +@@global.alter_algorithm +INPLACE +SET GLOBAL alter_algorithm=NOCOPY; +SET alter_algorithm=1.1; +ERROR 42000: Incorrect argument type to variable 'alter_algorithm' +SET alter_algorithm=-1; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of '-1' +SET alter_algorithm=weird; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of 'weird' +SET alter_algorithm=4; +SELECT @@alter_algorithm; +@@alter_algorithm +INSTANT +SET alter_algorithm=3; +SELECT @@alter_algorithm; +@@alter_algorithm +NOCOPY +SET alter_algorithm=0; +SELECT @@alter_algorithm; +@@alter_algorithm +DEFAULT +SET alter_algorithm=1; +SELECT @@alter_algorithm; +@@alter_algorithm +COPY +SET alter_algorithm=2; +SELECT @@alter_algorithm; +@@alter_algorithm +INPLACE +SET alter_algorithm=5; +ERROR 42000: Variable 'alter_algorithm' can't be set to the value of '5' +SELECT @@alter_algorithm; +@@alter_algorithm +INPLACE +SET SESSION alter_algorithm=INSTANT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm INSTANT +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm NOCOPY +SET SESSION alter_algorithm='DEFAULT'; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm DEFAULT +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm NOCOPY +SET GLOBAL alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm NOCOPY +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +Variable_name Value +alter_algorithm DEFAULT +SET GLOBAL alter_algorithm = @start_global_value; diff --git a/mysql-test/suite/sys_vars/t/alter_algorithm_basic.test b/mysql-test/suite/sys_vars/t/alter_algorithm_basic.test new file mode 100644 index 00000000000..69a5320a98c --- /dev/null +++ b/mysql-test/suite/sys_vars/t/alter_algorithm_basic.test @@ -0,0 +1,58 @@ +SET @start_global_value = @@global.alter_algorithm; + +--error ER_WRONG_TYPE_FOR_VAR +SET GLOBAL alter_algorithm=1.1; +--error ER_WRONG_VALUE_FOR_VAR +SET GLOBAL alter_algorithm=-1; +--error ER_WRONG_VALUE_FOR_VAR +SET GLOBAL alter_algorithm=weird; +SET GLOBAL alter_algorithm=4; +SELECT @@global.alter_algorithm; +SET GLOBAL alter_algorithm=3; +SELECT @@global.alter_algorithm; +SET GLOBAL alter_algorithm=0; +SELECT @@global.alter_algorithm; +SET GLOBAL alter_algorithm=1; +SELECT @@global.alter_algorithm; +SET GLOBAL alter_algorithm=2; +SELECT @@global.alter_algorithm; +--error ER_WRONG_VALUE_FOR_VAR +SET GLOBAL alter_algorithm=5; +SELECT @@global.alter_algorithm; + +SET GLOBAL alter_algorithm=NOCOPY; + +--error ER_WRONG_TYPE_FOR_VAR +SET alter_algorithm=1.1; +--error ER_WRONG_VALUE_FOR_VAR +SET alter_algorithm=-1; +--error ER_WRONG_VALUE_FOR_VAR +SET alter_algorithm=weird; +SET alter_algorithm=4; +SELECT @@alter_algorithm; +SET alter_algorithm=3; +SELECT @@alter_algorithm; +SET alter_algorithm=0; +SELECT @@alter_algorithm; +SET alter_algorithm=1; +SELECT @@alter_algorithm; +SET alter_algorithm=2; +SELECT @@alter_algorithm; +--error ER_WRONG_VALUE_FOR_VAR +SET alter_algorithm=5; +SELECT @@alter_algorithm; + +SET SESSION alter_algorithm=INSTANT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +SET SESSION alter_algorithm='DEFAULT'; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +SET GLOBAL alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; +SET SESSION alter_algorithm=DEFAULT; +SHOW SESSION VARIABLES LIKE 'alter_algorithm'; + +SET GLOBAL alter_algorithm = @start_global_value;