################## mysql-test\t\innodb_lock_wait_timeout_basic.test ########### # # # Variable Name: innodb_lock_wait_timeout # # Scope: Global , Session # # Access Type: Dynamic # # Data Type: numeric # # # # # # Creation Date: 2008-02-07 # # Author : Sharique Abdullah # # # # # # Description:Test Cases of Dynamic System Variable innodb_lock_wait_timeout # # that checks the behavior of this variable in the following ways # # * Value Check # # * Scope Check # # # # Reference: http://dev.mysql.com/doc/refman/5.1/en/ # # server-system-variables.html # # # ############################################################################### --source include/have_innodb.inc SET @start_global_value=@@global.innodb_lock_wait_timeout; SELECT @start_global_value; --echo '#---------------------BS_STVARS_032_01----------------------#' #################################################################### # Displaying default value # #################################################################### SELECT COUNT(@@GLOBAL.innodb_lock_wait_timeout); --echo 1 Expected --echo '#---------------------BS_STVARS_032_02----------------------#' #################################################################### # Check if Value can set # #################################################################### SET global innodb_lock_wait_timeout=60; SELECT @@global.innodb_lock_wait_timeout; SET session innodb_lock_wait_timeout=60; SELECT @@session.innodb_lock_wait_timeout; --echo '#---------------------BS_STVARS_032_03----------------------#' ################################################################# # Check if the value in GLOBAL Table matches value in variable # ################################################################# --disable_warnings SELECT @@GLOBAL.innodb_lock_wait_timeout = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_lock_wait_timeout'; --enable_warnings --echo 1 Expected SELECT COUNT(@@GLOBAL.innodb_lock_wait_timeout); --echo 1 Expected --disable_warnings SELECT COUNT(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_lock_wait_timeout'; --enable_warnings --echo 1 Expected --echo '#---------------------BS_STVARS_032_04----------------------#' ################################################################################ # Check if accessing variable with and without GLOBAL point to same variable # ################################################################################ SELECT @@innodb_lock_wait_timeout = @@GLOBAL.innodb_lock_wait_timeout; --echo 1 Expected --echo '#---------------------BS_STVARS_032_05----------------------#' ################################################################################ # Check if innodb_lock_wait_timeout can be accessed with and without @@ sign # ################################################################################ SELECT COUNT(@@innodb_lock_wait_timeout); --echo 1 Expected SELECT COUNT(@@local.innodb_lock_wait_timeout); SELECT COUNT(@@SESSION.innodb_lock_wait_timeout); SELECT COUNT(@@GLOBAL.innodb_lock_wait_timeout); --echo 1 Expected --Error ER_BAD_FIELD_ERROR SELECT innodb_lock_wait_timeout = @@SESSION.innodb_lock_wait_timeout; # # check the default value # set @@global.innodb_lock_wait_timeout=100; set @@global.innodb_lock_wait_timeout=DEFAULT; select @@global.innodb_lock_wait_timeout; set @@session.innodb_lock_wait_timeout=100; set @@session.innodb_lock_wait_timeout=DEFAULT; select @@session.innodb_lock_wait_timeout; # # check for valid values # SET @@global.innodb_lock_wait_timeout=1; SELECT @@global.innodb_lock_wait_timeout; SET @@global.innodb_lock_wait_timeout=1024; SELECT @@global.innodb_lock_wait_timeout; SET @@global.innodb_lock_wait_timeout=1073741824; SELECT @@global.innodb_lock_wait_timeout; SET @@session.innodb_lock_wait_timeout=1; SELECT @@session.innodb_lock_wait_timeout; SET @@session.innodb_lock_wait_timeout=1024; SELECT @@session.innodb_lock_wait_timeout; SET @@session.innodb_lock_wait_timeout=1073741824; SELECT @@session.innodb_lock_wait_timeout; # # check for invalid values # --Error ER_WRONG_TYPE_FOR_VAR SET @@global.innodb_lock_wait_timeout="t"; SELECT @@global.innodb_lock_wait_timeout; SET @@global.innodb_lock_wait_timeout=-1024; SELECT @@global.innodb_lock_wait_timeout; SET @@global.innodb_lock_wait_timeout=1073741825; SELECT @@global.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.innodb_lock_wait_timeout=" "; SELECT @@global.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.innodb_lock_wait_timeout=' '; SELECT @@global.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.innodb_lock_wait_timeout=1.1; SELECT @@global.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@session.innodb_lock_wait_timeout="T"; SELECT @@session.innodb_lock_wait_timeout; SET @@session.innodb_lock_wait_timeout=-1024; SELECT @@session.innodb_lock_wait_timeout; SET @@session.innodb_lock_wait_timeout=1073999999; SELECT @@session.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@session.innodb_lock_wait_timeout=' '; SELECT @@session.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@session.innodb_lock_wait_timeout=" "; SELECT @@session.innodb_lock_wait_timeout; --Error ER_WRONG_TYPE_FOR_VAR SET @@session.innodb_lock_wait_timeout=1.1; SELECT @@session.innodb_lock_wait_timeout; # Cleanup # SET @@global.innodb_lock_wait_timeout = @start_global_value; SELECT @@global.innodb_lock_wait_timeout;