diff options
Diffstat (limited to 'mysql-test/t/table_lock_wait_timeout_basic.test')
-rw-r--r-- | mysql-test/t/table_lock_wait_timeout_basic.test | 172 |
1 files changed, 172 insertions, 0 deletions
diff --git a/mysql-test/t/table_lock_wait_timeout_basic.test b/mysql-test/t/table_lock_wait_timeout_basic.test new file mode 100644 index 00000000000..43186c70874 --- /dev/null +++ b/mysql-test/t/table_lock_wait_timeout_basic.test @@ -0,0 +1,172 @@ +############## mysql-test\t\table_lock_wait_timeout_basic.test ################ +# # +# Variable Name: table_lock_wait _timeout # +# Scope: GLOBAL # +# Access Type: Dynamic # +# Data Type: numeric # +# Default Value: 50 # +# Range: 1-1073741824 # +# # +# # +# Creation Date: 2008-02-14 # +# Author: Salman # +# # +# Description: Test Cases of Dynamic System Variable table_lock_wait_timeout # +# 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#option_mysqld_table_lock_wait_timeout # +# # +############################################################################### + +--source include/load_sysvars.inc +######################################################################## +# START OF table_lock_wait_timeout TESTS # +######################################################################## + + +########################################################################## +# Saving initial value of table_lock_wait_timeout in a temporary variable# +########################################################################## + +SET @start_value = @@global.table_lock_wait_timeout; +SELECT @start_value; + + +--echo '#--------------------FN_DYNVARS_001_01------------------------#' +######################################################################## +# Display the DEFAULT value of table_lock_wait_timeout # +######################################################################## + +SET @@global.table_lock_wait_timeout = 99; +SET @@global.table_lock_wait_timeout = DeFAULT; +SELECT @@global.table_lock_wait_timeout; + + +--echo '#---------------------FN_DYNVARS_001_02-------------------------#' +############################################### +# Verify default value of variable # +############################################### + +SET @@global.table_lock_wait_timeout =Default; +SELECT @@global.table_lock_wait_timeout = 50; + +--echo '#--------------------FN_DYNVARS_001_03------------------------#' +######################################################################## +# Change the value of table_lock_wait_timeout to a valid value # +######################################################################## + + +SET @@global.table_lock_wait_timeout = 8; +SELECT @@global.table_lock_wait_timeout ; + +SET @@global.table_lock_wait_timeout = 1; +SELECT @@global.table_lock_wait_timeout ; +SET @@global.table_lock_wait_timeout = 1073741824; +SELECT @@global.table_lock_wait_timeout ; +SET @@global.table_lock_wait_timeout = 18000; +SELECT @@global.table_lock_wait_timeout ; +SET @@global.table_lock_wait_timeout = 65535; +SELECT @@global.table_lock_wait_timeout ; + + + +--echo '#--------------------FN_DYNVARS_001_04-------------------------#' +######################################################################### +# Change the value of table_lock_wait_timeout to invalid value # +######################################################################### + +SET @@global.table_lock_wait_timeout = -1; + +SET @@global.table_lock_wait_timeout= 100000000000; + +SET @@global.table_lock_wait_timeout= -1024; + +SET @@global.table_lock_wait_timeout= 0; +--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable'; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.table_lock_wait_timeout= 10000.01; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.table_lock_wait_timeout= ON; +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.table_lock_wait_timeout= 'test'; + +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.table_lock_wait_timeout= ''; + + +--echo '#-------------------FN_DYNVARS_001_05----------------------------#' +########################################################################### +# Test if accessing session table_lock_wait_timeout gives error # +########################################################################### + +--Error ER_GLOBAL_VARIABLE +SET @@session.table_lock_wait_timeout= 0; +SELECT @@table_lock_wait_timeout; + + +--echo '#----------------------FN_DYNVARS_001_06------------------------#' +############################################################################## +# Check if the value in GLOBAL & SESSION Tables matches values in variable # +############################################################################## + +SELECT @@global.table_lock_wait_timeout= VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='table_lock_wait_timeout'; + + +--echo '#---------------------FN_DYNVARS_001_09----------------------#' +################################################################### +# Check if TRUE and FALSE values can be used on variable # +################################################################### + +SET @@global.table_lock_wait_timeout= TRUE; +SELECT @@global.table_lock_wait_timeout; + +SET @@global.table_lock_wait_timeout= FALSE; +SELECT @@global.table_lock_wait_timeout; + + +--echo '#---------------------FN_DYNVARS_001_10----------------------#' +############################################################################### +# Check if accessing variable without SCOPE points to same global variable # +############################################################################### + +SET @@global.table_lock_wait_timeout= 10; +SELECT @@table_lock_wait_timeout= @@global.table_lock_wait_timeout; + + +--echo '#---------------------FN_DYNVARS_001_11----------------------#' +############################################################################### +# Check if table_lock_wait_timeout can be accessed with and without @@ sign # +############################################################################### + +--Error ER_GLOBAL_VARIABLE +SET table_lock_wait_timeout= 8; +--Error ER_PARSE_ERROR +SET global.table_lock_wait_timeout= 10; +--Error ER_UNKNOWN_TABLE +SELECT global.table_lock_wait_timeout; +--Error ER_BAD_FIELD_ERROR +SELECT table_lock_wait_timeout= @@session.table_lock_wait_timeout; + + +############################## +# Restore initial value # +############################## + +SET @@global.table_lock_wait_timeout= @start_value; +SELECT @@global.table_lock_wait_timeout; + + +######################################################################## +# END OF table_lock_wait_timeout TESTS # +######################################################################## + + |