diff options
Diffstat (limited to 'mysql-test/suite/sys_vars/t/default_storage_engine_basic.test')
-rw-r--r-- | mysql-test/suite/sys_vars/t/default_storage_engine_basic.test | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/default_storage_engine_basic.test b/mysql-test/suite/sys_vars/t/default_storage_engine_basic.test new file mode 100644 index 00000000000..17f2d2cc852 --- /dev/null +++ b/mysql-test/suite/sys_vars/t/default_storage_engine_basic.test @@ -0,0 +1,183 @@ +############## mysql-test\t\storage_engine_basic.test ################## +# # +# # +# Creation Date: 2008-02-14 # +# Author: Salman Rawala # +# # +# Description: Test Cases of Dynamic System Variable # +# default_storage_engine that check behavior of this # +# variable with valid values, invalid values, accessing # +# variable with scope that is allowed and with scope that # +# is now allowed. # +# # +# Reference: http://dev.mysql.com/doc/refman/5.1/en/ # +# server-system-variables.html#option_mysqld_storage_engine # +# # +######################################################################## + +--source include/have_innodb.inc +--source include/load_sysvars.inc + +###################################################################### +# START OF default_storage_engine TESTS # +###################################################################### + + +############################################################# +# Save initial value # +############################################################# + +SET @start_global_value = @@global.default_storage_engine; +SELECT @start_global_value; +SET @start_session_value = @@session.default_storage_engine; +SELECT @start_session_value; + + +--echo '#--------------------FN_DYNVARS_005_01-------------------------#' +###################################################################### +# Display the DEFAULT value of default_storage_engine # +###################################################################### + +SET @@global.default_storage_engine = INNODB; +SET @@global.default_storage_engine = DEFAULT; +SELECT @@global.default_storage_engine; + +SET @@session.default_storage_engine = INNODB; +SET @@session.default_storage_engine = DEFAULT; +SELECT @@session.default_storage_engine; + + +--echo '#--------------------FN_DYNVARS_005_02-------------------------#' +######################################################################## +# Change the value of default_storage_engine to a valid value for GLOBAL Scope # +######################################################################## + +SET @@global.default_storage_engine = MYISAM; +SELECT @@global.default_storage_engine; +SET @@global.default_storage_engine = MERGE; +SELECT @@global.default_storage_engine; +SET @@global.default_storage_engine = MEMORY; +SELECT @@global.default_storage_engine; +SET @@global.default_storage_engine = INNODB; +SELECT @@global.default_storage_engine; + + +--echo '#--------------------FN_DYNVARS_005_03-------------------------#' +######################################################################### +# Change the value of default_storage_engine to a valid value for SESSION Scope # +######################################################################### + +SET @@session.default_storage_engine = MYISAM; +SELECT @@session.default_storage_engine; +SET @@session.default_storage_engine = MERGE; +SELECT @@session.default_storage_engine; +SET @@session.default_storage_engine = MEMORY; +SELECT @@session.default_storage_engine; +SET @@session.default_storage_engine = INNODB; +SELECT @@session.default_storage_engine; + + +--echo '#------------------FN_DYNVARS_005_04-----------------------#' +################################################################## +# Change the value of default_storage_engine to an invalid value # +################################################################## + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.default_storage_engine = 8199; + +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.default_storage_engine = NULL; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.default_storage_engine = -1024; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.default_storage_engine = 65530.34; + +--Error ER_UNKNOWN_STORAGE_ENGINE +SET @@global.default_storage_engine = FILE; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@session.default_storage_engine = 8199; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@session.default_storage_engine = 65530.34; + +--Error ER_UNKNOWN_STORAGE_ENGINE +SET @@session.default_storage_engine = RECORD; + + +--echo '#------------------FN_DYNVARS_005_05-----------------------#' +#################################################################### +# Check if the value in GLOBAL Table matches value in variable # +#################################################################### + + +SELECT @@global.default_storage_engine = + VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES + WHERE VARIABLE_NAME='default_storage_engine'; + +--echo '#------------------FN_DYNVARS_005_06-----------------------#' +#################################################################### +# Check if the value in SESSION Table matches value in variable # +#################################################################### + +SELECT @@session.default_storage_engine = + VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES + WHERE VARIABLE_NAME='default_storage_engine'; + + +--echo '#------------------FN_DYNVARS_005_07-----------------------#' +#################################################################### +# Check if TRUE and FALSE values can be used on variable # +#################################################################### + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.default_storage_engine = TRUE; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.default_storage_engine = FALSE; + + +--echo '#---------------------FN_DYNVARS_001_8----------------------#' +############################################################### +# Check if accessing variable with SESSION,LOCAL and without # +# SCOPE points to same session variable # +############################################################### + +SET @@default_storage_engine = MYISAM; +SELECT @@default_storage_engine = @@local.default_storage_engine; +SELECT @@local.default_storage_engine = @@session.default_storage_engine; + + +--echo '#---------------------FN_DYNVARS_001_9----------------------#' +######################################################################### +# Check if default_storage_engine can be accessed with and without @@ sign # +######################################################################### + +SET default_storage_engine = MEMORY; +SELECT @@default_storage_engine; +--Error ER_UNKNOWN_TABLE +SELECT local.default_storage_engine; +--Error ER_UNKNOWN_TABLE +SELECT session.default_storage_engine; +--Error ER_BAD_FIELD_ERROR +SELECT default_storage_engine = @@session.default_storage_engine; + +# check the old obsolete name +SET @@default_storage_engine = @start_global_value; + +#################################### +# Restore initial value # +#################################### + +SET @@global.default_storage_engine = @start_global_value; +SELECT @@global.default_storage_engine; +SET @@session.default_storage_engine = @start_session_value; +SELECT @@session.default_storage_engine; + + +############################################################# +# END OF default_storage_engine TESTS # +############################################################# + |