mariadb/mysql-test/suite/galera/t/lp1376747-4.test
Sachin Setiya e757e02417 Galera MTR Tests: Copy over some MTR tests from PXC
Signed-off-by: Sachin Setiya <sachin.setiya@mariadb.com>
2017-04-06 15:41:54 +05:30

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;