Current Path : /home/usr.opt/mysql57/mysql-test/suite/innodb/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/innodb/t/high_prio_trx_rpl.test |
# Scenario: High prio setup with replication. # T1 and T2 run on master. # T1= ({R(B), W(B)}, ) # T2= ({R(B), W(B), C}, HIGH PRIORITY) # # Outcome: T2 completes and T1 abort.T2 is replicated to slave. --source include/not_embedded.inc --source include/have_innodb.inc --source include/master-slave.inc --source include/count_sessions.inc CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY) ENGINE=InnoDB; INSERT INTO t1 VALUES (0); --connect(con1, localhost,root,,test,$MASTER_MYPORT) --echo --echo # On connection master --connection master START TRANSACTION; UPDATE t1 SET c1=1 WHERE c1=0; --echo --echo # On connection con1 --connection con1 --source include/start_transaction_high_prio.inc UPDATE t1 SET c1=2 WHERE c1=0; COMMIT; --echo --echo # On connection master --connection master --error ER_ERROR_DURING_COMMIT COMMIT; --echo # Row with value 2 is expected on master. SELECT * FROM t1; --source include/sync_slave_sql_with_master.inc -- connection slave --echo # Row with value 2 is expected on slave. SELECT * FROM t1; --echo # --echo # Bug#23021168 REPLICATION STOPS AFTER TRANSACTION IS ROLLED BACK --echo # ASYNCHRONOUSLY IN MASTER --echo # --echo --echo # On connection master --connection master START TRANSACTION; INSERT INTO t1 VALUES (1); --echo --echo # On connection con1 --connection con1 --source include/start_transaction_high_prio.inc INSERT INTO t1 VALUES (1); COMMIT; SELECT * FROM t1 ORDER BY c1; --echo --echo # On connection master --connection master --error ER_LOCK_DEADLOCK INSERT INTO t1 VALUES (3); ## This will hit ER_LOCK_DEADLOCK INSERT INTO t1 VALUES (4); ## This will succeed. COMMIT; --source include/sync_slave_sql_with_master.inc -- connection slave --echo # Rows 1, 2, 3 & 4 is expected on slave. SELECT * FROM t1 ORDER BY c1; --disconnect con1 --echo --echo # On connection master -- connection master DROP TABLE t1; --source include/wait_until_count_sessions.inc --source include/sync_slave_sql_with_master.inc --source include/rpl_end.inc