diff options
Diffstat (limited to 'mysql-test/suite/galera/t/galera_nopk_bit.test')
-rw-r--r-- | mysql-test/suite/galera/t/galera_nopk_bit.test | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/mysql-test/suite/galera/t/galera_nopk_bit.test b/mysql-test/suite/galera/t/galera_nopk_bit.test new file mode 100644 index 00000000000..4292a6d6711 --- /dev/null +++ b/mysql-test/suite/galera/t/galera_nopk_bit.test @@ -0,0 +1,46 @@ +# +# 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; |