1#
2# Bug #21143276	HANGING DUE TO ASYNC_ROLLBACK
3#
4CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
5INSERT INTO t1 VALUES (0);
6START TRANSACTION;
7insert into t1 values(1);
8UPDATE t1 SET c1=2 WHERE c1=0;
9SET DEBUG_SYNC='ha_innobase_info_low SIGNAL update_cmd WAIT_FOR enter_innodb';
10select * from t1;
11
12# On connection 1
13include/start_transaction_high_prio.inc
14START TRANSACTION /* HIGH PRIORITY */;
15set debug_sync='now WAIT_FOR update_cmd';
16select * from t1;
17c1
180
19SET DEBUG_SYNC='trx_kill_blocking_enter SIGNAL enter_innodb';
20UPDATE t1 SET c1=2 WHERE c1=0;
21commit;
22ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
23commit;
24select * from t1;
25c1
262
27DROP TABLE t1;
28#
29# Bug #25032066: PREPARED TRANSACTION SHOULD NOT BE ROLLED BACK
30#
31CREATE TABLE t1(col1 int PRIMARY KEY, col2 int);
32INSERT INTO t1 VALUES(1, 10);
33XA START 'xid1';
34UPDATE t1 SET col2 = 20;
35XA END 'xid1';
36XA PREPARE 'xid1';
37include/start_transaction_high_prio.inc
38START TRANSACTION /* HIGH PRIORITY */;
39UPDATE t1 SET col2 = 30 WHERE col2 = 10;;
40XA COMMIT 'xid1';
41COMMIT;
42SELECT * FROM t1;
43col1	col2
441	20
45DROP TABLE t1;
46