Commit 5299f0c4 authored by Marko Mäkelä's avatar Marko Mäkelä

MDEV-21664 Add opt files for have_innodb_Xk.inc

Currently include/have_innodb_4k.inc etc. files only check that the
server is running with the corresponding page size. I think it would
be more convenient if they actually enforced the setting.
parent d4fd4ae4
...@@ -14,19 +14,19 @@ Table Create Table ...@@ -14,19 +14,19 @@ Table Create Table
innodb_compact CREATE TABLE `innodb_compact` ( innodb_compact CREATE TABLE `innodb_compact` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT `encrypted`=yes `encryption_key_id`=1 ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=COMPACT `encrypted`=yes `encryption_key_id`=1
show create table innodb_dynamic; show create table innodb_dynamic;
Table Create Table Table Create Table
innodb_dynamic CREATE TABLE `innodb_dynamic` ( innodb_dynamic CREATE TABLE `innodb_dynamic` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC `encrypted`=yes `encryption_key_id`=33 ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=DYNAMIC `encrypted`=yes `encryption_key_id`=33
show create table innodb_redundant; show create table innodb_redundant;
Table Create Table Table Create Table
innodb_redundant CREATE TABLE `innodb_redundant` ( innodb_redundant CREATE TABLE `innodb_redundant` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT `encrypted`=yes `encryption_key_id`=4 ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=REDUNDANT `encrypted`=yes `encryption_key_id`=4
create procedure innodb_insert_proc (repeat_count int) create procedure innodb_insert_proc (repeat_count int)
begin begin
declare current_num int; declare current_num int;
...@@ -56,6 +56,7 @@ count(*) ...@@ -56,6 +56,7 @@ count(*)
select count(*) from innodb_redundant where c1 < 1500000; select count(*) from innodb_redundant where c1 < 1500000;
count(*) count(*)
5000 5000
# restart
update innodb_compact set c1 = c1 + 1; update innodb_compact set c1 = c1 + 1;
update innodb_dynamic set c1 = c1 + 1; update innodb_dynamic set c1 = c1 + 1;
update innodb_redundant set c1 = c1 + 1; update innodb_redundant set c1 = c1 + 1;
...@@ -74,39 +75,40 @@ Table Create Table ...@@ -74,39 +75,40 @@ Table Create Table
innodb_compact CREATE TABLE `innodb_compact` ( innodb_compact CREATE TABLE `innodb_compact` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=COMPACT
alter table innodb_dynamic engine=innodb encrypted=DEFAULT encryption_key_id=DEFAULT; alter table innodb_dynamic engine=innodb encrypted=DEFAULT encryption_key_id=DEFAULT;
show create table innodb_dynamic; show create table innodb_dynamic;
Table Create Table Table Create Table
innodb_dynamic CREATE TABLE `innodb_dynamic` ( innodb_dynamic CREATE TABLE `innodb_dynamic` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=DYNAMIC
alter table innodb_redundant engine=innodb encrypted=DEFAULT encryption_key_id=DEFAULT; alter table innodb_redundant engine=innodb encrypted=DEFAULT encryption_key_id=DEFAULT;
show create table innodb_redundant; show create table innodb_redundant;
Table Create Table Table Create Table
innodb_redundant CREATE TABLE `innodb_redundant` ( innodb_redundant CREATE TABLE `innodb_redundant` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=REDUNDANT
# restart
show create table innodb_compact; show create table innodb_compact;
Table Create Table Table Create Table
innodb_compact CREATE TABLE `innodb_compact` ( innodb_compact CREATE TABLE `innodb_compact` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=COMPACT
show create table innodb_dynamic; show create table innodb_dynamic;
Table Create Table Table Create Table
innodb_dynamic CREATE TABLE `innodb_dynamic` ( innodb_dynamic CREATE TABLE `innodb_dynamic` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=DYNAMIC
show create table innodb_redundant; show create table innodb_redundant;
Table Create Table Table Create Table
innodb_redundant CREATE TABLE `innodb_redundant` ( innodb_redundant CREATE TABLE `innodb_redundant` (
`c1` bigint(20) NOT NULL, `c1` bigint(20) NOT NULL,
`b` char(200) DEFAULT NULL `b` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=REDUNDANT
update innodb_compact set c1 = c1 + 1; update innodb_compact set c1 = c1 + 1;
update innodb_dynamic set c1 = c1 + 1; update innodb_dynamic set c1 = c1 + 1;
update innodb_redundant set c1 = c1 + 1; update innodb_redundant set c1 = c1 + 1;
......
...@@ -266,7 +266,7 @@ drop table worklog5743_8; ...@@ -266,7 +266,7 @@ drop table worklog5743_8;
### Test 5 ### ### Test 5 ###
create table worklog5743(a1 int, a2 varchar(20000)) ROW_FORMAT=DYNAMIC; create table worklog5743(a1 int, a2 varchar(20000)) ROW_FORMAT=DYNAMIC;
create index idx1 on worklog5743(a2); create index idx1 on worklog5743(a2);
ERROR 42000: Specified key was too long; max key length is 3072 bytes ERROR 42000: Specified key was too long; max key length is 1536 bytes
drop table worklog5743; drop table worklog5743;
create table worklog5743(a1 int, a2 varchar(1537)) ROW_FORMAT=DYNAMIC; create table worklog5743(a1 int, a2 varchar(1537)) ROW_FORMAT=DYNAMIC;
create index idx1 on worklog5743(a2); create index idx1 on worklog5743(a2);
...@@ -362,7 +362,7 @@ worklog5743 CREATE TABLE `worklog5743` ( ...@@ -362,7 +362,7 @@ worklog5743 CREATE TABLE `worklog5743` (
`a` text NOT NULL, `a` text NOT NULL,
KEY `idx1` (`a`(1536)), KEY `idx1` (`a`(1536)),
KEY `idx2` (`a`(1536)) KEY `idx2` (`a`(1536))
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=DYNAMIC
drop table worklog5743; drop table worklog5743;
create table worklog5743(a TEXT not null) ROW_FORMAT=REDUNDANT; create table worklog5743(a TEXT not null) ROW_FORMAT=REDUNDANT;
create index idx on worklog5743(a(768)); create index idx on worklog5743(a(768));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment