############## mysql-test\t\log_bin_trust_routine_creators_basic.test ######### # # # Variable Name: log_bin_trust_routine_creators # # Scope: GLOBAL # # Access Type: Dynamic # # Data Type: boolean # # Default Value: False # # Range: # # # # # # Creation Date: 2008-02-12 # # Author: Salman # # # # Description: Test Cases of Dynamic System Variable # # log_bin_trust_routine_creators that checks the # # behavior of this variable in the following ways # # * Default Value # # * Valid & Invalid values # # * Scope & Access method # # * Data Integrity # # # # Reference: (Not given on website) # # # ############################################################################### --source include/load_sysvars.inc #################################################################### # START OF log_bin_trust_routine_creators TESTS # #################################################################### ############################################################# # Save initial value # ############################################################# SET @start_global_value = @@global.log_bin_trust_routine_creators; SELECT @start_global_value; --echo '#--------------------FN_DYNVARS_064_01-------------------------#' ######################################################################## # Display the DEFAULT value of log_bin_trust_routine_creators # ######################################################################## SET @@global.log_bin_trust_routine_creators = TRUE; SET @@global.log_bin_trust_routine_creators = DEFAULT; SELECT @@global.log_bin_trust_routine_creators; --echo '#--------------------FN_DYNVARS_064_02-------------------------#' ############################################################################## # Check the DEFAULT value of log_bin_trust_routine_creators # ############################################################################## SET @@global.log_bin_trust_routine_creators = DEFAULT; SELECT @@global.log_bin_trust_routine_creators = 'FALSE'; --echo '#--------------------FN_DYNVARS_064_03-------------------------#' ################################################################## # Change the value of variable to a valid value for GLOBAL Scope # ################################################################## SET @@global.log_bin_trust_routine_creators = ON; SELECT @@global.log_bin_trust_routine_creators; SET @@global.log_bin_trust_routine_creators = OFF; SELECT @@global.log_bin_trust_routine_creators; SET @@global.log_bin_trust_routine_creators = 0; SELECT @@global.log_bin_trust_routine_creators; SET @@global.log_bin_trust_routine_creators = 1; SELECT @@global.log_bin_trust_routine_creators; SET @@global.log_bin_trust_routine_creators = TRUE; SELECT @@global.log_bin_trust_routine_creators; SET @@global.log_bin_trust_routine_creators = FALSE; SELECT @@global.log_bin_trust_routine_creators; --echo '#-------------------FN_DYNVARS_064_04----------------------------#' ########################################################################### # Test if accessing session log_bin_trust_routine_creators gives error # ########################################################################### --Error ER_GLOBAL_VARIABLE SET @@session.log_bin_trust_routine_creators = 0; --Error ER_INCORRECT_GLOBAL_LOCAL_VAR SELECT @@session.log_bin_trust_routine_creators; --echo '#------------------FN_DYNVARS_064_05-----------------------#' ########################################################################## # Change the value of log_bin_trust_routine_creators to an invalid value # ########################################################################## --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = 'ONN'; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = "OFFF"; SET @@global.log_bin_trust_routine_creators = OF; SELECT @@global.log_bin_trust_routine_creators; --echo 'Bug# 34828: OF is also working as OFF and no error is coming'; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = TTRUE; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = FELSE; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = -1024; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = 65536; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = 65530.34; --Error ER_WRONG_VALUE_FOR_VAR SET @@global.log_bin_trust_routine_creators = test; --echo '#------------------FN_DYNVARS_064_06-----------------------#' ############################################################################### # Check if the value in GLOBAL & SESSION Tables matches value in variable # ############################################################################### SELECT @@global.log_bin_trust_routine_creators = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='log_bin_trust_routine_creators'; --Error ER_INCORRECT_GLOBAL_LOCAL_VAR SELECT @@session.log_bin_trust_routine_creators = VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='log_bin_trust_routine_creators'; --echo '#---------------------FN_DYNVARS_064_07----------------------#' ################################################################################# # Check if accessing variable with and without GLOBAL point to same variable # ################################################################################# SET @@global.log_bin_trust_routine_creators = TRUE; SELECT @@log_bin_trust_routine_creators = @@global.log_bin_trust_routine_creators; --echo '#---------------------FN_DYNVARS_064_08----------------------#' ################################################################### # Check if variable can be accessed with and without @@ sign # ################################################################### SET @@global.log_bin_trust_routine_creators = TRUE; SELECT @@log_bin_trust_routine_creators; --Error ER_UNKNOWN_TABLE SELECT local.log_bin_trust_routine_creators; --Error ER_UNKNOWN_TABLE SELECT session.log_bin_trust_routine_creators; --Error ER_BAD_FIELD_ERROR SELECT log_bin_trust_routine_creators = @@session.log_bin_trust_routine_creators; #################################### # Restore initial value # #################################### SET @@global.log_bin_trust_routine_creators = @start_global_value; SELECT @@global.log_bin_trust_routine_creators; ################################################################### # END OF log_bin_trust_routine_creators TESTS # ###################################################################