Skip to content

Commit b034d70

Browse files
committed
MDEV-21549: Clean up the import/export tests
Remove CREATE/DROP database. Remove some unnecessary suppressions, replacements, and SQL statements. Populate tables via have_sequence.inc to avoid the creation of explicit InnoDB record locks in INSERT...SELECT. This will remove some gaps in AUTO_INCREMENT values.
1 parent b8b3edf commit b034d70

File tree

8 files changed

+1478
-2244
lines changed

8 files changed

+1478
-2244
lines changed

mysql-test/suite/innodb/r/innodb-wl5522-debug.result

Lines changed: 548 additions & 502 deletions
Large diffs are not rendered by default.

mysql-test/suite/innodb/r/innodb-wl5522.result

Lines changed: 96 additions & 480 deletions
Large diffs are not rendered by default.

mysql-test/suite/innodb/t/innodb-wl5522-debug.test

Lines changed: 370 additions & 400 deletions
Large diffs are not rendered by default.

mysql-test/suite/innodb/t/innodb-wl5522.test

Lines changed: 18 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22
--source include/not_embedded.inc
33

44
-- source include/have_innodb.inc
5+
-- source include/have_sequence.inc
56

6-
call mtr.add_suppression("InnoDB: Unable to import tablespace .* because it already exists. Please DISCARD the tablespace before IMPORT.");
7+
call mtr.add_suppression("InnoDB: Unable to import tablespace .* because it already exists. Please DISCARD the tablespace before IMPORT\\.");
78
call mtr.add_suppression("Index for table 't2' is corrupt; try to repair it");
89
FLUSH TABLES;
910

@@ -17,17 +18,14 @@ CREATE TABLE t1
1718
KEY (b))
1819
ENGINE = InnoDB;
1920

20-
insert into t1 (b, c) values ('Apa', 'Filler........'),
21+
CREATE TEMPORARY TABLE t (b char(22),c varchar(255));
22+
INSERT INTO t VALUES
23+
('Apa', 'Filler........'),
2124
('Banan', 'Filler........'), ('Cavalry', '..asdasdfaeraf'),
2225
('Devotion', 'asdfuihknaskdf'), ('Evolution', 'lsjndofiabsoibeg');
2326

24-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
25-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
26-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
27-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
28-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
29-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
30-
INSERT INTO t1 (b, c) SELECT b,c FROM t1 ORDER BY a;
27+
INSERT INTO t1 (b,c) SELECT b,c FROM t,seq_1_to_128;
28+
DROP TEMPORARY TABLE t;
3129
SELECT COUNT(*) FROM t1;
3230
SELECT * FROM t1 ORDER BY b,a DESC LIMIT 3;
3331
SELECT * FROM t1 ORDER BY a DESC LIMIT 3;
@@ -107,16 +105,11 @@ CREATE TABLE t1(
107105
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
108106
c2 INT) ENGINE=InnoDB;
109107

110-
INSERT INTO t1(c2) VALUES(1);
111-
INSERT INTO t1(c2) SELECT c2 FROM t1;
112-
INSERT INTO t1(c2) SELECT c2 FROM t1;
113-
INSERT INTO t1(c2) SELECT c2 FROM t1;
114-
INSERT INTO t1(c2) SELECT c2 FROM t1;
108+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
115109

116110
--list_files $MYSQLD_DATADIR/test
117111

118112
FLUSH TABLES t1 FOR EXPORT;
119-
SELECT COUNT(*) FROM t1;
120113
perl;
121114
do "$ENV{MTR_SUITE_DIR}/include/innodb-util.pl";
122115
ib_backup_tablespaces("test", "t1");
@@ -158,15 +151,10 @@ CREATE TABLE t1(
158151
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
159152
c2 INT) ENGINE=InnoDB;
160153

161-
INSERT INTO t1(c2) VALUES(1);
162-
INSERT INTO t1(c2) SELECT c2 FROM t1;
163-
INSERT INTO t1(c2) SELECT c2 FROM t1;
164-
INSERT INTO t1(c2) SELECT c2 FROM t1;
165-
INSERT INTO t1(c2) SELECT c2 FROM t1;
154+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
166155

167156
--list_files $MYSQLD_DATADIR/test
168157
FLUSH TABLES t1 FOR EXPORT;
169-
SELECT COUNT(*) FROM t1;
170158
perl;
171159
do "$ENV{MTR_SUITE_DIR}/include/innodb-util.pl";
172160
ib_backup_tablespaces("test", "t1");
@@ -177,9 +165,6 @@ UNLOCK TABLES;
177165
--list_files $MYSQLD_DATADIR/test
178166

179167
# Move the LSN forward
180-
INSERT INTO t1(c2) SELECT c2 FROM t1;
181-
INSERT INTO t1(c2) SELECT c2 FROM t1;
182-
183168
DROP TABLE t1;
184169

185170
CREATE TABLE t1(
@@ -212,14 +197,9 @@ CREATE TABLE t1(
212197
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
213198
c2 INT, INDEX(c2)) ENGINE=InnoDB;
214199

215-
INSERT INTO t1(c2) VALUES(1);
216-
INSERT INTO t1(c2) SELECT c2 FROM t1;
217-
INSERT INTO t1(c2) SELECT c2 FROM t1;
218-
INSERT INTO t1(c2) SELECT c2 FROM t1;
219-
INSERT INTO t1(c2) SELECT c2 FROM t1;
200+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
220201

221202
FLUSH TABLES t1 FOR EXPORT;
222-
SELECT COUNT(*) FROM t1 WHERE c2 = 1;
223203
perl;
224204
do "$ENV{MTR_SUITE_DIR}/include/innodb-util.pl";
225205
ib_backup_tablespaces("test", "t1");
@@ -228,9 +208,6 @@ EOF
228208
UNLOCK TABLES;
229209

230210
# Move the LSN forward
231-
INSERT INTO t1(c2) SELECT c2 FROM t1;
232-
INSERT INTO t1(c2) SELECT c2 FROM t1;
233-
234211
DROP TABLE t1;
235212

236213
CREATE TABLE t1(
@@ -263,24 +240,16 @@ CREATE TABLE t1(
263240
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
264241
c2 INT, INDEX idx(c2)) ENGINE=InnoDB;
265242

266-
INSERT INTO t1(c2) VALUES(1);
267-
INSERT INTO t1(c2) SELECT c2 FROM t1;
268-
INSERT INTO t1(c2) SELECT c2 FROM t1;
269-
INSERT INTO t1(c2) SELECT c2 FROM t1;
270-
INSERT INTO t1(c2) SELECT c2 FROM t1;
243+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
271244

272245
FLUSH TABLES t1 FOR EXPORT;
273-
SELECT COUNT(*) FROM t1 WHERE c2 = 1;
274246
perl;
275247
do "$ENV{MTR_SUITE_DIR}/include/innodb-util.pl";
276248
ib_backup_tablespaces("test", "t1");
277249
EOF
278250
UNLOCK TABLES;
279251

280252
# Move the LSN forward
281-
INSERT INTO t1(c2) SELECT c2 FROM t1;
282-
INSERT INTO t1(c2) SELECT c2 FROM t1;
283-
284253
DROP TABLE t1;
285254

286255
CREATE TABLE t1(
@@ -330,14 +299,7 @@ CREATE TABLE t1(
330299
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
331300
c2 INT) ENGINE=InnoDB;
332301

333-
INSERT INTO t1(c2) VALUES(1);
334-
INSERT INTO t1(c2) SELECT c2 FROM t1;
335-
INSERT INTO t1(c2) SELECT c2 FROM t1;
336-
INSERT INTO t1(c2) SELECT c2 FROM t1;
337-
INSERT INTO t1(c2) SELECT c2 FROM t1;
338-
339-
SELECT COUNT(*) FROM t1;
340-
302+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
341303
SHOW CREATE TABLE t1;
342304

343305
# This should fail, InnoDB should return a warning
@@ -357,15 +319,9 @@ CREATE TABLE t1(
357319
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
358320
c2 INT, INDEX idx(c2)) ENGINE=InnoDB;
359321

360-
INSERT INTO t1(c2) VALUES(1);
361-
INSERT INTO t1(c2) SELECT c2 FROM t1;
362-
INSERT INTO t1(c2) SELECT c2 FROM t1;
363-
INSERT INTO t1(c2) SELECT c2 FROM t1;
364-
INSERT INTO t1(c2) SELECT c2 FROM t1;
365-
INSERT INTO t1(c2) SELECT c2 FROM t1;
322+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
366323

367324
SHOW CREATE TABLE t1;
368-
SELECT * FROM t1;
369325

370326
FLUSH TABLES t1 FOR EXPORT;
371327

@@ -492,15 +448,9 @@ CREATE TABLE t1(
492448
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
493449
c2 INT, INDEX idx(c2)) ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
494450

495-
INSERT INTO t1(c2) VALUES(1);
496-
INSERT INTO t1(c2) SELECT c2 FROM t1;
497-
INSERT INTO t1(c2) SELECT c2 FROM t1;
498-
INSERT INTO t1(c2) SELECT c2 FROM t1;
499-
INSERT INTO t1(c2) SELECT c2 FROM t1;
500-
INSERT INTO t1(c2) SELECT c2 FROM t1;
451+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
501452

502453
SHOW CREATE TABLE t1;
503-
SELECT * FROM t1;
504454

505455
FLUSH TABLES t1 FOR EXPORT;
506456

@@ -645,15 +595,9 @@ CREATE TABLE t1(
645595
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
646596
c2 INT, INDEX idx(c2)) ENGINE=InnoDB ROW_FORMAT=COMPACT;
647597

648-
INSERT INTO t1(c2) VALUES(1);
649-
INSERT INTO t1(c2) SELECT c2 FROM t1;
650-
INSERT INTO t1(c2) SELECT c2 FROM t1;
651-
INSERT INTO t1(c2) SELECT c2 FROM t1;
652-
INSERT INTO t1(c2) SELECT c2 FROM t1;
653-
INSERT INTO t1(c2) SELECT c2 FROM t1;
598+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
654599

655600
SHOW CREATE TABLE t1;
656-
SELECT * FROM t1;
657601

658602
FLUSH TABLES t1 FOR EXPORT;
659603

@@ -799,15 +743,9 @@ CREATE TABLE t1(
799743
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
800744
c2 INT, INDEX idx(c2)) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
801745

802-
INSERT INTO t1(c2) VALUES(1);
803-
INSERT INTO t1(c2) SELECT c2 FROM t1;
804-
INSERT INTO t1(c2) SELECT c2 FROM t1;
805-
INSERT INTO t1(c2) SELECT c2 FROM t1;
806-
INSERT INTO t1(c2) SELECT c2 FROM t1;
807-
INSERT INTO t1(c2) SELECT c2 FROM t1;
746+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
808747

809748
SHOW CREATE TABLE t1;
810-
SELECT * FROM t1;
811749

812750
FLUSH TABLES t1 FOR EXPORT;
813751

@@ -953,15 +891,9 @@ CREATE TABLE t1(
953891
c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
954892
c2 INT, INDEX idx(c2)) ENGINE=InnoDB ROW_FORMAT=COMPRESSED;
955893

956-
INSERT INTO t1(c2) VALUES(1);
957-
INSERT INTO t1(c2) SELECT c2 FROM t1;
958-
INSERT INTO t1(c2) SELECT c2 FROM t1;
959-
INSERT INTO t1(c2) SELECT c2 FROM t1;
960-
INSERT INTO t1(c2) SELECT c2 FROM t1;
961-
INSERT INTO t1(c2) SELECT c2 FROM t1;
894+
INSERT INTO t1 SELECT seq,1 FROM seq_1_to_16;
962895

963896
SHOW CREATE TABLE t1;
964-
SELECT * FROM t1;
965897

966898
FLUSH TABLES t1 FOR EXPORT;
967899

@@ -1126,9 +1058,8 @@ SELECT * FROM t1;
11261058
DROP TABLE t1;
11271059

11281060
call mtr.add_suppression("Got error -1 when reading table '.*'");
1129-
call mtr.add_suppression("InnoDB: Error: tablespace id and flags in file '.*'.*");
1061+
call mtr.add_suppression("InnoDB: Error: tablespace id and flags in file '.*'");
11301062
call mtr.add_suppression("InnoDB: The table .* doesn't have a corresponding tablespace, it was discarded");
1131-
FLUSH TABLES;
11321063

11331064
# cleanup
11341065
--remove_file $MYSQLTEST_VARDIR/tmp/t1.cfg

0 commit comments

Comments
 (0)