Current Path : /usr/opt/mysql57/mysql-test/suite/sys_vars/t/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/opt/mysql57/mysql-test/suite/sys_vars/t/server_id_bits_basic.test |
############## mysql-test\t\server_id_bits_basic.test ################ # # # Variable Name: server_id_bits # # Scope: GLOBAL & SESSION # # Access Type: Dynamic # # Data Type: Numeric # # Default Value: 32 # # Range: 0 - 32 # # # # # # Creation Date: 2010-10-22 # # Author: Magnus BlÄudd # # # # Description: Test Cases of Dynamic System Variable server_id_bits # # that checks the behavior of this variable in the following ways # # * Default Value # # * Valid & Invalid values # # * Scope & Access method # # * Data Integrity # # # # # ################################################################################ --source include/load_sysvars.inc ################################################################### # START OF server_id TESTS # ################################################################### ############################################################# # Save initial value # ############################################################# let $save_general_log= `SELECT @@global.general_log`; SET @@global.general_log= 0; SET @start_global_value = @@global.server_id_bits; SELECT @start_global_value; --echo '#--------------------FN_DYNVARS_144_01-------------------------#' ################################################################### # Display the DEFAULT value of server_id_bits # ################################################################### SET @@global.server_id_bits = 16; SET @@global.server_id_bits = DEFAULT; SELECT @@global.server_id_bits; --echo '#--------------------FN_DYNVARS_144_02-------------------------#' ################################################################### # Check the DEFAULT value of server_id_bits # ################################################################### SET @@global.server_id_bits = DEFAULT; SELECT @@global.server_id_bits = 0; --echo '#--------------------FN_DYNVARS_144_03-------------------------#' ################################################################################## # Change the value of server_id_bits to a valid value for GLOBAL Scope # ################################################################################## SET @@global.server_id_bits = 0; SELECT @@global.server_id_bits; SET @@global.server_id_bits = 1; SELECT @@global.server_id_bits; SET @@global.server_id_bits = 15; SELECT @@global.server_id_bits; SET @@global.server_id_bits = 31; SELECT @@global.server_id_bits; SET @@global.server_id_bits = 32; SELECT @@global.server_id_bits; --echo '#--------------------FN_DYNVARS_144_04-------------------------#' ################################################################################# # Check if variable can be access with session scope # ################################################################################# --Error ER_GLOBAL_VARIABLE SET @@server_id_bits = 2; --Error ER_GLOBAL_VARIABLE SET @@session.server_id_bits = 3; --Error ER_GLOBAL_VARIABLE SET @@local.server_id_bits = 4; --echo '#------------------FN_DYNVARS_144_05-----------------------#' #################################################################### # Change the value of server_id_bits to an invalid value # #################################################################### SET @@global.server_id_bits = -1; SELECT @@global.server_id_bits; SET @@global.server_id_bits = -2147483648; SELECT @@global.server_id_bits; SET @@global.server_id_bits = 2147483649*2; SELECT @@global.server_id_bits; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.server_id_bits = 65530.34; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.server_id_bits = '125'; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.server_id_bits = 7483649.56; --Error ER_WRONG_TYPE_FOR_VAR SET @@global.server_id_bits = 1G; --echo '#------------------FN_DYNVARS_144_06-----------------------#' #################################################################### # Check if the value in GLOBAL Table matches value in variable # #################################################################### SET @@global.server_id_bits = 12; --disable_warnings SELECT @@global.server_id_bits = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='server_id_bits'; --enable_warnings --echo '#------------------FN_DYNVARS_144_07-----------------------#' ########################################################################### # Check if the value is present in INFORMATION_SCHEMA.SESSION_VARIABLES # ########################################################################### --disable_warnings SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='server_id_bits'; --enable_warnings --echo '#------------------FN_DYNVARS_144_08-----------------------#' #################################################################### # Check if TRUE and FALSE values can be used on variable # #################################################################### SET @@global.server_id_bits = TRUE; SELECT @@global.server_id_bits; SET @@global.server_id_bits = FALSE; SELECT @@global.server_id_bits; --echo '#---------------------FN_DYNVARS_001_09----------------------#' ################################################################################# # Check if accessing variable with and without GLOBAL point to same variable # ################################################################################# SET @@global.server_id_bits = 19; SELECT @@server_id_bits = @@global.server_id_bits; --echo '#---------------------FN_DYNVARS_001_10----------------------#' ################################################################################## # Check if server_id_bits can be accessed without @@ sign and scope # ################################################################################## --Error ER_GLOBAL_VARIABLE SET server_id_bits = 2048; --Error ER_BAD_FIELD_ERROR SELECT server_id_bits; SELECT @@server_id_bits; #verifying another another syntax for setting value SET global server_id_bits = 20; #################################### # Restore initial value # #################################### SET @@global.server_id_bits = @start_global_value; SELECT @@global.server_id_bits; eval SET @@global.general_log= $save_general_log; ######################################################## # END OF server_id_bits TESTS # ########################################################