Skip to content

XA transaction will execute failed,when xa rollback is abnormal submitted #335

@FlyingMao

Description

@FlyingMao

steps:

mysql> set xa=on;
Query OK, 0 rows affected (0.00 sec)

mysql> select * from a_test;
+----+------+---------------+-----+
| id | t_id | name          | pad |
+----+------+---------------+-----+
|  1 |    1 | test中id为1   |  88 |
|  5 |    5 | test...5      |  88 |
|  3 |    3 | test中id为3   |  88 |
|  4 |    4 | $test$4       |  88 |
|  2 |    2 | test_2        |  88 |
|  6 |    6 | test6         |  88 |
+----+------+---------------+-----+
6 rows in set (0.04 sec)

mysql> update a_test set pad=66;
Query OK, 6 rows affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> rollback;
Query OK, 0 rows affected (1 min 39.99 sec)

mysql> select * from a_test;
ERROR 1105 (HY000): XAER_DUPID: The XID already exists

general log:

2017-11-21T09:40:31.827131Z   57 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
2017-11-21T09:40:31.827353Z   57 Query	SET autocommit=0;
2017-11-21T09:40:31.827419Z   57 Query	XA START 'Dble_Server.1.8.db1';
2017-11-21T09:40:31.827555Z   57 Query	SELECT *
FROM a_test
LIMIT 100
2017-11-21T09:40:31.828429Z   58 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
2017-11-21T09:40:31.828521Z   58 Query	SET autocommit=0;
2017-11-21T09:40:31.828603Z   58 Query	XA START 'Dble_Server.1.8.db2';
2017-11-21T09:40:31.828678Z   58 Query	SELECT *
FROM a_test
LIMIT 100
2017-11-21T09:40:35.197825Z   57 Query	update a_test set pad=66
2017-11-21T09:40:35.199025Z   58 Query	update a_test set pad=66
2017-11-21T09:40:40.340776Z   58 Query	XA END 'Dble_Server.1.8.db2'
2017-11-21T09:40:40.341160Z   57 Query	XA END 'Dble_Server.1.8.db1'
2017-11-21T09:41:16.378627Z   50 Query	select user()
2017-11-21T09:42:16.393177Z   65 Connect	test@10.186.24.44 on db2 using TCP/IP
2017-11-21T09:42:16.396352Z   53 Query	select user()
2017-11-21T09:42:20.343622Z   58 Query	XA ROLLBACK 'Dble_Server.1.8.db2'
2017-11-21T09:43:06.395343Z   60 Init DB	db1
2017-11-21T09:43:06.395702Z   60 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
2017-11-21T09:43:06.395928Z   60 Query	SET autocommit=0;
2017-11-21T09:43:06.396109Z   60 Query	XA START 'Dble_Server.1.8.db1';
2017-11-21T09:43:06.402526Z   56 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
2017-11-21T09:43:06.402854Z   56 Query	SET autocommit=0;
2017-11-21T09:43:06.402984Z   56 Query	XA START 'Dble_Server.1.8.db2';
2017-11-21T09:43:06.403200Z   56 Query	SELECT *
FROM a_test
LIMIT 100
2017-11-21T09:43:16.379026Z   50 Query	select user()

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions