mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
148 lines
4 KiB
Text
148 lines
4 KiB
Text
connection node_2;
|
|
connection node_1;
|
|
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 CHAR(1));
|
|
INSERT INTO t1 VALUES (1, 'a');
|
|
INSERT INTO t1 VALUES (2, 'a');
|
|
connection node_1;
|
|
SET AUTOCOMMIT=ON;
|
|
START TRANSACTION;
|
|
UPDATE t1 SET f2 = 'b' WHERE f1 = 1;
|
|
SELECT * FROM t1 WHERE f1 = 2 FOR UPDATE;
|
|
f1 f2
|
|
2 a
|
|
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
|
SET SESSION wsrep_sync_wait=0;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
connection node_2;
|
|
UPDATE t1 SET f2 = 'c' WHERE f1 = 2;
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
COMMIT;
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'b';
|
|
COUNT(*) = 1
|
|
1
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'c';
|
|
COUNT(*) = 1
|
|
1
|
|
wsrep_local_replays
|
|
1
|
|
connection node_2;
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'b';
|
|
COUNT(*) = 1
|
|
1
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'c';
|
|
COUNT(*) = 1
|
|
1
|
|
DROP TABLE t1;
|
|
connection node_1;
|
|
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 CHAR(1));
|
|
INSERT INTO t1 VALUES (1, 'a');
|
|
INSERT INTO t1 VALUES (2, 'a');
|
|
connection node_1;
|
|
SET AUTOCOMMIT=ON;
|
|
START TRANSACTION;
|
|
UPDATE t1 SET f2 = 'b' WHERE f1 = 1;
|
|
SELECT * FROM t1 WHERE f1 = 2 FOR UPDATE;
|
|
f1 f2
|
|
2 a
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
COMMIT;
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
connection node_2;
|
|
UPDATE t1 SET f2 = 'c' WHERE f1 = 2;
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'b';
|
|
COUNT(*) = 1
|
|
1
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'c';
|
|
COUNT(*) = 1
|
|
1
|
|
wsrep_local_replays
|
|
1
|
|
connection node_2;
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'b';
|
|
COUNT(*) = 1
|
|
1
|
|
SELECT COUNT(*) = 1 FROM t1 WHERE f2 = 'c';
|
|
COUNT(*) = 1
|
|
1
|
|
DROP TABLE t1;
|
|
connection node_1;
|
|
CREATE TABLE t1 (i int primary key, j int) ENGINE=INNODB;
|
|
INSERT INTO t1 VALUES (1, 0), (3, 0);
|
|
SELECT * FROM t1;
|
|
i j
|
|
1 0
|
|
3 0
|
|
SET AUTOCOMMIT=ON;
|
|
PREPARE stmt1 FROM "UPDATE t1 SET j = 1 where i > 0";
|
|
connection node_1a;
|
|
SET SESSION wsrep_sync_wait=0;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
connection node_2;
|
|
INSERT INTO t1 VALUES(2,2);
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
SET SESSION wsrep_sync_wait=0;
|
|
EXECUTE stmt1;
|
|
connection node_1a;
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
SET SESSION wsrep_on = 0;
|
|
SET SESSION wsrep_on = 1;
|
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
connection node_1;
|
|
SET SESSION wsrep_sync_wait=7;
|
|
SELECT * FROM t1;
|
|
i j
|
|
1 1
|
|
2 2
|
|
3 1
|
|
connection node_2;
|
|
SELECT * FROM t1;
|
|
i j
|
|
1 1
|
|
2 2
|
|
3 1
|
|
connection node_1;
|
|
wsrep_local_replays
|
|
1
|
|
DEALLOCATE PREPARE stmt1;
|
|
DROP TABLE t1;
|