include/master-slave.inc [connection master] call mtr.add_suppression("Recovery from master pos .*"); call mtr.add_suppression("Error in Log_event::read_log_event()"); call mtr.add_suppression("Failed to read information on Previous GTIDs."); call mtr.add_suppression("Error reading GTIDs from binary log"); include/rpl_set_gtid_mode.inc CREATE TABLE t1(id INTEGER) ENGINE= Innodb; ==== Part 1 ==== include/rpl_reset.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ==== Part 2 ==== include/rpl_reset.inc include/stop_slave.inc SET GLOBAL debug="d,rotate_slave_debug_group"; include/start_slave.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ==== Part 3 ==== include/rpl_reset.inc include/stop_slave.inc SET GLOBAL debug=""; include/start_slave.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ==== Part 4 ==== include/rpl_reset.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=1 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=1 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=1 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; extra/rpl_tests/rpl_check_gtid.inc include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=1 gtids=on] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ==== Part 5 ==== ---- i=1 ---- include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; include/start_slave.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; include/start_slave.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; include/start_slave.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; include/start_slave.inc BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; FLUSH LOGS; ==== Part 6 ==== include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; CHANGE MASTER TO MASTER_AUTO_POSITION= 1, MASTER_LOG_FILE= 'master-bin.000001', MASTER_LOG_POS= 4; ERROR HY000: Parameters MASTER_LOG_FILE, MASTER_LOG_POS, RELAY_LOG_FILE and RELAY_LOG_POS cannot be set when MASTER_AUTO_POSITION is active. include/start_slave.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1'); SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-2'); extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc CHANGE MASTER TO MASTER_HOST= 'SLAVE_MASTER_HOST', MASTER_AUTO_POSITION= 1; include/start_slave.inc FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-3', 300); SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-4', 300); extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc CHANGE MASTER TO MASTER_HOST= 'SLAVE_MASTER_HOST', MASTER_AUTO_POSITION= 1; include/start_slave.inc FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-5'); SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-6'); extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc CHANGE MASTER TO MASTER_HOST= 'SLAVE_MASTER_HOST', MASTER_AUTO_POSITION= 1; include/start_slave.inc FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-7', 300); SELECT WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS('MASTER_UUID:1-8', 300); extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc CHANGE MASTER TO MASTER_HOST= 'SLAVE_MASTER_HOST', MASTER_AUTO_POSITION= 1; include/start_slave.inc FLUSH LOGS; ==== Part 7 ==== include/stop_slave.inc RESET SLAVE; RESET MASTER; RESET MASTER; CHANGE MASTER TO MASTER_HOST= 'SLAVE_MASTER_HOST', MASTER_AUTO_POSITION= 1; ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; START SLAVE UNTIL SQL_BEFORE_GTIDS= "MASTER_UUID:2"; include/wait_for_slave_sql_to_stop.inc include/stop_slave.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; START SLAVE UNTIL SQL_BEFORE_GTIDS= "MASTER_UUID:4"; include/wait_for_slave_sql_to_stop.inc include/stop_slave.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; START SLAVE UNTIL SQL_BEFORE_GTIDS= "MASTER_UUID:6"; include/wait_for_slave_sql_to_stop.inc include/stop_slave.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; START SLAVE UNTIL SQL_BEFORE_GTIDS= "MASTER_UUID:8"; include/wait_for_slave_sql_to_stop.inc include/stop_slave.inc extra/rpl_tests/rpl_check_gtid.inc FLUSH LOGS; ==== Part 8 ==== include/stop_slave.inc Warnings: Note 1255 Slave already has been stopped RESET MASTER; RESET SLAVE; CHANGE MASTER TO MASTER_HOST= '127.0.0.1', MASTER_AUTO_POSITION= 0; RESET MASTER; include/start_slave.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,skip_writing_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,skip_writing_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,skip_writing_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,skip_writing_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ==== Part 9 ==== include/rpl_reset.inc ---- i=1 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,write_partial_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=2 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,write_partial_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=3 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,write_partial_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; ---- i=4 ---- BEGIN; INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(2); COMMIT; include/sync_slave_sql_with_master.inc extra/rpl_tests/rpl_check_gtid.inc extra/rpl_tests/rpl_check_gtid.inc include/stop_slave.inc include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1 --debug=d,write_partial_previous_gtids_log_event] include/rpl_restart_server.inc [server_number=2 gtids=on parameters: --relay-log-recovery=1] include/start_slave.inc FLUSH LOGS; FLUSH LOGS; include/rpl_reset.inc DROP TABLE t1; include/rpl_end.inc