Skip to content

Commit 187b9c9

Browse files
committed
MDEV-22817: Add a test case
1 parent 0df01cc commit 187b9c9

File tree

2 files changed

+58
-0
lines changed

2 files changed

+58
-0
lines changed

mysql-test/suite/parts/r/longname.result

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,38 @@ SUBPARTITIONS 2 (
2525
PARTITION çççççççççççççççççççççççççççççççççççççççççççççççççççççççççççç VALUES LESS THAN (1000) ENGINE = InnoDB,
2626
PARTITION pmax VALUES LESS THAN MAXVALUE ENGINE = InnoDB);
2727
ERROR HY000: The path specified for @0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@... is too long
28+
SET @file_per_table=@@GLOBAL.innodb_file_per_table;
29+
SET GLOBAL innodb_file_per_table=0;
30+
CREATE TABLE mysqltest1.t1 (a INT) ENGINE=INNODB
31+
PARTITION BY RANGE (a) SUBPARTITION BY HASH(a)
32+
(PARTITION `$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$`
33+
VALUES LESS THAN (10)
34+
(SUBPARTITION
35+
`--------------------------abcdef0123456789abcdef0123456789abcdef`,
36+
SUBPARTITION
37+
`0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef`)
38+
);
39+
SET GLOBAL innodb_file_per_table=@file_per_table;
40+
SHOW CREATE TABLE mysqltest1.t1;
41+
Table Create Table
42+
t1 CREATE TABLE `t1` (
43+
`a` int(11) DEFAULT NULL
44+
) ENGINE=InnoDB DEFAULT CHARSET=latin1
45+
PARTITION BY RANGE (`a`)
46+
SUBPARTITION BY HASH (`a`)
47+
(PARTITION `$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$` VALUES LESS THAN (10)
48+
(SUBPARTITION `--------------------------abcdef0123456789abcdef0123456789abcdef` ENGINE = InnoDB,
49+
SUBPARTITION `0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef` ENGINE = InnoDB))
50+
INSERT INTO mysqltest1.t1 VALUES(1);
51+
DROP TABLE mysqltest1.`#mysql50#t1#P#@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024#SP#0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef`;
52+
ERROR 42000: Incorrect table name '#mysql50#t1#P#@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@'
53+
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES
54+
WHERE NAME LIKE 'mysqltest1%';
55+
NAME
56+
mysqltest1/t1#P#@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024#SP#0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
57+
mysqltest1/t1#P#@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024#SP#@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002d@002dabcdef0123456789abcdef0123456789abcdef
58+
mysqltest1/test_jfg_table_name_with_64_chars_123456789012345678901234567890#P#pmax#SP#pmaxsp0
59+
mysqltest1/test_jfg_table_name_with_64_chars_123456789012345678901234567890#P#pmax#SP#pmaxsp1
60+
mysqltest1/test_jfg_table_name_with_64_chars_123456789012345678901234567890#P#test_jfg_partition_name_with_60_chars_1234567890123456789012#SP#test_jfg_partition_name_with_60_chars_1234567890123456789012sp0
61+
mysqltest1/test_jfg_table_name_with_64_chars_123456789012345678901234567890#P#test_jfg_partition_name_with_60_chars_1234567890123456789012#SP#test_jfg_partition_name_with_60_chars_1234567890123456789012sp1
2862
drop database mysqltest1;

mysql-test/suite/parts/t/longname.test

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,28 @@ PARTITION BY RANGE ( id )
2929
PARTITION çççççççççççççççççççççççççççççççççççççççççççççççççççççççççççç VALUES LESS THAN (1000) ENGINE = InnoDB,
3030
PARTITION pmax VALUES LESS THAN MAXVALUE ENGINE = InnoDB);
3131

32+
SET @file_per_table=@@GLOBAL.innodb_file_per_table;
33+
SET GLOBAL innodb_file_per_table=0;
34+
35+
CREATE TABLE mysqltest1.t1 (a INT) ENGINE=INNODB
36+
PARTITION BY RANGE (a) SUBPARTITION BY HASH(a)
37+
(PARTITION `$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$`
38+
VALUES LESS THAN (10)
39+
(SUBPARTITION
40+
`--------------------------abcdef0123456789abcdef0123456789abcdef`,
41+
SUBPARTITION
42+
`0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef`)
43+
);
44+
45+
SET GLOBAL innodb_file_per_table=@file_per_table;
46+
47+
SHOW CREATE TABLE mysqltest1.t1;
48+
INSERT INTO mysqltest1.t1 VALUES(1);
49+
50+
--error ER_WRONG_TABLE_NAME
51+
DROP TABLE mysqltest1.`#mysql50#t1#P#@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024@0024#SP#0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef`;
52+
53+
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES
54+
WHERE NAME LIKE 'mysqltest1%';
55+
3256
drop database mysqltest1;

0 commit comments

Comments
 (0)