Skip to content

Commit 8ef727b

Browse files
committed
MDEV-14904 Backport innodb_default_row_format
InnoDB in Debian uses utf8mb4 as default character set since version 10.0.20-2. This leads to major pain due to keys longer than 767 bytes. MariaDB 10.2 (and MySQL 5.7) introduced the setting innodb_default_row_format that is DYNAMIC by default. These versions also changed the default values of the parameters innodb_large_prefix=ON and innodb_file_format=Barracuda. This would allow longer column index prefixes to be created. The original purpose of these parameters was to allow InnoDB to be downgraded to MySQL 5.1, which is long out of support. Every InnoDB version since MySQL 5.5 does support operation with the relaxed limits. We backport the parameter innodb_default_row_format to MariaDB 10.1, but we will keep its default value at COMPACT. This allows MariaDB 10.1 to be configured so that CREATE TABLE is less likely to encounter a problem with the limitation: loose_innodb_large_prefix=ON loose_innodb_default_row_format=DYNAMIC (Note that the setting innodb_large_prefix was deprecated in MariaDB 10.2 and removed in MariaDB 10.3.) The only observable difference in the behaviour with the default settings should be that ROW_FORMAT=DYNAMIC tables can be created both in the system tablespace and in .ibd files, no matter what innodb_file_format has been assigned to. Unlike MariaDB 10.2, we are not changing the default value of innodb_file_format, so ROW_FORMAT=COMPRESSED tables cannot be created without changing the parameter.
1 parent 176d603 commit 8ef727b

26 files changed

+946
-123
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[redundant]
2+
innodb_default_row_format=redundant
3+
4+
[compact]
5+
innodb_default_row_format=compact
6+
7+
[dynamic]
8+
innodb_default_row_format=dynamic
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# The goal of including this file is to enable innodb_default_row_format
2+
# combinations (see include/innodb_row_format.combinations)
3+
4+
--source include/have_innodb.inc

mysql-test/suite/innodb/r/create-index-debug.result

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ CHAR(255) NOT NULL, f13 CHAR(255) NOT NULL, f14 CHAR(255) NOT NULL,f15
1010
CHAR(255) NOT NULL, f16 CHAR(255) NOT NULL, f17 CHAR(255) NOT NULL,f18
1111
CHAR(255) NOT NULL)
1212
ENGINE=INNODB ROW_FORMAT=DYNAMIC;
13-
Warnings:
14-
Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope.
15-
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
1613
INSERT INTO t1
1714
VALUES('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r');
1815
INSERT INTO t1 SELECT * FROM t1;
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
SET @row_format = @@GLOBAL.innodb_default_row_format;
2+
####################################
3+
# Check if table rebuilding alter isn't affect if table is created
4+
# with explicit row_format
5+
CREATE TABLE t1 (a INT PRIMARY KEY, b TEXT) ROW_FORMAT=COMPACT ENGINE=INNODB;
6+
INSERT INTO t1 VALUES (1, 'abc');
7+
SHOW TABLE STATUS LIKE 't1';
8+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
9+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=COMPACT
10+
SET GLOBAL innodb_default_row_format=DYNAMIC;
11+
ALTER TABLE t1 DROP PRIMARY KEY, ADD COLUMN c INT PRIMARY KEY;
12+
# Here we expect COMPACT because it was explicitly specified at CREATE
13+
SHOW TABLE STATUS LIKE 't1';
14+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
15+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=COMPACT
16+
DROP TABLE t1;
17+
####################################
18+
# Check if table rebuilding alter is affected when there is no
19+
# row_format specified at CREATE TABLE.
20+
SET GLOBAL innodb_default_row_format = COMPACT;
21+
CREATE TABLE t1 (a INT PRIMARY KEY, b TEXT) ENGINE=INNODB;
22+
INSERT INTO t1 VALUES (1, 'abc');
23+
SHOW TABLE STATUS LIKE 't1';
24+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
25+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
26+
SET GLOBAL innodb_default_row_format = DYNAMIC;
27+
ALTER TABLE t1 DROP PRIMARY KEY, ADD COLUMN c INT PRIMARY KEY;
28+
# Here we expect DYNAMIC because there is no explicit ROW_FORMAT and the
29+
# default_row_format is changed to DYNAMIC just before ALTER
30+
SHOW TABLE STATUS LIKE 't1';
31+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
32+
t1 InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
33+
DROP TABLE t1;
34+
####################################
35+
# Check the row_format effect on ALTER, ALGORITHM=COPY
36+
SET GLOBAL innodb_default_row_format = REDUNDANT;
37+
CREATE TABLE t1 (a INT PRIMARY KEY, b TEXT) ENGINE=INNODB;
38+
INSERT INTO t1 VALUES (1, REPEAT('abc',1000));
39+
SHOW TABLE STATUS LIKE 't1';
40+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
41+
t1 InnoDB # Redundant # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
42+
SET GLOBAL innoDB_default_row_format = COMPACT;
43+
ALTER TABLE t1 ADD COLUMN c2 BLOB, ALGORITHM=COPY;
44+
# Because of ALGORITHM=COPY, there is TABLE REBUILD and the table isn't
45+
# created with explicit row_format, so we expect ROW_FORMAT=COMPACT
46+
SHOW TABLE STATUS LIKE 't1';
47+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
48+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
49+
DROP TABLE t1;
50+
51+
###################################
52+
# Check the row_format effect on ALTER, ALGORITH=COPY on
53+
# create table with explicit row_format
54+
CREATE TABLE t1 (a INT PRIMARY KEY, b TEXT) ROW_FORMAT=REDUNDANT ENGINE=INNODB;
55+
INSERT INTO t1 VALUES (1, REPEAT('abc',1000));
56+
SHOW TABLE STATUS LIKE 't1';
57+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
58+
t1 InnoDB # Redundant # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=REDUNDANT
59+
SET GLOBAL innoDB_default_row_format = COMPACT;
60+
ALTER TABLE t1 ADD COLUMN c2 BLOB, ALGORITHM=COPY;
61+
# Because of ALGORITHM=COPY, there is TABLE REBUILD and the table is
62+
# created with explicit row_format, so we expect original
63+
# ROW_FORMAT=REDUNDANT
64+
SHOW TABLE STATUS LIKE 't1';
65+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
66+
t1 InnoDB # Redundant # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=REDUNDANT
67+
DROP TABLE t1;
68+
69+
##################################
70+
# Check row_format on ALTER ALGORITHM=INPLACE
71+
SET GLOBAL innodb_default_row_format=COMPACT;
72+
CREATE TABLE t1 (a INT PRIMARY KEY, b TEXT, KEY k1(b(10))) ENGINE=INNODB;
73+
INSERT INTO t1 VALUES (1, REPEAT('abc',1000));
74+
SHOW TABLE STATUS LIKE 't1';
75+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
76+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
77+
SET GLOBAL innodb_default_row_format=DYNAMIC;
78+
ALTER TABLE t1 DROP INDEX k1;
79+
# Because it is in-place operation, there is no rebuild, so the
80+
# original format has to be retained.
81+
SHOW TABLE STATUS LIKE 't1';
82+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
83+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
84+
DROP TABLE t1;
85+
SET GLOBAL innodb_default_row_format = @row_format;
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
SET @row_format = @@GLOBAL.innodb_default_row_format;
2+
SET @large_prefix = @@GLOBAL.innodb_large_prefix;
3+
SET @file_format = @@GLOBAL.innodb_file_format;
4+
SET GLOBAL innodb_file_format = barracuda;
5+
# ###########################################################
6+
# Check with Import/Export tablespace with Default_row_format
7+
SET GLOBAL innodb_default_row_format=Compact;
8+
SELECT @@innodb_default_row_format;
9+
@@innodb_default_row_format
10+
compact
11+
SELECT @@innodb_file_per_table;
12+
@@innodb_file_per_table
13+
1
14+
CREATE TABLE tab(a INT) ENGINE=InnoDB;
15+
SHOW TABLE STATUS LIKE 'tab';
16+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
17+
tab InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
18+
INSERT INTO tab VALUES(1);
19+
INSERT INTO tab VALUES(2);
20+
SELECT * FROM tab;
21+
a
22+
1
23+
2
24+
FLUSH TABLE tab FOR EXPORT;
25+
UNLOCK TABLES;
26+
DROP TABLE tab;
27+
SET GLOBAL innodb_default_row_format=Dynamic;
28+
CREATE TABLE tab(a INT) ENGINE=InnoDB;
29+
ALTER TABLE tab DISCARD TABLESPACE;
30+
ALTER TABLE tab IMPORT TABLESPACE;
31+
ERROR HY000: Schema mismatch (Table flags don't match, server table has 0x21 and the meta-data file has 0x1)
32+
DROP TABLE tab;
33+
SET GLOBAL innodb_default_row_format=Compact;
34+
SELECT @@innodb_default_row_format;
35+
@@innodb_default_row_format
36+
compact
37+
CREATE TABLE tab(a INT) ENGINE=InnoDB;
38+
SHOW TABLE STATUS LIKE 'tab';
39+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
40+
tab InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
41+
ALTER TABLE tab DISCARD TABLESPACE;
42+
ALTER TABLE tab IMPORT TABLESPACE;
43+
SELECT * FROM tab;
44+
a
45+
1
46+
2
47+
DROP TABLE tab;
48+
# ###########################################################
49+
SET GLOBAL innodb_default_row_format=Dynamic;
50+
SET GLOBAL innodb_large_prefix=ON;
51+
SELECT @@innodb_default_row_format;
52+
@@innodb_default_row_format
53+
dynamic
54+
CREATE TABLE tab(a INT PRIMARY KEY, b VARCHAR(5000), KEY idx1(b(3070))) ENGINE= InnoDB;
55+
SHOW TABLE STATUS LIKE 'tab';
56+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
57+
tab InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
58+
INSERT INTO tab(a,b) VALUES(1,'Check with max column size');
59+
SELECT * FROM tab;
60+
a b
61+
1 Check with max column size
62+
SET GLOBAL innodb_default_row_format=COMPACT;
63+
ALTER TABLE tab ROW_FORMAT=COMPACT;
64+
ERROR HY000: Index column size too large. The maximum column size is 767 bytes.
65+
DROP TABLE tab;
66+
SET GLOBAL innodb_default_row_format=Default;
67+
SELECT @@innodb_default_row_format;
68+
@@innodb_default_row_format
69+
compact
70+
SET GLOBAL innodb_default_row_format=Dynamic;
71+
SELECT @@innodb_default_row_format;
72+
@@innodb_default_row_format
73+
dynamic
74+
CREATE TABLE tab(a INT PRIMARY KEY, b VARCHAR(5000), KEY idx1(b(767))) ENGINE= InnoDB;
75+
SHOW TABLE STATUS LIKE 'tab';
76+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
77+
tab InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
78+
INSERT INTO tab(a,b) VALUES(1,'Check with max column size');
79+
SELECT * FROM tab;
80+
a b
81+
1 Check with max column size
82+
ALTER TABLE tab ROW_FORMAT=COMPACT;
83+
SHOW TABLE STATUS LIKE 'tab';
84+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
85+
tab InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=COMPACT
86+
SELECT * FROM tab;
87+
a b
88+
1 Check with max column size
89+
ALTER TABLE tab ROW_FORMAT=COMPRESSED;
90+
SELECT * FROM tab;
91+
a b
92+
1 Check with max column size
93+
ALTER TABLE tab ROW_FORMAT=Dynamic;
94+
SHOW TABLE STATUS LIKE 'tab';
95+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
96+
tab InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=DYNAMIC
97+
DROP TABLE tab;
98+
SET GLOBAL innodb_default_row_format = @row_format;
99+
SET GLOBAL innodb_large_prefix = @large_prefix;
100+
SET GLOBAL innodb_file_format = @file_format;
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
--- default_row_format_create.result
2+
+++ default_row_format_create,dynamic.result
3+
@@ -1,7 +1,7 @@
4+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB;
5+
SHOW TABLE STATUS LIKE 't1';
6+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
7+
-t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
8+
+t1 InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
9+
DROP TABLE t1;
10+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
11+
SHOW TABLE STATUS LIKE 't1';
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
--- default_row_format_create.result
2+
+++ default_row_format_create,redundant.result
3+
@@ -1,7 +1,7 @@
4+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB;
5+
SHOW TABLE STATUS LIKE 't1';
6+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
7+
-t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
8+
+t1 InnoDB # Redundant # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
9+
DROP TABLE t1;
10+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
11+
SHOW TABLE STATUS LIKE 't1';
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB;
2+
SHOW TABLE STATUS LIKE 't1';
3+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
4+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL
5+
DROP TABLE t1;
6+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
7+
SHOW TABLE STATUS LIKE 't1';
8+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
9+
t1 InnoDB # Dynamic # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=DYNAMIC
10+
DROP TABLE t1;
11+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=COMPACT;
12+
SHOW TABLE STATUS LIKE 't1';
13+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
14+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=COMPACT
15+
DROP TABLE t1;
16+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
17+
SHOW TABLE STATUS LIKE 't1';
18+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
19+
t1 InnoDB # Redundant # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=REDUNDANT
20+
DROP TABLE t1;
21+
CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB
22+
ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
23+
Warnings:
24+
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_format > Antelope.
25+
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=1.
26+
Warning 1478 InnoDB: ROW_FORMAT=COMPRESSED requires innodb_file_format > Antelope.
27+
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
28+
SHOW TABLE STATUS LIKE 't1';
29+
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
30+
t1 InnoDB # Compact # # # # # # NULL # NULL NULL latin1_swedish_ci NULL row_format=COMPRESSED key_block_size=1
31+
DROP TABLE t1;
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
SELECT @@innodb_strict_mode;
2+
@@innodb_strict_mode
3+
0
4+
SELECT @@innodb_file_per_table;
5+
@@innodb_file_per_table
6+
1
7+
SET @file_format = @@GLOBAL.innodb_file_format;
8+
SET GLOBAL innodb_large_prefix=ON;
9+
SET SQL_MODE=strict_all_tables;
10+
CREATE TABLE tab0 (c1 VARCHAR(65530), KEY(c1(3073))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED;
11+
Warnings:
12+
Warning 1071 Specified key was too long; max key length is 3072 bytes
13+
SHOW CREATE TABLE tab0;
14+
Table Create Table
15+
tab0 CREATE TABLE `tab0` (
16+
`c1` varchar(65530) DEFAULT NULL,
17+
KEY `c1` (`c1`(3072))
18+
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
19+
DROP TABLE tab0;
20+
CREATE TABLE tab0 (c1 VARCHAR(65530), KEY(c1(3073))) ENGINE=InnoDB KEY_BLOCK_SIZE=2;
21+
ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
22+
SET GLOBAL innodb_file_format=Antelope;
23+
CREATE TABLE tab0(c1 INT,c2 LONGBLOB ) ENGINE=InnoDB ROW_FORMAT=Dynamic;
24+
DROP TABLE tab0;
25+
SET GLOBAL innodb_file_format=Default;
26+
SELECT @@innodb_file_format;
27+
@@innodb_file_format
28+
Antelope
29+
SET GLOBAL innodb_strict_mode=OFF;
30+
SET GLOBAL innodb_strict_mode=Default;
31+
SELECT @@innodb_strict_mode;
32+
@@innodb_strict_mode
33+
0
34+
SET GLOBAL innodb_large_prefix=OFF;
35+
SELECT @@innodb_large_prefix;
36+
@@innodb_large_prefix
37+
0
38+
SET GLOBAL innodb_large_prefix=Default;
39+
SELECT @@innodb_large_prefix;
40+
@@innodb_large_prefix
41+
0
42+
SET GLOBAL innodb_file_format_max=Default;
43+
SELECT @@innodb_file_format_max;
44+
@@innodb_file_format_max
45+
Antelope
46+
CREATE TABLE tab1(c1 int ) ENGINE=InnoDB ROW_FORMAT=COMPRESSED;
47+
Warnings:
48+
Warning 1478 InnoDB: ROW_FORMAT=COMPRESSED requires innodb_file_format > Antelope.
49+
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
50+
SELECT @@innodb_file_format_max;
51+
@@innodb_file_format_max
52+
Antelope
53+
SET GLOBAL innodb_file_format_max=Default;
54+
SET GLOBAL innodb_large_prefix=off;
55+
SET GLOBAL innodb_file_format = @file_format;
56+
DROP TABLE tab1;

0 commit comments

Comments
 (0)