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_reset_slave_all.test |
--source include/not_group_replication_plugin.inc --source include/have_binlog_format_row.inc --source include/master-slave.inc ############################################################################### # BUG#21107331 RESET SLAVE ALL DOESN'T RESETS SLAVE_RETRIED_TRANSACTIONS # BUG#21111229 RESET SLAVE ALL BEHAVES DIFFERENT FOR DEFAULT AND # NON-DEFAULT CHANNELS # # Verify that slave_retried_transactions is reset to 0 after RESET SLAVE ALL # Step 1. Generates an innodb row lock timeout to increase # slave_retried_transactions # Step 2. RESET SLAVE # Step 3. check slave_retried_transactions is 0 ############################################################################### CREATE TABLE t1 (c1 INT KEY) ENGINE=InnoDB; # It is used by the CHANGE MASTER below --source include/save_binlog_position.inc --source include/sync_slave_sql_with_master.inc --source include/stop_slave.inc SET @saved_slave_transaction_retries = @@GLOBAL.slave_transaction_retries; SET @saved_innodb_lock_wait_timeout = @@GLOBAL.innodb_lock_wait_timeout; SET GLOBAL slave_transaction_retries = 1; SET GLOBAL innodb_lock_wait_timeout = 1; --source include/start_slave.inc # It blocks slave applier which applies INSERT INTO t1 VALUES(1); BEGIN; INSERT INTO t1 VALUES(1); --source include/rpl_connection_master.inc INSERT INTO t1 VALUES(1); # Slave sql stops after retrying the transaction 1 times. --source include/rpl_connection_slave1.inc --let $slave_sql_errno=1205 --source include/wait_for_slave_sql_error.inc --source include/stop_slave_io.inc # The warnings are generated by MTS CALL mtr.add_suppression(".*worker thread retried transaction 1 time.*"); CALL mtr.add_suppression(".*The slave coordinator and worker threads are " "stopped, possibly leaving data in inconsistent.*"); --let $assert_text= slave_retried_transactions should be greater than 0 --let $assert_status_name= slave_retried_transactions --let $assert_status_value= 0 --let $assert_comparator= >= --source include/assert_status.inc RESET SLAVE ALL; --let $assert_text= slave_retried_transactions should be 0 --let $assert_status_name= slave_retried_transactions --let $assert_status_value= 0 --source include/assert_status.inc --source include/rpl_connection_slave.inc # rollback the INSERT which is used to block slave applier. ROLLBACK; --echo # --echo # Cleanup --echo # SET GLOBAL slave_transaction_retries = @saved_slave_transaction_retries; SET GLOBAL innodb_lock_wait_timeout = @saved_innodb_lock_wait_timeout; --replace_result $binlog_file BINLOG_FILE $binlog_position BINLOG_POS $MASTER_MYPORT MASTER_PORT eval CHANGE MASTER TO MASTER_LOG_FILE = "$binlog_file", MASTER_LOG_POS = $binlog_position, MASTER_USER='root', MASTER_HOST='127.0.0.1', MASTER_PORT=$MASTER_MYPORT; --source include/start_slave.inc --source include/rpl_connection_master.inc DROP TABLE t1; --source include/rpl_end.inc