Current Path : /home/usr.opt/mysql57/mysql-test/suite/rpl/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 : //home/usr.opt/mysql57/mysql-test/suite/rpl/t/rpl_gtid_table_repository_split_trx.test |
# ==== Purpose ==== # # This test case will verify that applier works correctly (writing the slave # rpl info on table and also storing GTIDs on table) when a relay log split # a transaction letting the GTID event in one relay log file and the rest of # the transaction on the next relay log file. The reported issue happened when # log-slave-updates was off and relay-log-info-repository was set to TABLE, # both defined at test case '-slave.opt' file. # # The test case will generate a stream of events with two "transactions" and # will flush the slave relay log once queuing the second GTID event received. # # After syncing the receiver thread, the test case will start the applier # thread to ensure its proper behavior. # # ==== Related Bugs and Worklogs ==== # # BUG#20451386 SQL THREAD CRASH: LOG-SLAVE-UPDATES OFF, RELAY LOG ENDS # WITH GTID_LOG_EVENT # This test should run only on debug build --source include/have_debug.inc # This test uses debug sync to stop the IO thread in the middle of a transaction --source include/have_debug_sync.inc --source include/have_innodb.inc --source include/have_binlog_format_statement.inc --source include/have_gtid.inc --let $rpl_skip_start_slave= 1 --source include/master-slave.inc # Create a table and insert some data CREATE TABLE t1 (c1 INT) ENGINE= InnoDB; INSERT INTO t1 VALUES (1); ### ### Flush the relay log after the second GTID is received ### --source include/rpl_connection_slave.inc --let $rpl_after_received_events_action= flush --let $rpl_event_count= 2 --let $rpl_count_only_event_type= Gtid --source include/rpl_receive_event_count.inc # Sync the receiver thread with the master --source include/rpl_connection_master.inc --source include/sync_slave_io_with_master.inc # Now start the applier thread --source include/start_slave_sql.inc --source include/rpl_connection_master.inc --source include/sync_slave_sql_with_master.inc # Cleanup --source include/rpl_connection_master.inc DROP TABLE t1; --source include/rpl_end.inc