mirror of
https://github.com/MariaDB/server.git
synced 2025-05-25 13:42:52 +03:00
169 lines
7.5 KiB
Plaintext
169 lines
7.5 KiB
Plaintext
####################### mysql-test\t\pseudo_slave_mode_basic.test ###################
|
||
# #
|
||
# Variable Name: pseudo_slave_mode #
|
||
# Scope: SESSION #
|
||
# Access Type: Dynamic #
|
||
# Data Type: boolean #
|
||
# Default Value: #
|
||
# Valid Values: 0,1 #
|
||
# #
|
||
# #
|
||
# Creation Date: 2012-11-16 #
|
||
# #
|
||
# Description: Test Cases of Dynamic System Variable pseudo_slave_mode #
|
||
# 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.5/en/ #
|
||
# server-system-variables.html #
|
||
# #
|
||
###############################################################################
|
||
|
||
--source include/load_sysvars.inc
|
||
|
||
########################################################################
|
||
# START OF pseudo_slave_mode TESTS #
|
||
########################################################################
|
||
|
||
|
||
##############################################################################
|
||
# Saving initial value of pseudo_slave_mode in a temporary variable #
|
||
##############################################################################
|
||
|
||
SET @session_start_value = @@session.pseudo_slave_mode;
|
||
SELECT @session_start_value;
|
||
|
||
--echo '#--------------------FN_DYNVARS_156_01------------------------#'
|
||
########################################################################
|
||
# Display the DEFAULT value of pseudo_slave_mode #
|
||
########################################################################
|
||
|
||
SET @@session.pseudo_slave_mode = 0;
|
||
SET @@session.pseudo_slave_mode = DEFAULT;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
SET @@session.pseudo_slave_mode = 1;
|
||
SET @@session.pseudo_slave_mode = DEFAULT;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
|
||
--echo '#---------------------FN_DYNVARS_156_02-------------------------#'
|
||
#############################################################################
|
||
# Check if pseudo_slave_mode can be accessed with and without @@ sign #
|
||
#############################################################################
|
||
|
||
SET pseudo_slave_mode = 1;
|
||
SELECT @@pseudo_slave_mode;
|
||
|
||
--Error ER_UNKNOWN_TABLE
|
||
SELECT session.pseudo_slave_mode;
|
||
|
||
--Error ER_UNKNOWN_TABLE
|
||
SELECT local.pseudo_slave_mode;
|
||
|
||
SET session pseudo_slave_mode = 0;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
|
||
--echo '#--------------------FN_DYNVARS_156_03------------------------#'
|
||
########################################################################
|
||
# change the value of pseudo_slave_mode to a valid value #
|
||
########################################################################
|
||
|
||
SET @@session.pseudo_slave_mode = 0;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
SET @@session.pseudo_slave_mode = 1;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
|
||
--echo '#--------------------FN_DYNVARS_156_04-------------------------#'
|
||
###########################################################################
|
||
# Change the value of pseudo_slave_mode to invalid value #
|
||
###########################################################################
|
||
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = -1;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = 2;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = "T";
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = "Y";
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = TR<54>E;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = <20>N;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = OF;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = <20>FF;
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = '<27>';
|
||
--Error ER_WRONG_VALUE_FOR_VAR
|
||
SET @@session.pseudo_slave_mode = NO;
|
||
|
||
|
||
--echo '#-------------------FN_DYNVARS_156_05----------------------------#'
|
||
###########################################################################
|
||
# Test if accessing global pseudo_slave_mode gives error #
|
||
###########################################################################
|
||
|
||
--error ER_LOCAL_VARIABLE
|
||
SET @@global.pseudo_slave_mode = 0;
|
||
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||
SELECT @@global.pseudo_slave_mode;
|
||
|
||
--echo '#----------------------FN_DYNVARS_156_06------------------------#'
|
||
#########################################################################
|
||
# Check if the value in SESSION Table contains variable value #
|
||
#########################################################################
|
||
|
||
SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='pseudo_slave_mode';
|
||
|
||
--echo '#----------------------FN_DYNVARS_156_07------------------------#'
|
||
#########################################################################
|
||
# Check if the value in SESSION Table matches value in variable #
|
||
#########################################################################
|
||
|
||
SELECT IF(@@session.pseudo_slave_mode, "ON", "OFF") = VARIABLE_VALUE
|
||
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
|
||
WHERE VARIABLE_NAME='pseudo_slave_mode';
|
||
SELECT @@session.pseudo_slave_mode;
|
||
SELECT VARIABLE_VALUE
|
||
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
|
||
WHERE VARIABLE_NAME='pseudo_slave_mode';
|
||
|
||
--echo '#---------------------FN_DYNVARS_156_08-------------------------#'
|
||
###################################################################
|
||
# Check if ON and OFF values can be used on variable #
|
||
###################################################################
|
||
|
||
SET @@session.pseudo_slave_mode = OFF;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
SET @@session.pseudo_slave_mode = ON;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
--echo '#---------------------FN_DYNVARS_156_09----------------------#'
|
||
###################################################################
|
||
# Check if TRUE and FALSE values can be used on variable #
|
||
###################################################################
|
||
|
||
SET @@session.pseudo_slave_mode = TRUE;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
SET @@session.pseudo_slave_mode = FALSE;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
##############################
|
||
# Restore initial value #
|
||
##############################
|
||
|
||
SET @@session.pseudo_slave_mode = @session_start_value;
|
||
SELECT @@session.pseudo_slave_mode;
|
||
|
||
###############################################################
|
||
# END OF pseudo_slave_mode TESTS #
|
||
###############################################################
|