File: rpl_parallel_optimistic_error_stop.result

package info (click to toggle)
mariadb 1%3A11.8.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, trixie
  • size: 765,428 kB
  • sloc: ansic: 2,382,827; cpp: 1,803,532; asm: 378,315; perl: 63,176; sh: 46,496; pascal: 40,776; java: 39,363; yacc: 20,428; python: 19,506; sql: 17,864; xml: 12,463; ruby: 8,544; makefile: 6,059; cs: 5,855; ada: 1,700; lex: 1,193; javascript: 1,039; objc: 80; tcl: 73; awk: 46; php: 22
file content (81 lines) | stat: -rw-r--r-- 2,777 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
include/rpl_init.inc [topology=1->2]
call mtr.add_suppression("Slave: Commit failed due to failure of an earlier commit");
call mtr.add_suppression("Slave: Duplicate entry '99'");
connection server_1;
ALTER TABLE mysql.gtid_slave_pos ENGINE=InnoDB;
CREATE TABLE t1 (a int PRIMARY KEY, b INT) ENGINE=InnoDB;
INSERT INTO t1 VALUES(1,1);
INSERT INTO t1 VALUES(2,1);
INSERT INTO t1 VALUES(3,1);
INSERT INTO t1 VALUES(4,1);
connection server_2;
SET @old_parallel_threads=@@GLOBAL.slave_parallel_threads;
include/stop_slave.inc
SET @old_debug_dbug = @@global.debug_dbug;
SET @@global.debug_dbug = "d,hold_worker2_favor_worker3";
SET GLOBAL slave_parallel_threads=4;
CHANGE MASTER TO master_use_gtid=slave_pos;
SET @old_parallel_mode=@@GLOBAL.slave_parallel_mode;
SET GLOBAL slave_parallel_mode='optimistic';
connection server_1;
SET @@gtid_seq_no = 2001;
BEGIN;
UPDATE t1 SET b = 11  WHERE a = 4;
UPDATE t1 SET b = 11  WHERE a = 3;
UPDATE t1 SET a = 99  WHERE a = 1;
COMMIT;
UPDATE t1 SET b = 2 WHERE a = 2;
UPDATE t1 SET b = 3 WHERE a = 3;
DROP TABLE IF EXISTS phantom_1;
Warnings:
Note	1051	Unknown table 'test.phantom_1'
include/save_master_gtid.inc
connect  slave_local_0, 127.0.0.1, root,, test, $SLAVE_MYPORT,;
begin;
UPDATE t1 set b = 11 where a = 4;
connect  slave_local_1, 127.0.0.1, root,, test, $SLAVE_MYPORT,;
begin;
INSERT INTO t1 VALUES (99, 11);
connect  slave_local_2, 127.0.0.1, root,, test, $SLAVE_MYPORT,;
begin;
UPDATE t1 SET b = 12 WHERE a = 2;
connect  slave_local_3, 127.0.0.1, root,, test, $SLAVE_MYPORT,;
begin;
UPDATE t1 SET b = 13 WHERE a = 3;
connection server_2;
include/start_slave.inc
# W4 is waiting to start its DROP
connection slave_local_3;
rollback;
connection slave_local_0;
rollback;
SELECT count(*) = 0 as "W3 undid its commit state" FROM information_schema.processlist WHERE state LIKE "Waiting for prior transaction to commit%";
W3 undid its commit state
1
connection slave_local_2;
rollback;
connection slave_local_1;
commit;
SELECT COUNT(*) = 1 as "W4 remains with the same status" FROM information_schema.processlist WHERE state LIKE "Waiting for prior transaction to start commit%";
W4 remains with the same status
1
#  Slave_SQL_Running YES = Yes
# while W2 is held back ...
SET DEBUG_SYNC = 'now SIGNAL cont_worker2';
include/wait_for_slave_sql_error.inc [errno=1062]
DELETE FROM t1 WHERE a=99;
include/start_slave.inc
include/sync_with_master_gtid.inc
connection server_2;
include/stop_slave.inc
SET GLOBAL slave_parallel_mode=@old_parallel_mode;
SET GLOBAL slave_parallel_threads=@old_parallel_threads;
SET @@global.debug_dbug = @old_debug_dbug;
SET debug_sync = RESET;
include/start_slave.inc
connection server_1;
DROP TABLE t1;
include/save_master_gtid.inc
connection server_2;
include/sync_with_master_gtid.inc
include/rpl_end.inc