49 lines
		
	
	
		
			999 B
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			999 B
		
	
	
	
		
			Plaintext
		
	
	
	
|  | # connection default | ||
|  | SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ; | ||
|  | CREATE TABLE t1 | ||
|  | ( | ||
|  | id SMALLINT NOT NULL, | ||
|  | PRIMARY KEY (id) | ||
|  | ) ENGINE=innodb | ||
|  | PARTITION BY RANGE (id) | ||
|  | ( | ||
|  | PARTITION p1 VALUES LESS THAN (2), | ||
|  | PARTITION p2 VALUES LESS THAN (4), | ||
|  | PARTITION p3 VALUES LESS THAN (10) | ||
|  | ); | ||
|  | INSERT INTO t1 VALUES (1),(2),(3); | ||
|  | # Test READ COMMITTED -> REPEATABLE READ | ||
|  | FLUSH TABLES; | ||
|  | SET TRANSACTION ISOLATION LEVEL READ COMMITTED; | ||
|  | BEGIN; | ||
|  | SELECT * FROM t1; | ||
|  | id | ||
|  | 1 | ||
|  | 2 | ||
|  | 3 | ||
|  | #connection con1 | ||
|  | SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; | ||
|  | BEGIN; | ||
|  | INSERT INTO t1 VALUES(7); | ||
|  | COMMIT; | ||
|  | # connection default | ||
|  | COMMIT; | ||
|  | FLUSH TABLES; | ||
|  | # Test REPEATABLE READ -> READ COMMITTED | ||
|  | SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; | ||
|  | BEGIN; | ||
|  | SELECT * FROM t1; | ||
|  | id | ||
|  | 1 | ||
|  | 2 | ||
|  | 3 | ||
|  | 7 | ||
|  | # connection con1 | ||
|  | SET TRANSACTION ISOLATION LEVEL READ COMMITTED; | ||
|  | BEGIN; | ||
|  | INSERT INTO t1 VALUES(9); | ||
|  | ERROR HY000: Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT' | ||
|  | COMMIT; | ||
|  | COMMIT; | ||
|  | DROP TABLE t1; |