# # This test checks that the client gets an error for a BF abort, # specifically when it gets detected inside the wsrep_after_statement hook # --source include/have_innodb.inc --source include/galera_cluster.inc --source include/have_debug_sync.inc --connection node_1 CREATE TABLE t1 (id INT PRIMARY KEY, val INT); INSERT INTO t1 VALUES (1, 1); --connection node_2 START TRANSACTION; SET DEBUG_SYNC = 'wsrep_after_statement_enter SIGNAL blocked WAIT_FOR continue'; --send UPDATE t1 SET val=2 WHERE id=1 --connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2 SET DEBUG_SYNC = 'now WAIT_FOR blocked'; --connection node_1 # cause BF abort on other node UPDATE t1 SET val=3 WHERE id=1; --connection node_2a SET DEBUG_SYNC = 'now SIGNAL continue'; --connection node_2 # check we get BF aborted --error ER_LOCK_DEADLOCK --reap COMMIT; SET DEBUG_SYNC = 'RESET'; --connection node_1 DROP TABLE t1;