# ==== Purpose ==== # # Test verifies that server shutdown doesn't hang when # # * Gtid's are enabled. # * AUTOCOMMIT=0 # * super_read_only=ON # # ==== Implementation ==== # # Do some operations on master like CREATE/INSERT so that GTIDs are generated. # Shutdown and restart the server. # Shutdown should not hang. # Upon restart verify the content of 'gtid_executed' table. # # ==== References ==== # # Bug#28183718: CANNOT SHUTDOWN MYSQLD WHEN LAST BINLOG HAS # GTIDS TO SAVE AND AUTOCOMMIT=0 # # For reseting mysql.gtid_executed table RESET MASTER; CREATE TABLE t (f INT PRIMARY KEY); INSERT INTO t VALUES (10); SET GLOBAL autocommit= 0; SET GLOBAL super_read_only= ON; --source include/restart_mysqld.inc --let $master_uuid= `SELECT @@GLOBAL.SERVER_UUID` --echo # --echo # Verify that we can get correct gtid sets after server restarts --echo # --let $assert_text= committed gtid set is MASTER_UUID:1-2 --let $assert_cond= @@GLOBAL.GTID_EXECUTED = "$master_uuid:1-2" --source include/assert.inc --replace_result $master_uuid MASTER_UUID SELECT * FROM mysql.gtid_executed; DROP TABLE t; # Cleanup RESET MASTER;