mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
161 lines
4.9 KiB
Text
161 lines
4.9 KiB
Text
CREATE TABLE t1 (f1 DATE NOT NULL)
|
|
ENGINE = ARCHIVE PARTITION BY RANGE (TO_DAYS(f1))
|
|
(partition p1 values less than (733751),
|
|
partition p2 values less than MAXVALUE);
|
|
INSERT INTO t1 VALUES(CURRENT_DATE);
|
|
SELECT DATA_LENGTH, INDEX_LENGTH FROM information_schema.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
|
|
DATA_LENGTH INDEX_LENGTH
|
|
190 0
|
|
SELECT DATA_LENGTH, INDEX_LENGTH FROM information_schema.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
|
|
DATA_LENGTH INDEX_LENGTH
|
|
190 0
|
|
DROP TABLE t1;
|
|
CREATE TABLE t1 (f1 DATE NOT NULL)
|
|
ENGINE = ARCHIVE;
|
|
INSERT INTO t1 VALUES(CURRENT_DATE);
|
|
SELECT DATA_LENGTH, INDEX_LENGTH FROM information_schema.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
|
|
DATA_LENGTH INDEX_LENGTH
|
|
535 0
|
|
SELECT DATA_LENGTH, INDEX_LENGTH FROM information_schema.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
|
|
DATA_LENGTH INDEX_LENGTH
|
|
535 0
|
|
DROP TABLE t1;
|
|
drop database if exists db99;
|
|
drop table if exists t1;
|
|
create database db99;
|
|
use db99;
|
|
create table t1 (a int not null)
|
|
engine=archive
|
|
partition by list (a)
|
|
(partition p0 values in (1), partition p1 values in (2));
|
|
insert into t1 values (1), (2);
|
|
create index inx on t1 (a);
|
|
ERROR HY000: Can't create table `db99`.`t1` (errno: 140 "Wrong create options")
|
|
alter table t1 add partition (partition p2 values in (3));
|
|
alter table t1 drop partition p2;
|
|
use test;
|
|
drop database db99;
|
|
create table t1 (f1 integer) engine= ARCHIVE partition by list(f1)
|
|
(
|
|
partition p1 values in (1),
|
|
partition p2 values in (NULL),
|
|
partition p3 values in (2),
|
|
partition p4 values in (3),
|
|
partition p5 values in (4)
|
|
);
|
|
insert into t1 values (1),(2),(3),(4),(null);
|
|
select * from t1;
|
|
f1
|
|
1
|
|
NULL
|
|
2
|
|
3
|
|
4
|
|
select * from t1 where f1 < 3;
|
|
f1
|
|
1
|
|
2
|
|
drop table t1;
|
|
CREATE TABLE t1 (
|
|
a int not null,
|
|
b int not null,
|
|
c int not null) engine=ARCHIVE
|
|
partition by hash (a + 2)
|
|
partitions 3
|
|
(partition x1 tablespace ts1,
|
|
partition x2 tablespace ts2,
|
|
partition x3 tablespace ts3);
|
|
insert into t1 values (1,1,1);
|
|
insert into t1 values (2,1,1);
|
|
insert into t1 values (3,1,1);
|
|
insert into t1 values (4,1,1);
|
|
insert into t1 values (5,1,1);
|
|
select * from t1;
|
|
a b c
|
|
1 1 1
|
|
4 1 1
|
|
2 1 1
|
|
5 1 1
|
|
3 1 1
|
|
drop table t1;
|
|
create table t1 (a int) engine=archive partition by hash(a);
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) DEFAULT NULL
|
|
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
|
PARTITION BY HASH (`a`)
|
|
drop table t1;
|
|
CREATE TABLE t1(id MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
f1 VARCHAR(25),
|
|
PRIMARY KEY(id)) ENGINE=ARCHIVE
|
|
PARTITION BY RANGE(id)
|
|
SUBPARTITION BY hash(id) subpartitions 2
|
|
(PARTITION pa1 values less than (10),
|
|
PARTITION pa2 values less than (20),
|
|
PARTITION pa3 values less than (30),
|
|
PARTITION pa4 values less than (40),
|
|
PARTITION pa5 values less than (50),
|
|
PARTITION pa6 values less than (60),
|
|
PARTITION pa7 values less than (70),
|
|
PARTITION pa8 values less than (80),
|
|
PARTITION pa9 values less than (90),
|
|
PARTITION pa10 values less than (100),
|
|
PARTITION pa11 values less than MAXVALUE);
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
|
|
`f1` varchar(25) DEFAULT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=ARCHIVE AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
|
PARTITION BY RANGE (`id`)
|
|
SUBPARTITION BY HASH (`id`)
|
|
SUBPARTITIONS 2
|
|
(PARTITION `pa1` VALUES LESS THAN (10) ENGINE = ARCHIVE,
|
|
PARTITION `pa2` VALUES LESS THAN (20) ENGINE = ARCHIVE,
|
|
PARTITION `pa3` VALUES LESS THAN (30) ENGINE = ARCHIVE,
|
|
PARTITION `pa4` VALUES LESS THAN (40) ENGINE = ARCHIVE,
|
|
PARTITION `pa5` VALUES LESS THAN (50) ENGINE = ARCHIVE,
|
|
PARTITION `pa6` VALUES LESS THAN (60) ENGINE = ARCHIVE,
|
|
PARTITION `pa7` VALUES LESS THAN (70) ENGINE = ARCHIVE,
|
|
PARTITION `pa8` VALUES LESS THAN (80) ENGINE = ARCHIVE,
|
|
PARTITION `pa9` VALUES LESS THAN (90) ENGINE = ARCHIVE,
|
|
PARTITION `pa10` VALUES LESS THAN (100) ENGINE = ARCHIVE,
|
|
PARTITION `pa11` VALUES LESS THAN MAXVALUE ENGINE = ARCHIVE)
|
|
select count(*) from t1;
|
|
count(*)
|
|
100
|
|
drop table t1;
|
|
#
|
|
#BUG 18618561: FAILED ALTER TABLE ENGINE CHANGE WITH PARTITIONS
|
|
# CORRUPTS FRM
|
|
CREATE TABLE t1 (fld1 INT PRIMARY KEY) ENGINE= MYISAM PARTITION BY HASH(fld1)
|
|
PARTITIONS 5;
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`fld1` int(11) NOT NULL,
|
|
PRIMARY KEY (`fld1`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
|
PARTITION BY HASH (`fld1`)
|
|
PARTITIONS 5
|
|
ALTER TABLE t1 ENGINE= ARCHIVE;
|
|
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
|
#After the patch, the ENGINE is correctly displayed as MyISAM
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`fld1` int(11) NOT NULL,
|
|
PRIMARY KEY (`fld1`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
|
PARTITION BY HASH (`fld1`)
|
|
PARTITIONS 5
|
|
#Cleanup.
|
|
DROP TABLE t1;
|
|
create database mysqltest1;
|
|
create table mysqltest1.t1 (a int not null, b int not null) engine=archive
|
|
partition by list(a) subpartition by hash(b)
|
|
(partition p1 values in (1),
|
|
partition p2 values in (2));
|
|
drop database mysqltest1;
|