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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
for master_1
for child2
child2_1
child2_2
child2_3
for child3
connection master_1;
set @old_spider_bgs_mode= @@spider_bgs_mode;
set session spider_bgs_mode= 1;
this test is for MDEV-16967
drop and create databases
connection master_1;
CREATE DATABASE auto_test_local;
USE auto_test_local;
connection child2_1;
SET @old_log_output = @@global.log_output;
SET GLOBAL log_output = 'TABLE,FILE';
CREATE DATABASE auto_test_remote;
USE auto_test_remote;
connection child2_1_2;
USE auto_test_remote;
connection child2_2;
SET @old_log_output = @@global.log_output;
SET GLOBAL log_output = 'TABLE,FILE';
CREATE DATABASE auto_test_remote2;
USE auto_test_remote2;
connection child2_2_2;
USE auto_test_remote2;
create table and insert
connection child2_1;
CHILD2_1_CREATE_TABLES
TRUNCATE TABLE mysql.general_log;
connection child2_2;
CHILD2_2_CREATE_TABLES
TRUNCATE TABLE mysql.general_log;
connection master_1;
CREATE TABLE tbl_a (
pkey int NOT NULL,
PRIMARY KEY (pkey)
) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_2_1
INSERT INTO tbl_a (pkey) VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
INSERT INTO tbl_a (pkey) VALUES (10),(11),(12),(13),(14),(15),(16),(17),(18),(19);
INSERT INTO tbl_a (pkey) VALUES (20),(21),(22),(23),(24),(25),(26),(27),(28),(29);
select test 1
connection child2_1;
TRUNCATE TABLE mysql.general_log;
LOCK TABLE tbl_a WRITE;
connection child2_2;
TRUNCATE TABLE mysql.general_log;
LOCK TABLE tbl_a WRITE;
connection master_1;
CHECKSUM TABLE tbl_a;
connection child2_1_2;
SELECT SLEEP(1);
SLEEP(1)
0
SELECT argument FROM mysql.general_log WHERE argument LIKE '%checksum %';
argument
SELECT argument FROM mysql.general_log WHERE argument LIKE '%checksum %'
connection child2_2_2;
SELECT argument FROM mysql.general_log WHERE argument LIKE '%checksum %';
argument
SELECT argument FROM mysql.general_log WHERE argument LIKE '%checksum %'
connection child2_1;
UNLOCK TABLES;
SELECT pkey FROM tbl_a ORDER BY pkey;
pkey
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
connection child2_2;
UNLOCK TABLES;
SELECT pkey FROM tbl_a ORDER BY pkey;
pkey
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
connection master_1;
Table Checksum
auto_test_local.tbl_a NULL
deinit
connection master_1;
DROP DATABASE IF EXISTS auto_test_local;
connection child2_1;
DROP DATABASE IF EXISTS auto_test_remote;
SET GLOBAL log_output = @old_log_output;
connection child2_2;
DROP DATABASE IF EXISTS auto_test_remote2;
SET GLOBAL log_output = @old_log_output;
connection master_1;
set session spider_bgs_mode= @old_spider_bgs_mode;
for master_1
for child2
child2_1
child2_2
child2_3
for child3
end of test
|