diff options
Diffstat (limited to 'mysql-test/suite/sys_vars/t/myisam_data_pointer_size_basic.test')
-rw-r--r-- | mysql-test/suite/sys_vars/t/myisam_data_pointer_size_basic.test | 182 |
1 files changed, 182 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/myisam_data_pointer_size_basic.test b/mysql-test/suite/sys_vars/t/myisam_data_pointer_size_basic.test new file mode 100644 index 00000000000..d151c6000b8 --- /dev/null +++ b/mysql-test/suite/sys_vars/t/myisam_data_pointer_size_basic.test @@ -0,0 +1,182 @@ + +############## mysql-test\t\myisam_data_pointer_size_basic.test ################ +# # +# Variable Name: myisam_data_pointer_size # +# Scope: GLOBAL & SESSION # +# Access Type: Dynamic # +# Data Type: Numeric # +# Default Value: 1 # +# Range: 1 - 65536 # +# # +# # +# Creation Date: 2008-02-07 # +# Author: Rizwan Maredia # +# # +# Description: Test Cases of Dynamic System Variable myisam_data_pointer_size # +# 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 myisam_data_pointer_size TESTS # +################################################################### + + +############################################################# +# Save initial value # +############################################################# + +SET @start_global_value = @@global.myisam_data_pointer_size; +SELECT @start_global_value; + +--echo '#--------------------FN_DYNVARS_093_01-------------------------#' +################################################################### +# Display the DEFAULT value of myisam_data_pointer_size # +################################################################### + +SET @@global.myisam_data_pointer_size = 5; +SET @@global.myisam_data_pointer_size = DEFAULT; +SELECT @@global.myisam_data_pointer_size; + +--echo '#--------------------FN_DYNVARS_093_02-------------------------#' +################################################################### +# Check the DEFAULT value of myisam_data_pointer_size # +################################################################### + +SET @@global.myisam_data_pointer_size = DEFAULT; +SELECT @@global.myisam_data_pointer_size = 6; + +--echo '#--------------------FN_DYNVARS_093_03-------------------------#' +################################################################################## +# Change the value of myisam_data_pointer_size to a valid value for GLOBAL Scope # +################################################################################## + +SET @@global.myisam_data_pointer_size = 2; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 3; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 4; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 5; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 6; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 7; +SELECT @@global.myisam_data_pointer_size; + +--echo '#--------------------FN_DYNVARS_093_04-------------------------#' +################################################################################# +# Check if variable can be access with session scope # +################################################################################# + +--Error ER_GLOBAL_VARIABLE +SET @@myisam_data_pointer_size = 2; + +--Error ER_GLOBAL_VARIABLE +SET @@session.myisam_data_pointer_size = 3; + +--Error ER_GLOBAL_VARIABLE +SET @@local.myisam_data_pointer_size = 4; + + + +--echo '#------------------FN_DYNVARS_093_05-----------------------#' +#################################################################### +# Change the value of myisam_data_pointer_size to an invalid value # +#################################################################### + +SET @@global.myisam_data_pointer_size = -1; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 8; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 1; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = 4294967296; +SELECT @@global.myisam_data_pointer_size; +--Error ER_PARSE_ERROR +SET @@global.myisam_data_pointer_size = 65530.34.; +SELECT @@global.myisam_data_pointer_size; +--Error ER_WRONG_TYPE_FOR_VAR +SET @@global.myisam_data_pointer_size = two; +SELECT @@global.myisam_data_pointer_size; + +--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable'; + + +--echo '#------------------FN_DYNVARS_093_06-----------------------#' +#################################################################### +# Check if the value in GLOBAL Table matches value in variable # +#################################################################### + +SET @@global.myisam_data_pointer_size = 3; +SELECT @@global.myisam_data_pointer_size = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='myisam_data_pointer_size'; + + +--echo '#------------------FN_DYNVARS_093_07-----------------------#' +########################################################################### +# Check if the value is present in INFORMATION_SCHEMA.SESSION_VARIABLES # +########################################################################### + +SELECT count(VARIABLE_VALUE) +FROM INFORMATION_SCHEMA.SESSION_VARIABLES +WHERE VARIABLE_NAME='myisam_data_pointer_size'; + + +--echo '#------------------FN_DYNVARS_093_08-----------------------#' +#################################################################### +# Check if TRUE and FALSE values can be used on variable # +#################################################################### + +SET @@global.myisam_data_pointer_size = TRUE; +SELECT @@global.myisam_data_pointer_size; +SET @@global.myisam_data_pointer_size = FALSE; +SELECT @@global.myisam_data_pointer_size; + + +--echo '#---------------------FN_DYNVARS_001_09----------------------#' +################################################################################# +# Check if accessing variable with and without GLOBAL point to same variable # +################################################################################# + + +SET @@global.myisam_data_pointer_size = 5; +SELECT @@myisam_data_pointer_size = @@global.myisam_data_pointer_size; + + +--echo '#---------------------FN_DYNVARS_001_10----------------------#' +################################################################################## +# Check if myisam_data_pointer_size can be accessed without @@ sign and scope # +################################################################################## + +--Error ER_GLOBAL_VARIABLE +SET myisam_data_pointer_size = 7; +--Error ER_BAD_FIELD_ERROR +SELECT myisam_data_pointer_size; + +SELECT @@myisam_data_pointer_size; + +#verifying another syntax for setting value# + +SET global myisam_data_pointer_size = 2; + +#################################### +# Restore initial value # +#################################### + +SET @@global.myisam_data_pointer_size = @start_global_value; +SELECT @@global.myisam_data_pointer_size; + +######################################################## +# END OF myisam_data_pointer_size TESTS # +######################################################## + |