mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 18:36:12 +01:00 
			
		
		
		
	 7789726843
			
		
	
	
	7789726843
	
	
	
		
			
			Add wait_condition so that INSERT is replicated before ALTER and ALTER is replicated before we try to INSERT with new number of columns.
		
			
				
	
	
		
			34 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| --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;
 |