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/enforce_gtid_consistency_basic.test |
--source include/not_embedded.inc --source include/not_gtid_enabled.inc # default value RESET MASTER; SET @start_global_value = @@global.enforce_gtid_consistency; SELECT @start_global_value; # # exists as global only # select @@global.enforce_gtid_consistency; --error ER_INCORRECT_GLOBAL_LOCAL_VAR select @@session.enforce_gtid_consistency; show global variables like 'enforce_gtid_consistency'; show session variables like 'enforce_gtid_consistency'; --disable_warnings select * from information_schema.global_variables where variable_name='enforce_gtid_consistency'; select * from information_schema.session_variables where variable_name='enforce_gtid_consistency'; --enable_warnings # # show that it is global writable # test all settable values # --disable_warnings set global enforce_gtid_consistency= 1; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= 0; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= 2; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= ON; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= OFF; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= TRUE; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= FALSE; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; set global enforce_gtid_consistency= WARN; select @@global.enforce_gtid_consistency; show variables like 'enforce_gtid_consistency'; select variable_value from information_schema.global_variables where variable_name= 'enforce_gtid_consistency'; --enable_warnings --error ER_GLOBAL_VARIABLE set session enforce_gtid_consistency= 1; --error ER_INCORRECT_GLOBAL_LOCAL_VAR select @@session.enforce_gtid_consistency; --error ER_WRONG_VALUE_FOR_VAR set global enforce_gtid_consistency= -1; --error ER_WRONG_VALUE_FOR_VAR set global enforce_gtid_consistency= 3; --error ER_WRONG_VALUE_FOR_VAR set global enforce_gtid_consistency= NULL; --error ER_WRONG_VALUE_FOR_VAR set global enforce_gtid_consistency= ''; set global enforce_gtid_consistency= default; # can't set anything else than ON when gtid_mode=ON set global enforce_gtid_consistency= ON; set global gtid_mode=off_permissive; set global gtid_mode=on_permissive; set global gtid_mode=on; --error ER_GTID_MODE_ON_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON set global enforce_gtid_consistency= WARN; --error ER_GTID_MODE_ON_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON set global enforce_gtid_consistency= OFF; set global enforce_gtid_consistency= ON; set global enforce_gtid_consistency= TRUE; set global enforce_gtid_consistency= 1; set global gtid_mode=on_permissive; set global gtid_mode=off_permissive; # test enforce_gtid_consistency changes with autocommit off CREATE TABLE t1 (a INT); SET AUTOCOMMIT = 0; ## Confirm that enforce_gtid_consistency cannot be changed when a transaction ## is in progress and gtid_next is set to 'UUID:No'. SET SESSION GTID_NEXT = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:1'; INSERT INTO t1 VALUES (1); # transaction in progress, gtid_mode variable cannot be changed --error ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION SET GLOBAL ENFORCE_GTID_CONSISTENCY = 'off'; COMMIT; ## Confirm that enforce_gtid_consistency cannot be changed when gtid_mode is ## set to 'UUID:No'. SET SESSION GTID_NEXT = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:2'; # GTID_NEXT was set, enforce_gtid_consistency variable cannot be changed --error ER_CANT_SET_VARIABLE_WHEN_OWNING_GTID SET GLOBAL ENFORCE_GTID_CONSISTENCY = 'off'; COMMIT; ## Confirm that enforce_gtid_consistency cannot be changed during an anonymous ## transaction. SET GTID_NEXT = 'ANONYMOUS'; --error ER_CANT_SET_VARIABLE_WHEN_OWNING_GTID SET GLOBAL ENFORCE_GTID_CONSISTENCY = 'off'; COMMIT; # Set back to default and cleanup SET AUTOCOMMIT = 1; SET SESSION GTID_NEXT = 'AUTOMATIC'; SET GLOBAL GTID_MODE = 'off'; DROP TABLE t1; set global enforce_gtid_consistency= @start_global_value; # # See binlog_enforce_gtid_consistency.test for a comprehensive test case. #