MINI MINI MANI MO

Path : /opt/mysql/mysql-test/suite/sys_vars/t/
File Upload :
Current File : //opt/mysql/mysql-test/suite/sys_vars/t/session_track_state_change_basic.test

--source include/not_embedded.inc

--echo #
--echo # Variable name : session_track_state_change
--echo # Scope         : Global & Session
--echo #

--echo # Global - default
SELECT @@global.session_track_state_change;
--echo # Session - default
SELECT @@session.session_track_state_change;
--echo

--echo # via INFORMATION_SCHEMA.GLOBAL_VARIABLES
--disable_warnings
SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE '%track_state_change%';
--enable_warnings

--echo # via INFORMATION_SCHEMA.SESSION_VARIABLES
--disable_warnings
SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE '%track_state_change%';
--enable_warnings

# Save the global value to be used to restore the original value.
SET @global_saved_tmp =  @@global.session_track_state_change;
--echo

--echo # Altering global variable's value
SET @@global.session_track_state_change = 0;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;

SET @@global.session_track_state_change = TrUe;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;

SET @@global.session_track_state_change = FaLsE;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Altering session variable's value
SET @@session.session_track_state_change = 0;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Variables' values in a new session.
connect (con1,"127.0.0.1",root,,test,$MASTER_MYPORT,);

--echo # Global - expect 0
SELECT @@global.session_track_state_change;
--echo
--echo # Session - expect 0
SELECT @@session.session_track_state_change;
--echo

--echo # Switching to the default connection.
connection default;

SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Test if DEFAULT is working as expected.
SET @@global.session_track_state_change = DEFAULT;
SET @@session.session_track_state_change = DEFAULT;
--echo

--echo # Global - expect 0
SELECT @@global.session_track_state_change;
--echo # Session - expect 0
SELECT @@session.session_track_state_change;
--echo

--echo # Variables' values in a new session (con2).
connect (con2,"127.0.0.1",root,,test,$MASTER_MYPORT,);

SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Altering session should not affect global.
SET @@session.session_track_state_change = FALSE;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Variables' values in a new session (con3).
connect (con3,"127.0.0.1",root,,test,$MASTER_MYPORT,);

--echo # Altering global should not affect session.
SET @@global.session_track_state_change = OFF;
SELECT @@global.session_track_state_change;
SELECT @@session.session_track_state_change;
--echo

--echo # Switching to the default connection.
connection default;

--echo # Restoring the original values.
SET @@global.session_track_state_change = @global_saved_tmp;

--echo # End of tests.


OHA YOOOO