mirror of
https://github.com/MariaDB/server.git
synced 2025-11-27 05:41:41 +03:00
53 lines
1.5 KiB
Plaintext
53 lines
1.5 KiB
Plaintext
#
|
|
# MDEV-22707 galera got stuck after flush tables
|
|
#
|
|
|
|
--source include/galera_cluster.inc
|
|
--source include/have_innodb.inc
|
|
--source include/have_debug.inc
|
|
--source include/have_debug_sync.inc
|
|
--source include/galera_have_debug_sync.inc
|
|
|
|
CREATE TABLE t1(f2 INT) ENGINE=InnoDB;
|
|
|
|
--connect node_1_applier_thd, 127.0.0.1, root, , test, $NODE_MYPORT_1
|
|
SET GLOBAL debug_dbug = "+d,sync.wsrep_apply_cb";
|
|
|
|
--connection node_2
|
|
SET SESSION wsrep_sync_wait = 0;
|
|
--send INSERT INTO t1 (f2) VALUES (2)
|
|
|
|
--connection node_1_applier_thd
|
|
# Wait for `sync.wsrep_apply_cb_reached` signal
|
|
SET SESSION DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached";
|
|
|
|
--connection node_1
|
|
SET SESSION wsrep_sync_wait = 0;
|
|
SET DEBUG_SYNC = 'wsrep_before_replication SIGNAL wsrep_before_replication_reached WAIT_FOR continue';
|
|
--send INSERT INTO t1 (f2) VALUES (1)
|
|
|
|
--connect node_1_flush_thd, 127.0.0.1, root, , test, $NODE_MYPORT_1
|
|
SET DEBUG_SYNC="now WAIT_FOR wsrep_before_replication_reached";
|
|
SET GLOBAL debug_dbug = "+d,sync.wsrep_before_mdl_wait";
|
|
--send FLUSH TABLES
|
|
|
|
--connect node_1_sync_release_thd, 127.0.0.1, root, , test, $NODE_MYPORT_1
|
|
# First clear all DBUG points
|
|
SET GLOBAL debug_dbug = "";
|
|
# Now signal threads to continue execution
|
|
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_before_mdl_wait";
|
|
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb";
|
|
SET DEBUG_SYNC = "now SIGNAL continue";
|
|
SET DEBUG_SYNC = "RESET";
|
|
|
|
--connection node_1
|
|
--reap
|
|
|
|
--connection node_1_flush_thd
|
|
--reap
|
|
|
|
--connection node_2
|
|
--reap
|
|
|
|
DROP TABLE t1;
|