mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Add wait_condition so that INSERT is replicated before ALTER and ALTER is replicated before we try to INSERT with new number of columns.
35 lines
1.0 KiB
Plaintext
35 lines
1.0 KiB
Plaintext
--source include/galera_cluster.inc
|
|
--source include/have_innodb.inc
|
|
|
|
#
|
|
# Ensure that ALTER LOCK=SHARED works under TOI. It is difficult to check that concurrent operations
|
|
# will be possible, but at least we expect no hangs or deadlocks
|
|
#
|
|
|
|
CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB;
|
|
INSERT INTO t1 VALUES (1);
|
|
|
|
--connection node_2
|
|
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'
|
|
--source include/wait_condition.inc
|
|
--let $wait_condition = SELECT COUNT(*) = 1 FROM t1
|
|
--source include/wait_condition.inc
|
|
|
|
ALTER TABLE t1 ADD COLUMN f2 INTEGER, LOCK=SHARED;
|
|
|
|
--connection node_1
|
|
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
|
|
--source include/wait_condition.inc
|
|
INSERT INTO t1 VALUES (2, 2);
|
|
SELECT COUNT(*) AS EXPECT_2 FROM t1;
|
|
SELECT * FROM t1;
|
|
|
|
--connection node_2
|
|
--let $wait_condition = SELECT COUNT(*) = 2 FROM t1
|
|
--source include/wait_condition.inc
|
|
INSERT INTO t1 VALUES (3, 3);
|
|
SELECT COUNT(*) AS EXPECT_3 FROM t1;
|
|
SELECT * FROM t1;
|
|
|
|
DROP TABLE t1;
|