mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 10:56:12 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			889 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			889 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| #
 | |
| # This checks that even tables with a single BIT column are replicated properly without a PK
 | |
| #
 | |
| 
 | |
| --source include/galera_cluster.inc
 | |
| --source include/have_innodb.inc
 | |
| 
 | |
| CREATE TABLE t1 (f1 BIT) ENGINE=InnoDB;
 | |
| INSERT INTO t1 VALUES (NULL),(0),(b'1');
 | |
| 
 | |
| --connection node_2
 | |
| SELECT f1 IS NULL, f1 = b'1' FROM t1;
 | |
| 
 | |
| DELETE FROM t1 WHERE f1 = b'1';
 | |
| UPDATE t1 SET f1 = b'1' WHERE f1 IS NULL;
 | |
| UPDATE t1 SET f1 = 1 WHERE f1 = b'0';
 | |
| 
 | |
| --connection node_1
 | |
| SELECT f1 IS NULL, f1 = b'1' FROM t1;
 | |
| 
 | |
| #
 | |
| # Provoke a conflict
 | |
| #
 | |
| 
 | |
| --connection node_1
 | |
| CREATE TABLE t2 (f1 BIT) ENGINE=InnoDB;
 | |
| INSERT INTO t2 VALUES (NULL);
 | |
| 
 | |
| SET AUTOCOMMIT=OFF;
 | |
| START TRANSACTION;
 | |
| UPDATE t2 SET f1 = 0 WHERE f1 IS NULL;
 | |
| 
 | |
| --connection node_2
 | |
| SET AUTOCOMMIT=OFF;
 | |
| START TRANSACTION;
 | |
| UPDATE t2 SET f1 = 1 WHERE f1 IS NULL;
 | |
| 
 | |
| --connection node_1
 | |
| COMMIT;
 | |
| 
 | |
| --connection node_2
 | |
| --error ER_LOCK_DEADLOCK
 | |
| COMMIT;
 | |
| 
 | |
| DROP TABLE t1;
 | |
| DROP TABLE t2;
 | 
