diff options
Diffstat (limited to 'mysql-test/suite/sys_vars/t/flush_basic.test')
-rw-r--r-- | mysql-test/suite/sys_vars/t/flush_basic.test | 168 |
1 files changed, 168 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/flush_basic.test b/mysql-test/suite/sys_vars/t/flush_basic.test new file mode 100644 index 00000000..842d0caa --- /dev/null +++ b/mysql-test/suite/sys_vars/t/flush_basic.test @@ -0,0 +1,168 @@ +############## mysql-test\t\flush_basic.test ################################## +# # +# Variable Name: flush # +# Scope: GLOBAL # +# Access Type: Dynamic # +# Data Type: boolean # +# Default Value: OFF # +# Range: # +# # +# # +# Creation Date: 2008-02-09 # +# Author: Salman # +# # +# Description: Test Cases of Dynamic System Variable flush # +# 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-options.html#option_mysqld_flush # +# # +############################################################################### + +--source include/load_sysvars.inc +######################################################################## +# START OF flush TESTS # +######################################################################## + + +############################################################# +# Saving initial value of flush in a temporary variable # +############################################################# + +SET @start_value = @@global.flush; +SELECT @start_value; + + +--echo '#--------------------FN_DYNVARS_030_01------------------------#' +############################################################# +# Display the DEFAULT value of flush # +############################################################# + +SET @@global.flush = ON; +SET @@global.flush = DEFAULT; +SELECT @@global.flush; + + +--echo '#---------------------FN_DYNVARS_030_02-------------------------#' +############################################### +# Verify default value of variable # +############################################### + +SET @@global.flush = @start_value; +SELECT @@global.flush; + + +--echo '#--------------------FN_DYNVARS_030_03------------------------#' +############################################################# +# Change the value of flush to a valid value # +############################################################# + +SET @@global.flush = ON; +SELECT @@global.flush; +SET @@global.flush = OFF; +SELECT @@global.flush; +SET @@global.flush = 0; +SELECT @@global.flush; +SET @@global.flush = 1; +SELECT @@global.flush; + + +--echo '#--------------------FN_DYNVARS_030_04-------------------------#' +########################################################################### +# Change the value of flush to invalid value # +########################################################################### + +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = 2; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = -1; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = TRUEF; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = TRUE_F; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = FALSE0; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = OON; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = ONN; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = OOFF; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = 0FF; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = ' '; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = " "; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@global.flush = ''; + + +--echo '#-------------------FN_DYNVARS_030_05----------------------------#' +########################################################################### +# Test if accessing session flush gives error # +########################################################################### + +--Error ER_GLOBAL_VARIABLE +SET @@session.flush = 1; +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT @@session.flush; + + +--echo '#----------------------FN_DYNVARS_030_06------------------------#' +#################################################################### +# Check if the value in GLOBAL Tables matches values in variable # +#################################################################### + +SELECT IF(@@global.flush, "ON", "OFF") = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='flush'; + + +--echo '#---------------------FN_DYNVARS_030_07----------------------#' +################################################################### +# Check if TRUE and FALSE values can be used on variable # +################################################################### + +SET @@global.flush = TRUE; +SELECT @@global.flush; +SET @@global.flush = FALSE; +SELECT @@global.flush; + + +--echo '#---------------------FN_DYNVARS_030_08----------------------#' +############################################################################### +# Check if accessing variable without SCOPE points to same global variable # +############################################################################### + +SET @@global.flush = 1; +SELECT @@flush = @@global.flush; + +--echo '#---------------------FN_DYNVARS_030_09----------------------#' +########################################################################## +# Check if flush can be accessed with and without @@ sign # +########################################################################## + +--Error ER_GLOBAL_VARIABLE +SET flush = 1; +--Error ER_UNKNOWN_TABLE +SELECT global.flush; +--Error ER_BAD_FIELD_ERROR +SELECT flush = @@session.flush; + + +############################## +# Restore initial value # +############################## + +SET @@global.flush = @start_value; +SELECT @@global.flush; + + +############################################################# +# END OF flush TESTS # +############################################################# |