File: file_format_defaults.test

package info (click to toggle)
mariadb-10.1 10.1.45-0%2Bdeb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 476,916 kB
  • sloc: cpp: 1,124,656; ansic: 871,843; perl: 52,917; sh: 40,078; pascal: 35,370; javascript: 15,555; yacc: 14,728; ruby: 8,684; xml: 5,377; sql: 3,490; makefile: 2,934; python: 1,970; java: 1,691; asm: 837; lex: 757; php: 22; sed: 16
file content (73 lines) | stat: -rw-r--r-- 1,990 bytes parent folder | download
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
#***********************************************************
# WL#7703:
# Check the max key length 3072 when innodb_large_prefix=ON
# Check boundary value of max key length 3073
# When innodb_file_format=Antelope, compress DDLs fails
# Check file_format_max becomes Barracuda on DDL operation
# on compression table.
#***********************************************************
-- source include/have_innodb.inc
-- source include/have_innodb_16k.inc

# Check some default settings
SELECT @@innodb_strict_mode;

SELECT @@innodb_file_per_table;

SET @file_format = @@GLOBAL.innodb_file_format;

SET GLOBAL innodb_large_prefix=ON;
SET SQL_MODE=strict_all_tables;

CREATE TABLE tab0 (c1 VARCHAR(65530), KEY(c1(3073))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED;
SHOW CREATE TABLE tab0;
DROP TABLE tab0;

--error ER_TOO_BIG_ROWSIZE
CREATE TABLE tab0 (c1 VARCHAR(65530), KEY(c1(3073))) ENGINE=InnoDB KEY_BLOCK_SIZE=2;

SET GLOBAL innodb_file_format=Antelope;

# WL#8307 Make ROW_FORMAT=DYNAMIC the default
# will allow ROW_FORMAT=DYNAMIC even if innodb_file_format=Antelope.
CREATE TABLE tab0(c1 INT,c2 LONGBLOB ) ENGINE=InnoDB ROW_FORMAT=Dynamic;
DROP TABLE tab0;

SET GLOBAL innodb_file_format=Default;

SELECT @@innodb_file_format;

SET GLOBAL innodb_strict_mode=OFF;

# Check with default value
SET GLOBAL innodb_strict_mode=Default;

SELECT @@innodb_strict_mode;

SET GLOBAL innodb_large_prefix=OFF;

SELECT @@innodb_large_prefix;

SET GLOBAL innodb_large_prefix=Default;

# Check with default value
SELECT @@innodb_large_prefix;

SET GLOBAL innodb_file_format_max=Default;

# Check with default value
SELECT @@innodb_file_format_max;

CREATE TABLE tab1(c1 int ) ENGINE=InnoDB ROW_FORMAT=COMPRESSED;

# Check file format changed to Barracuda, on DDL operation
SELECT @@innodb_file_format_max;

SET GLOBAL innodb_file_format_max=Default;

# Restore to the value that we explicitly used at startup.
SET GLOBAL innodb_large_prefix=off;

SET GLOBAL innodb_file_format = @file_format;

DROP TABLE tab1;