43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | DROP TABLE IF EXISTS t1; | ||
|  | # Establish connection con1 (user=root) | ||
|  | # Establish connection con2 (user=root) | ||
|  | ### Test 1: | ||
|  | ### - While a consistent snapshot transaction is executed, | ||
|  | ###   no external inserts should be visible to the transaction. | ||
|  | # Switch to connection con1 | ||
|  | CREATE TABLE t1 (a INT) ENGINE=innodb; | ||
|  | START TRANSACTION WITH CONSISTENT SNAPSHOT; | ||
|  | # Switch to connection con2 | ||
|  | INSERT INTO t1 VALUES(1); | ||
|  | # Switch to connection con1 | ||
|  | SELECT * FROM t1; | ||
|  | a | ||
|  | COMMIT; | ||
|  | ### Test 2: | ||
|  | ### - For any non-consistent snapshot transaction, external | ||
|  | ###   committed inserts should be visible to the transaction. | ||
|  | DELETE FROM t1; | ||
|  | START TRANSACTION; | ||
|  | # Switch to connection con2 | ||
|  | INSERT INTO t1 VALUES(1); | ||
|  | # Switch to connection con1 | ||
|  | SELECT * FROM t1; | ||
|  | a | ||
|  | 1 | ||
|  | COMMIT; | ||
|  | ### Test 3: | ||
|  | ### - Bug#44664: valgrind warning for COMMIT_AND_CHAIN and ROLLBACK_AND_CHAIN | ||
|  | ###   Chaining a transaction does not retain consistency level. | ||
|  | START TRANSACTION WITH CONSISTENT SNAPSHOT; | ||
|  | DELETE FROM t1; | ||
|  | COMMIT WORK AND CHAIN; | ||
|  | # Switch to connection con2 | ||
|  | INSERT INTO t1 VALUES(1); | ||
|  | # Switch to connection con1 | ||
|  | SELECT * FROM t1; | ||
|  | a | ||
|  | 1 | ||
|  | COMMIT; | ||
|  | # Switch to connection default + close connections con1 and con2 | ||
|  | DROP TABLE t1; |