mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-36116: Remove debug assert in TOI when executing thread is killed
Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
This commit is contained in:
committed by
Julius Goryavsky
parent
d698b784c8
commit
dd54ce9e10
22
mysql-test/suite/galera/r/MDEV-36116.result
Normal file
22
mysql-test/suite/galera/r/MDEV-36116.result
Normal file
@@ -0,0 +1,22 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
connect con1,127.0.0.1,root,,test,$NODE_MYPORT_1;
|
||||
connection node_1;
|
||||
CALL mtr.add_suppression("CREATE TABLE isolation failure");
|
||||
SET DEBUG_SYNC = 'wsrep_kill_thd_before_enter_toi SIGNAL may_kill WAIT_FOR continue';
|
||||
CREATE TABLE t1 (a INT) ENGINE=InnoDB;
|
||||
connection con1;
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR may_kill';
|
||||
SET DEBUG_SYNC = 'now SIGNAL continue';
|
||||
connection node_1;
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
connection node_2;
|
||||
SHOW TABLES LIKE 't1';
|
||||
Tables_in_test (t1)
|
||||
connection con1;
|
||||
SHOW TABLES LIKE 't1';
|
||||
Tables_in_test (t1)
|
||||
SET DEBUG_SYNC = 'RESET';
|
||||
disconnect con1;
|
||||
disconnect node_2;
|
||||
disconnect node_1;
|
43
mysql-test/suite/galera/t/MDEV-36116.test
Normal file
43
mysql-test/suite/galera/t/MDEV-36116.test
Normal file
@@ -0,0 +1,43 @@
|
||||
#
|
||||
# MDEV-36116: TOI crashes in debug assert if executing thread is killed.
|
||||
#
|
||||
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug_sync.inc
|
||||
--source include/have_debug.inc
|
||||
|
||||
--connect con1,127.0.0.1,root,,test,$NODE_MYPORT_1
|
||||
|
||||
# Start TOI operation and wait for the thread to be killed.
|
||||
--connection node_1
|
||||
CALL mtr.add_suppression("CREATE TABLE isolation failure");
|
||||
|
||||
--let $connection_id = `SELECT CONNECTION_ID()`
|
||||
SET DEBUG_SYNC = 'wsrep_kill_thd_before_enter_toi SIGNAL may_kill WAIT_FOR continue';
|
||||
--send
|
||||
CREATE TABLE t1 (a INT) ENGINE=InnoDB;
|
||||
|
||||
# Kill the thread and let it continue.
|
||||
--connection con1
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR may_kill';
|
||||
--disable_query_log
|
||||
--eval KILL CONNECTION $connection_id
|
||||
--enable_query_log
|
||||
SET DEBUG_SYNC = 'now SIGNAL continue';
|
||||
|
||||
--connection node_1
|
||||
--error 2013
|
||||
--reap
|
||||
|
||||
# Verify no tables created on either nodes.
|
||||
--connection node_2
|
||||
SHOW TABLES LIKE 't1';
|
||||
|
||||
--connection con1
|
||||
SHOW TABLES LIKE 't1';
|
||||
|
||||
# Cleanup
|
||||
SET DEBUG_SYNC = 'RESET';
|
||||
--disconnect con1
|
||||
--source include/galera_end.inc
|
Reference in New Issue
Block a user