diff options
Diffstat (limited to 'mysql-test/suite/sys_vars/t/timed_mutexes_basic.test')
-rw-r--r-- | mysql-test/suite/sys_vars/t/timed_mutexes_basic.test | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/timed_mutexes_basic.test b/mysql-test/suite/sys_vars/t/timed_mutexes_basic.test new file mode 100644 index 00000000000..b0eb41afb49 --- /dev/null +++ b/mysql-test/suite/sys_vars/t/timed_mutexes_basic.test @@ -0,0 +1,169 @@ +################## mysql-test\t\timed_mutexes_basic.test ###################### +# # +# Variable Name: timed_mutexes # +# Scope: GLOBAL # +# Access Type: Dynamic # +# Data Type: boolean # +# Default Value: OFF # +# Valid Values: ON, OFF # +# # +# # +# Creation Date: 2008-02-07 # +# Author: Rizwan # +# # +# Description: Test Cases of Dynamic System Variable timed_mutexes # +# that checks the behavior of this variable in the following ways# +# * Default Value # +# * Valid & Invalid values # +# * Scope & Access method # +# * Data Integrity # +# # +# Reference: http://dev.mysql.com/doc/refman/5.1/en/ # +# server-system-variables.html # +# # +############################################################################### + +--source include/load_sysvars.inc +######################################################################## +# START OF timed_mutexes TESTS # +######################################################################## + + +############################################################################## +# Saving initial value of timed_mutexes in a temporary variable # +############################################################################## + +SET @global_start_value = @@global.timed_mutexes; +SELECT @global_start_value; + +--echo '#--------------------FN_DYNVARS_177_01------------------------#' +######################################################################## +# Display the DEFAULT value of timed_mutexes # +######################################################################## + +SET @@global.timed_mutexes = 1; +SET @@global.timed_mutexes = DEFAULT; +SELECT @@global.timed_mutexes; + +--echo '#---------------------FN_DYNVARS_177_02-------------------------#' +############################################################################# +# Check if timed_mutexes can be accessed with and without @@ sign # +############################################################################# + +--Error ER_GLOBAL_VARIABLE +SET timed_mutexes = 1; +SELECT @@timed_mutexes; +--Error ER_UNKNOWN_TABLE +SELECT global.timed_mutexes; + +SET global timed_mutexes = 1; +SELECT @@global.timed_mutexes; + + +--echo '#--------------------FN_DYNVARS_177_03------------------------#' +######################################################################## +# Change the value of timed_mutexes to a valid value # +######################################################################## + +SET @@global.timed_mutexes = 0; +SELECT @@global.timed_mutexes; +SET @@global.timed_mutexes = 1; +SELECT @@global.timed_mutexes; + + +--echo '#--------------------FN_DYNVARS_177_04-------------------------#' +########################################################################### +# Change the value of timed_mutexes to invalid value # +########################################################################### + +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = -1; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = 2; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = "T"; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = "Y"; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = _true; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = 0N; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = 1+1; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = 0FF; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = '0'; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.timed_mutexes = N; + + +--echo '#-------------------FN_DYNVARS_177_05----------------------------#' +########################################################################### +# Test if accessing session timed_mutexes gives error # +########################################################################### + +--Error ER_GLOBAL_VARIABLE +SET @@session.timed_mutexes = 0; +--Error ER_GLOBAL_VARIABLE +SET @@timed_mutexes = 0; +--Error ER_GLOBAL_VARIABLE +SET @@local.timed_mutexes = 0; +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT @@session.timed_mutexes; +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT @@local.timed_mutexes; + +--echo '#----------------------FN_DYNVARS_177_06------------------------#' +######################################################################### +# Check if the value in SESSION Table contains variable value # +######################################################################### + +SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.SESSION_VARIABLES +WHERE VARIABLE_NAME='timed_mutexes'; + + +--echo '#----------------------FN_DYNVARS_177_07------------------------#' +######################################################################### +# Check if the value in GLOBAL Table matches value in variable # +######################################################################### + +SELECT @@global.timed_mutexes = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='timed_mutexes'; +SELECT @@global.timed_mutexes; + +SELECT VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='timed_mutexes'; + +--echo '#---------------------FN_DYNVARS_177_08-------------------------#' +################################################################### +# Check if ON and OFF values can be used on variable # +################################################################### + +SET @@global.timed_mutexes = OFF; +SELECT @@global.timed_mutexes; +SET @@global.timed_mutexes = ON; +SELECT @@global.timed_mutexes; + +--echo '#---------------------FN_DYNVARS_177_09----------------------#' +################################################################### +# Check if TRUE and FALSE values can be used on variable # +################################################################### + +SET @@global.timed_mutexes = TRUE; +SELECT @@global.timed_mutexes; +SET @@global.timed_mutexes = FALSE; +SELECT @@global.timed_mutexes; + +############################## +# Restore initial value # +############################## + +SET @@global.timed_mutexes = @global_start_value; +SELECT @@global.timed_mutexes; + +############################################################### +# END OF timed_mutexes TESTS # +############################################################### |