Skip to content

Commit 990b444

Browse files
committed
Merge 10.6 into 10.11
2 parents 8c70773 + e1f12f1 commit 990b444

27 files changed

+565
-201
lines changed

mysql-test/lib/My/Debugger.pm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ my %debuggers = (
8181
options => '_RR_TRACE_DIR={log} rr record {exe} {args} --loose-skip-innodb-use-native-aio --loose-innodb-flush-method=fsync',
8282
run => 'env',
8383
pre => sub {
84+
push @::global_suppressions, qr/InnoDB: native AIO failed/;
8485
::mtr_error('rr requires kernel.perf_event_paranoid <= 1')
8586
if ::mtr_grab_file('/proc/sys/kernel/perf_event_paranoid') > 1;
8687
}

mysql-test/main/type_num_innodb.result

Lines changed: 17 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -46,70 +46,23 @@ ALTER TABLE t1 MODIFY a DECIMAL(10,0);
4646
SELECT * FROM t1,t2 WHERE a=d;
4747
a b c pk d e
4848
Warnings:
49-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
50-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
51-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
52-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
53-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
54-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
55-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
56-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
57-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
58-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
59-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
60-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
61-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
62-
Warning 1292 Truncated incorrect DOUBLE value: 'w'
63-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
64-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
65-
Warning 1292 Truncated incorrect DOUBLE value: 'y'
66-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
67-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
68-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
69-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
70-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
71-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
72-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
73-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
74-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
75-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
76-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
77-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
78-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
79-
Warning 1292 Truncated incorrect DOUBLE value: 'w'
80-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
81-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
82-
Warning 1292 Truncated incorrect DOUBLE value: 'y'
83-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
84-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
85-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
86-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
87-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
88-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
89-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
90-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
91-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
92-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
93-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
94-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
95-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
96-
Warning 1292 Truncated incorrect DOUBLE value: 'w'
97-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
98-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
99-
Warning 1292 Truncated incorrect DOUBLE value: 'y'
100-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
101-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
102-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
103-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
104-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
105-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
106-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
107-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
108-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
109-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
110-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
111-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
112-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
49+
Warning 1292 Truncated incorrect DECIMAL value: 'd'
50+
Warning 1292 Truncated incorrect DECIMAL value: 'd'
51+
Warning 1292 Truncated incorrect DECIMAL value: 'f'
52+
Warning 1292 Truncated incorrect DECIMAL value: 'f'
53+
Warning 1292 Truncated incorrect DECIMAL value: 'g'
54+
Warning 1292 Truncated incorrect DECIMAL value: 'k'
55+
Warning 1292 Truncated incorrect DECIMAL value: 'm'
56+
Warning 1292 Truncated incorrect DECIMAL value: 'm'
57+
Warning 1292 Truncated incorrect DECIMAL value: 'm'
58+
Warning 1292 Truncated incorrect DECIMAL value: 'o'
59+
Warning 1292 Truncated incorrect DECIMAL value: 'q'
60+
Warning 1292 Truncated incorrect DECIMAL value: 'r'
61+
Warning 1292 Truncated incorrect DECIMAL value: 'u'
62+
Warning 1292 Truncated incorrect DECIMAL value: 'w'
63+
Warning 1292 Truncated incorrect DECIMAL value: 'x'
64+
Warning 1292 Truncated incorrect DECIMAL value: 'x'
65+
Warning 1292 Truncated incorrect DECIMAL value: 'y'
11366
ALTER TABLE t1 MODIFY a DOUBLE;
11467
SELECT * FROM t1,t2 WHERE a=d;
11568
a b c pk d e
@@ -131,53 +84,6 @@ Warning 1292 Truncated incorrect DOUBLE value: 'w'
13184
Warning 1292 Truncated incorrect DOUBLE value: 'x'
13285
Warning 1292 Truncated incorrect DOUBLE value: 'x'
13386
Warning 1292 Truncated incorrect DOUBLE value: 'y'
134-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
135-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
136-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
137-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
138-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
139-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
140-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
141-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
142-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
143-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
144-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
145-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
146-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
147-
Warning 1292 Truncated incorrect DOUBLE value: 'w'
148-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
149-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
150-
Warning 1292 Truncated incorrect DOUBLE value: 'y'
151-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
152-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
153-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
154-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
155-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
156-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
157-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
158-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
159-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
160-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
161-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
162-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
163-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
164-
Warning 1292 Truncated incorrect DOUBLE value: 'w'
165-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
166-
Warning 1292 Truncated incorrect DOUBLE value: 'x'
167-
Warning 1292 Truncated incorrect DOUBLE value: 'y'
168-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
169-
Warning 1292 Truncated incorrect DOUBLE value: 'd'
170-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
171-
Warning 1292 Truncated incorrect DOUBLE value: 'f'
172-
Warning 1292 Truncated incorrect DOUBLE value: 'g'
173-
Warning 1292 Truncated incorrect DOUBLE value: 'k'
174-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
175-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
176-
Warning 1292 Truncated incorrect DOUBLE value: 'm'
177-
Warning 1292 Truncated incorrect DOUBLE value: 'o'
178-
Warning 1292 Truncated incorrect DOUBLE value: 'q'
179-
Warning 1292 Truncated incorrect DOUBLE value: 'r'
180-
Warning 1292 Truncated incorrect DOUBLE value: 'u'
18187
DROP TABLE t1,t2;
18288
#
18389
# End of 10.2 tests
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
connection node_2;
2+
connection node_1;
3+
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 BLOB) ENGINE=InnoDB;
4+
connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3;
5+
connection node_3;
6+
SET GLOBAL wsrep_on=OFF;
7+
ALTER TABLE t1 MODIFY f2 LONGTEXT;
8+
SET GLOBAL wsrep_on=ON;
9+
INSERT INTO t1 VALUES (3, 'a');
10+
connection node_1;
11+
SHOW STATUS LIKE 'wsrep_cluster_status';
12+
Variable_name Value
13+
wsrep_cluster_status Primary
14+
connection node_2;
15+
SHOW STATUS LIKE 'wsrep_cluster_status';
16+
Variable_name Value
17+
wsrep_cluster_status Primary
18+
INSERT INTO t1 VALUES (2, 'a');
19+
connection node_3;
20+
SET SESSION wsrep_sync_wait=0;
21+
SET SESSION wsrep_on=OFF;
22+
# restart
23+
SET SESSION wsrep_on=ON;
24+
INSERT INTO t1 VALUES (3, 'a');
25+
connection node_1;
26+
SHOW CREATE TABLE t1;
27+
Table Create Table
28+
t1 CREATE TABLE `t1` (
29+
`f1` int(11) NOT NULL,
30+
`f2` blob DEFAULT NULL,
31+
PRIMARY KEY (`f1`)
32+
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
33+
SELECT * FROM t1;
34+
f1 f2
35+
2 a
36+
3 a
37+
connection node_2;
38+
SHOW CREATE TABLE t1;
39+
Table Create Table
40+
t1 CREATE TABLE `t1` (
41+
`f1` int(11) NOT NULL,
42+
`f2` blob DEFAULT NULL,
43+
PRIMARY KEY (`f1`)
44+
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
45+
SELECT * FROM t1;
46+
f1 f2
47+
2 a
48+
3 a
49+
connection node_3;
50+
SHOW CREATE TABLE t1;
51+
Table Create Table
52+
t1 CREATE TABLE `t1` (
53+
`f1` int(11) NOT NULL,
54+
`f2` blob DEFAULT NULL,
55+
PRIMARY KEY (`f1`)
56+
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
57+
SELECT * FROM t1;
58+
f1 f2
59+
2 a
60+
3 a
61+
DROP TABLE t1;
62+
connection node_1;
63+
CALL mtr.add_suppression("Replica SQL: Column 1 of table 'test.t1' cannot be converted from type 'longblob' to type 'blob', Error_code: MY-013146");
64+
CALL mtr.add_suppression("Event 3 Write_rows_v1 apply failed: 3, seqno");
65+
connection node_2;
66+
CALL mtr.add_suppression("Replica SQL: Column 1 of table 'test.t1' cannot be converted from type 'longblob' to type 'blob', Error_code: MY-013146");
67+
CALL mtr.add_suppression("Event 3 Write_rows_v1 apply failed: 3, seqno");
68+
connection node_3;
69+
CALL mtr.add_suppression("Vote 0 \\(success\\) on (.*) is inconsistent with group. Leaving cluster.");
70+
CALL mtr.add_suppression("Plugin 'InnoDB' will be forced to shutdown");
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
!include ../galera_3nodes.cnf
2+
3+
[mysqld]
4+
wsrep-ignore-apply-errors=0
5+
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#
2+
# MDEV-37494: Inconsistency voting: create conditions where applying would
3+
# fail on replicas in table_def::compatible_with() and check that
4+
# that replicas survive and the primary (trx source) bails out.
5+
#
6+
--source include/galera_cluster.inc
7+
8+
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 BLOB) ENGINE=InnoDB;
9+
10+
--connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3
11+
--connection node_3
12+
SET GLOBAL wsrep_on=OFF;
13+
ALTER TABLE t1 MODIFY f2 LONGTEXT; # Introducing schema inconsistency
14+
SET GLOBAL wsrep_on=ON;
15+
INSERT INTO t1 VALUES (3, 'a'); # Nodes 1 and 2 should fail to apply this
16+
17+
--connection node_1
18+
# Wait until node #3 leaves the cluster
19+
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM performance_schema.global_status WHERE VARIABLE_NAME = 'wsrep_cluster_size'
20+
--source include/wait_condition.inc
21+
SHOW STATUS LIKE 'wsrep_cluster_status';
22+
23+
--connection node_2
24+
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM performance_schema.global_status WHERE VARIABLE_NAME = 'wsrep_cluster_size'
25+
# Wait until node #3 leaves the cluster
26+
--source include/wait_condition.inc
27+
SHOW STATUS LIKE 'wsrep_cluster_status';
28+
29+
INSERT INTO t1 VALUES (2, 'a'); # Nodes 1 and 2 should successfully apply this
30+
31+
--connection node_3
32+
SET SESSION wsrep_sync_wait=0;
33+
--let $wait_condition = SELECT VARIABLE_VALUE = 'Disconnected' FROM performance_schema.global_status WHERE VARIABLE_NAME = 'wsrep_cluster_status';
34+
--source include/wait_condition.inc
35+
SET SESSION wsrep_on=OFF;
36+
--source include/restart_mysqld.inc
37+
--source include/wait_wsrep_ready.inc
38+
SET SESSION wsrep_on=ON;
39+
40+
INSERT INTO t1 VALUES (3, 'a'); # All nodes should successfully apply this
41+
42+
# Check that consistency is restored
43+
--connection node_1
44+
SHOW CREATE TABLE t1;
45+
SELECT * FROM t1;
46+
47+
--connection node_2
48+
SHOW CREATE TABLE t1;
49+
SELECT * FROM t1;
50+
51+
--connection node_3
52+
SHOW CREATE TABLE t1;
53+
SELECT * FROM t1;
54+
55+
DROP TABLE t1;
56+
57+
--connection node_1
58+
CALL mtr.add_suppression("Replica SQL: Column 1 of table 'test.t1' cannot be converted from type 'longblob' to type 'blob', Error_code: MY-013146");
59+
CALL mtr.add_suppression("Event 3 Write_rows_v1 apply failed: 3, seqno");
60+
61+
--connection node_2
62+
CALL mtr.add_suppression("Replica SQL: Column 1 of table 'test.t1' cannot be converted from type 'longblob' to type 'blob', Error_code: MY-013146");
63+
CALL mtr.add_suppression("Event 3 Write_rows_v1 apply failed: 3, seqno");
64+
65+
--connection node_3
66+
CALL mtr.add_suppression("Vote 0 \\(success\\) on (.*) is inconsistent with group. Leaving cluster.");
67+
CALL mtr.add_suppression("Plugin 'InnoDB' will be forced to shutdown");

0 commit comments

Comments
 (0)