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_xa_one_phase_error.test |
############################################################################### # Bug#24812958: REPLICATION ERROR OCCURS, USE XA TRANSACTION(ONE PHASE) # # Problem: # ======= # Use XA transaction and execute DELETE or UPDATE statement. # If `0 rows affected`, replication error occurs. # But over 1 rows affected, replication error doesn't occur. # And if use `XA PREPARE` (not use `ONE PHASE`), replication error doesnot # occur. # # Test: # ===== # 1) Start an XA transaction named 'xatest' on master. # 2) Execute DML operation such that '0' rows are affected. # 3) Execute XA COMMIT 'xatest' ONE PHASE. # 4) On slave wait till the above XA COMMIT 'xatest' ONE PHASE command is # executed. # 5) Verify that slave server doesn't fail with 'ER_XAER_RMFAIL' error. ############################################################################### --source include/have_binlog_format_statement.inc --source include/master-slave.inc # Suppression of error messages CALL mtr.add_suppression('Unsafe statement written to the binary log using statement format'); CREATE TABLE t1 ( id int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (id)) ENGINE=InnoDB; XA START 'xatest'; --disable_warnings ONCE DELETE FROM t1 where id=1; XA END 'xatest'; XA COMMIT 'xatest' ONE PHASE; --source include/sync_slave_sql_with_master.inc --let diff_tables=master:test.t1, slave:test.t1 --source include/diff_tables.inc --source include/rpl_connection_master.inc DROP TABLE t1; --source include/rpl_end.inc