mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 05:22:25 +01:00
e757e02417
Signed-off-by: Sachin Setiya <sachin.setiya@mariadb.com>
53 lines
1.3 KiB
Text
53 lines
1.3 KiB
Text
#
|
|
# Test Flush tables with read lock along with
|
|
# flush tables <table> with read lock for compatibility.
|
|
# Also, making sure all DDL and DMLs are propagated
|
|
# after provider is unpaused
|
|
#
|
|
--source include/galera_cluster.inc
|
|
--source include/have_innodb.inc
|
|
|
|
--let $galera_connection_name = node_2a
|
|
--let $galera_server_number = 2
|
|
--source include/galera_connect.inc
|
|
|
|
--connection node_1
|
|
CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB;
|
|
INSERT INTO t1 VALUES (1);
|
|
|
|
--connection node_2
|
|
SET session wsrep_sync_wait=0;
|
|
SET session wsrep_causal_reads=OFF;
|
|
FLUSH TABLE WITH READ LOCK;
|
|
|
|
--connection node_1
|
|
ALTER TABLE t1 ADD COLUMN f2 INTEGER;
|
|
INSERT INTO t1 VALUES (2,3);
|
|
|
|
--connection node_2a
|
|
SET session wsrep_sync_wait=0;
|
|
SET session wsrep_causal_reads=OFF;
|
|
SHOW CREATE TABLE t1;
|
|
--sleep 1
|
|
--send FLUSH TABLES t1 WITH READ LOCK;
|
|
|
|
--connection node_2
|
|
# let the flush table wait in pause state before we unlock
|
|
# table otherwise there is window where-in flush table is
|
|
# yet to wait in pause and unlock allows alter table to proceed.
|
|
# this is because send in asynchronous.
|
|
--sleep 3
|
|
# this will release existing lock but will not resume
|
|
# the cluster as there is new FTRL that is still pausing it.
|
|
UNLOCK TABLES;
|
|
SHOW CREATE TABLE t1;
|
|
|
|
--connection node_2a
|
|
--reap
|
|
UNLOCK TABLES;
|
|
--sleep 1
|
|
SHOW CREATE TABLE t1;
|
|
SELECT * from t1;
|
|
|
|
--connection node_1
|
|
DROP TABLE t1;
|