mariadb/mysql-test/t/table_lock_wait_timeout_basic.test
unknown b00c536378 System variable tests delivered by Folio3 (see WL4288).
BitKeeper/etc/ignore:
  Added mysql-test/linux_sys_vars.inc mysql-test/load_sysvars.inc mysql-test/windows_sys_vars.inc to the ignore list
2008-04-10 15:14:28 +02:00

172 lines
7.4 KiB
Text

############## 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 #
########################################################################