Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Critical
-
Resolution: Not a Bug
-
Affects Version/s: 10.0.2
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
Description
the replication broken when use the xa transaction
master
mysql> create table t(id int auto_increment primary key, a int) engine=innodb; mysql> xa start '111'; mysql> insert into t(a) values(1); mysql> xa end '111'; mysql> xa prepare '111'; kill -9 master_pid
restart the master
mysql> xa recover; +----------+--------------+--------------+------+ | formatID | gtrid_length | bqual_length | data | +----------+--------------+--------------+------+ | 1 | 3 | 0 | 111 | +----------+--------------+--------------+------+ mysql> xa commit '111'; mysql> select * from t; Empty set (0.00 sec)
why? I did the xa commit '111', but no result return, maybe another bug?
do the test continue
mysql> xa start '222'; mysql> insert into t(a) values(2); mysql> xa end '222'; mysql> prepare '222'; mysql> xa commit '111'; mysql> select * from t; +----+------+ | id | a | +----+------+ | 1 | 1 | | 2 | 2 | +----+------+
value(1,1) return at this time, why?
what's happen on the slave?
mysql> select * from t; +----+------+ | id | a | +----+------+ | 2 | 2 | +----+------+
the replication is broken now!!
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
the replication broken when use the xa transaction
master
mysql> create table t(id int auto_increment primary key, a int) engine=innodb;
mysql> xa start '111';
mysql> insert into t(a) values(1);
mysql> xa end '111';
mysql> xa prepare '111';
kill -9 master_pid
restart the master
mysql> xa recover;
---------
-----------------------------+---------
-----------------------------+---------
-----------------------------+mysql> xa commit '111';
mysql> select * from t;
Empty set (0.00 sec)
why? I did the xa commit '111', but no result return, maybe another bug?
do the test continue
mysql> xa start '222';
mysql> insert into t(a) values(2);
mysql> xa end '222';
mysql> prepare '222';
mysql> xa commit '111';
mysql> select * from t;
---
-----+---
-----+---
-----+value(1,1) return at this time, why?
what's hanppen on the slave?
mysql> select * from t;
---
-----+---
-----+---
-----+the replication is broken now!!