mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
.del-ndb_partition_range.result~17fc1db754d4153d:
Delete: mysql-test/r/ndb_partition_range.result .del-ndb_partition_list.result~7af68cd45e74abf: Delete: mysql-test/r/ndb_partition_list.result .del-ndb_partition_key.result~68b9a59cff8c9840: Delete: mysql-test/r/ndb_partition_key.result .del-ndb_partition_error.result~944f84894e323e9: Delete: mysql-test/r/ndb_partition_error.result .del-ndb_blob_partition.result~fda88ddfc5477a7e: Delete: mysql-test/r/ndb_blob_partition.result .del-ndb_partition_range.test~af8f9016b6648239: Delete: mysql-test/t/ndb_partition_range.test .del-ndb_partition_list.test~940289b3d58595ca: Delete: mysql-test/t/ndb_partition_list.test .del-ndb_partition_key.test~ed7b15c91f66558d: Delete: mysql-test/t/ndb_partition_key.test .del-ndb_partition_error.test~2da477be29be041f: Delete: mysql-test/t/ndb_partition_error.test .del-ndb_blob_partition.test~ea99ef9759705ce3: Delete: mysql-test/t/ndb_blob_partition.test BitKeeper/deleted/.del-ndb_blob_partition.test~ea99ef9759705ce3: Delete: mysql-test/t/ndb_blob_partition.test BitKeeper/deleted/.del-ndb_partition_error.test~2da477be29be041f: Delete: mysql-test/t/ndb_partition_error.test BitKeeper/deleted/.del-ndb_partition_key.test~ed7b15c91f66558d: Delete: mysql-test/t/ndb_partition_key.test BitKeeper/deleted/.del-ndb_partition_list.test~940289b3d58595ca: Delete: mysql-test/t/ndb_partition_list.test BitKeeper/deleted/.del-ndb_partition_range.test~af8f9016b6648239: Delete: mysql-test/t/ndb_partition_range.test BitKeeper/deleted/.del-ndb_blob_partition.result~fda88ddfc5477a7e: Delete: mysql-test/r/ndb_blob_partition.result BitKeeper/deleted/.del-ndb_partition_error.result~944f84894e323e9: Delete: mysql-test/r/ndb_partition_error.result BitKeeper/deleted/.del-ndb_partition_key.result~68b9a59cff8c9840: Delete: mysql-test/r/ndb_partition_key.result BitKeeper/deleted/.del-ndb_partition_list.result~7af68cd45e74abf: Delete: mysql-test/r/ndb_partition_list.result BitKeeper/deleted/.del-ndb_partition_range.result~17fc1db754d4153d: Delete: mysql-test/r/ndb_partition_range.result
This commit is contained in:
@ -1,104 +0,0 @@
|
|||||||
drop table if exists t1;
|
|
||||||
create table t1 (
|
|
||||||
a mediumint not null,
|
|
||||||
b text not null,
|
|
||||||
c int not null,
|
|
||||||
d longblob,
|
|
||||||
primary key using hash (a,c),
|
|
||||||
unique key (c)
|
|
||||||
)
|
|
||||||
engine=ndb
|
|
||||||
partition by range (c)
|
|
||||||
partitions 3
|
|
||||||
( partition p1 values less than (200),
|
|
||||||
partition p2 values less than (300),
|
|
||||||
partition p3 values less than (400));
|
|
||||||
insert into t1 values (1, @v1, 101, @v2);
|
|
||||||
insert into t1 values (1, @v2, 102, @v3);
|
|
||||||
insert into t1 values (1, @v3, 103, @v4);
|
|
||||||
insert into t1 values (2, @v4, 201, @v5);
|
|
||||||
insert into t1 values (2, @v5, 202, @v6);
|
|
||||||
insert into t1 values (2, @v6, 203, @v7);
|
|
||||||
insert into t1 values (3, @v7, 301, @v8);
|
|
||||||
insert into t1 values (3, @v8, 302, @v9);
|
|
||||||
insert into t1 values (3, @v9, 303, @v1);
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 101 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
1 10d3c783026b310218d10b7188da96a2401648c6 102 a33549d9844092289a58ac348dd59f09fc28406a
|
|
||||||
1 a33549d9844092289a58ac348dd59f09fc28406a 103 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 201 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 70fc9a7d08beebc522258bfb02000a30c77a8f1d 202 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
2 090565c580809efed3d369481a4bbb168b20713e 203 1e0070bec426871a46291de27b9bd6e4255ab4e5
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 301 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 acbaba01bc2e682f015f40e79d9cbe475db3002e 302 9ee30d99162574f79c66ae95cdf132dcf9cbc259
|
|
||||||
3 9ee30d99162574f79c66ae95cdf132dcf9cbc259 303 1d42dd9090cf78314a06665d4ea938c35cc760f4
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 1 and c = 101;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 101 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 2 and c = 201;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 201 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 3 and c = 301;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 301 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
update t1 set b = @v3, d = @v4 where a = 1 and c = 102;
|
|
||||||
update t1 set b = @v6, d = @v7 where a = 2 and c = 202;
|
|
||||||
update t1 set b = @v9, d = @v1 where a = 3 and c = 302;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 101 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
1 a33549d9844092289a58ac348dd59f09fc28406a 102 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c
|
|
||||||
1 a33549d9844092289a58ac348dd59f09fc28406a 103 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 201 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 090565c580809efed3d369481a4bbb168b20713e 202 1e0070bec426871a46291de27b9bd6e4255ab4e5
|
|
||||||
2 090565c580809efed3d369481a4bbb168b20713e 203 1e0070bec426871a46291de27b9bd6e4255ab4e5
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 301 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 9ee30d99162574f79c66ae95cdf132dcf9cbc259 302 1d42dd9090cf78314a06665d4ea938c35cc760f4
|
|
||||||
3 9ee30d99162574f79c66ae95cdf132dcf9cbc259 303 1d42dd9090cf78314a06665d4ea938c35cc760f4
|
|
||||||
update t1 set b = @v4, d = @v5 where c = 103;
|
|
||||||
update t1 set b = @v7, d = @v8 where c = 203;
|
|
||||||
update t1 set b = @v1, d = @v2 where c = 303;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 101 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
1 a33549d9844092289a58ac348dd59f09fc28406a 102 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c
|
|
||||||
1 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 103 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 201 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 090565c580809efed3d369481a4bbb168b20713e 202 1e0070bec426871a46291de27b9bd6e4255ab4e5
|
|
||||||
2 1e0070bec426871a46291de27b9bd6e4255ab4e5 203 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 301 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 9ee30d99162574f79c66ae95cdf132dcf9cbc259 302 1d42dd9090cf78314a06665d4ea938c35cc760f4
|
|
||||||
3 1d42dd9090cf78314a06665d4ea938c35cc760f4 303 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
update t1 set b = @v5, d = @v6;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 70fc9a7d08beebc522258bfb02000a30c77a8f1d 101 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
1 70fc9a7d08beebc522258bfb02000a30c77a8f1d 102 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
1 70fc9a7d08beebc522258bfb02000a30c77a8f1d 103 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
2 70fc9a7d08beebc522258bfb02000a30c77a8f1d 201 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
2 70fc9a7d08beebc522258bfb02000a30c77a8f1d 202 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
2 70fc9a7d08beebc522258bfb02000a30c77a8f1d 203 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
3 70fc9a7d08beebc522258bfb02000a30c77a8f1d 301 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
3 70fc9a7d08beebc522258bfb02000a30c77a8f1d 302 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
3 70fc9a7d08beebc522258bfb02000a30c77a8f1d 303 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
update t1 set b = @v1, d = @v2 where 100 < c and c < 200;
|
|
||||||
update t1 set b = @v4, d = @v5 where 200 < c and c < 300;
|
|
||||||
update t1 set b = @v7, d = @v8 where 300 < c and c < 400;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 101 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 102 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
1 1d42dd9090cf78314a06665d4ea938c35cc760f4 103 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 201 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 202 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
2 daa61c6de36a0526f0d47dc29d6b9de7e6d2630c 203 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 301 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 302 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
3 1e0070bec426871a46291de27b9bd6e4255ab4e5 303 acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
delete from t1 where a = 1 and c = 101;
|
|
||||||
delete from t1 where c = 102;
|
|
||||||
delete from t1;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
a sha1(b) c sha1(d)
|
|
||||||
drop table t1;
|
|
@ -1,47 +0,0 @@
|
|||||||
drop table if exists t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a,b),
|
|
||||||
index (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5) nodegroup 12,
|
|
||||||
partition x2 values less than (10) nodegroup 13,
|
|
||||||
partition x3 values less than (20) nodegroup 14);
|
|
||||||
ERROR HY000: Can't create table 'test.t1' (errno: 140)
|
|
||||||
show warnings;
|
|
||||||
Level Code Message
|
|
||||||
Error 1296 Got error 771 'Given NODEGROUP doesn't exist in this cluster' from NDB
|
|
||||||
Error 1005 Can't create table 'test.t1' (errno: 140)
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 (id INT) ENGINE=NDB
|
|
||||||
PARTITION BY LIST(id)
|
|
||||||
(PARTITION p0 VALUES IN (2, 4),
|
|
||||||
PARTITION p1 VALUES IN (42, 142));
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
UPDATE t1 SET id=5 WHERE id=2;
|
|
||||||
ERROR HY000: Table has no partition for value 5
|
|
||||||
DROP TABLE t1;
|
|
||||||
create table t1 (a int,b int, c int)
|
|
||||||
engine = ndb
|
|
||||||
partition by list(a)
|
|
||||||
partitions 2
|
|
||||||
(partition x123 values in (11, 12),
|
|
||||||
partition x234 values in (5, 1));
|
|
||||||
insert into t1 values (NULL,1,1);
|
|
||||||
ERROR HY000: Table has no partition for value NULL
|
|
||||||
drop table t1;
|
|
@ -1,199 +0,0 @@
|
|||||||
DROP TABLE IF EXISTS t1;
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, d int, PRIMARY KEY(a,b,c))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (a,b);
|
|
||||||
insert into t1 values (1,1,1,1);
|
|
||||||
select * from t1;
|
|
||||||
a b c d
|
|
||||||
1 1 1 1
|
|
||||||
update t1 set d = 2 where a = 1 and b = 1 and c = 1;
|
|
||||||
select * from t1;
|
|
||||||
a b c d
|
|
||||||
1 1 1 2
|
|
||||||
delete from t1;
|
|
||||||
select * from t1;
|
|
||||||
a b c d
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, d int, PRIMARY KEY(a,b))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (c);
|
|
||||||
ERROR HY000: A PRIMARY KEY need to include all fields in the partition function
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, PRIMARY KEY(a,b))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (a);
|
|
||||||
insert into t1 values
|
|
||||||
(1,1,3),(1,2,3),(1,3,3),(1,4,3),(1,5,3),(1,6,3),
|
|
||||||
(1,7,3),(1,8,3),(1,9,3),(1,10,3),(1,11,3),(1,12,3);
|
|
||||||
select * from t1 order by b;
|
|
||||||
a b c
|
|
||||||
1 1 3
|
|
||||||
1 2 3
|
|
||||||
1 3 3
|
|
||||||
1 4 3
|
|
||||||
1 5 3
|
|
||||||
1 6 3
|
|
||||||
1 7 3
|
|
||||||
1 8 3
|
|
||||||
1 9 3
|
|
||||||
1 10 3
|
|
||||||
1 11 3
|
|
||||||
1 12 3
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (a INT, b CHAR(10) COLLATE latin1_bin, c INT, d INT,
|
|
||||||
PRIMARY KEY (a,b,c) USING HASH)
|
|
||||||
ENGINE=NDB
|
|
||||||
DEFAULT CHARSET=latin1
|
|
||||||
PARTITION BY KEY (b);
|
|
||||||
insert into t1 values (1,"a",1,1),(2,"a",1,1),(3,"a",1,1);
|
|
||||||
-- t1 --
|
|
||||||
|
|
||||||
Fragment type: 5
|
|
||||||
K Value: 6
|
|
||||||
Min load factor: 78
|
|
||||||
Max load factor: 80
|
|
||||||
Temporary table: no
|
|
||||||
Number of attributes: 4
|
|
||||||
Number of primary keys: 3
|
|
||||||
Length of frm data: #
|
|
||||||
Row Checksum: 1
|
|
||||||
Row GCI: 1
|
|
||||||
TableStatus: Retrieved
|
|
||||||
-- Attributes --
|
|
||||||
a Int PRIMARY KEY AT=FIXED ST=MEMORY
|
|
||||||
b Char(10;latin1_bin) PRIMARY KEY DISTRIBUTION KEY AT=FIXED ST=MEMORY
|
|
||||||
c Int PRIMARY KEY AT=FIXED ST=MEMORY
|
|
||||||
d Int NULL AT=FIXED ST=MEMORY
|
|
||||||
|
|
||||||
-- Indexes --
|
|
||||||
PRIMARY KEY(a, b, c) - UniqueHashIndex
|
|
||||||
|
|
||||||
|
|
||||||
NDBT_ProgramExit: 0 - OK
|
|
||||||
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) NOT NULL DEFAULT '0',
|
|
||||||
`b` char(10) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
|
|
||||||
`c` int(11) NOT NULL DEFAULT '0',
|
|
||||||
`d` int(11) DEFAULT NULL,
|
|
||||||
PRIMARY KEY (`a`,`b`,`c`) USING HASH
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (b)
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (a int not null primary key)
|
|
||||||
PARTITION BY KEY(a)
|
|
||||||
(PARTITION p0 ENGINE = NDB, PARTITION p1 ENGINE = NDB);
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 (a int not null primary key);
|
|
||||||
ALTER TABLE t1
|
|
||||||
PARTITION BY KEY(a)
|
|
||||||
(PARTITION p0 ENGINE = NDB, PARTITION p1 ENGINE = NDB);
|
|
||||||
drop table t1;
|
|
||||||
create table t1 (a int)
|
|
||||||
engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0, partition p1);
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = ndbcluster, PARTITION p1 ENGINE = ndbcluster)
|
|
||||||
alter table t1 engine=heap;
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=MEMORY DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = MEMORY, PARTITION p1 ENGINE = MEMORY)
|
|
||||||
alter table t1 engine=ndb;
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = ndbcluster, PARTITION p1 ENGINE = ndbcluster)
|
|
||||||
alter table t1 engine=heap remove partitioning;
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=MEMORY DEFAULT CHARSET=latin1
|
|
||||||
alter table t1 engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0, partition p1 engine = ndb);
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = ndbcluster, PARTITION p1 ENGINE = ndbcluster)
|
|
||||||
alter table t1
|
|
||||||
partition by key (a)
|
|
||||||
(partition p0 engine=ndb, partition p1 engine=ndb);
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = ndbcluster, PARTITION p1 ENGINE = ndbcluster)
|
|
||||||
alter table t1 remove partitioning;
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY ()
|
|
||||||
alter table t1
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0 engine=ndb, partition p1);
|
|
||||||
ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
|
|
||||||
alter table t1
|
|
||||||
engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0 engine=ndb, partition p1 engine = ndb);
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY (a) (PARTITION p0 ENGINE = ndbcluster, PARTITION p1 ENGINE = ndbcluster)
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
c4 BIT NOT NULL,
|
|
||||||
c5 FLOAT,
|
|
||||||
c6 VARCHAR(255),
|
|
||||||
c7 TIMESTAMP,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3) PARTITIONS 5;
|
|
||||||
ALTER TABLE t1 COALESCE PARTITION 4;
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (a int primary key)
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(a);
|
|
||||||
ALTER TABLE t1 OPTIMIZE PARTITION p0;
|
|
||||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
|
||||||
ALTER TABLE t1 CHECK PARTITION p0;
|
|
||||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
|
||||||
ALTER TABLE t1 REPAIR PARTITION p0;
|
|
||||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
|
||||||
ALTER TABLE t1 ANALYZE PARTITION p0;
|
|
||||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
|
||||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
|
||||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3) PARTITIONS 5;
|
|
||||||
ALTER TABLE t1 ADD COLUMN c4 INT AFTER c1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3);
|
|
||||||
ALTER TABLE t1 ADD COLUMN c4 INT AFTER c1;
|
|
||||||
DROP TABLE t1;
|
|
@ -1,51 +0,0 @@
|
|||||||
drop table if exists t1;
|
|
||||||
CREATE TABLE t1 ( f_int1 INTEGER NOT NULL, f_int2 INTEGER NOT NULL,
|
|
||||||
f_char1 CHAR(10),
|
|
||||||
f_char2 CHAR(10), f_charbig VARCHAR(1000),
|
|
||||||
PRIMARY KEY (f_int1,f_int2))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY LIST(MOD(f_int1 + f_int2,4))
|
|
||||||
(PARTITION part_3 VALUES IN (-3),
|
|
||||||
PARTITION part_2 VALUES IN (-2),
|
|
||||||
PARTITION part_1 VALUES IN (-1),
|
|
||||||
PARTITION part0 VALUES IN (0),
|
|
||||||
PARTITION part1 VALUES IN (1),
|
|
||||||
PARTITION part2 VALUES IN (2),
|
|
||||||
PARTITION part3 VALUES IN (3,4,5));
|
|
||||||
INSERT INTO t1 SET f_int1 = -2, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 1, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 2, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 3, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 4, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 5, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 20, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
SELECT * FROM t1 ORDER BY f_int1;
|
|
||||||
f_int1 f_int2 f_char1 f_char2 f_charbig
|
|
||||||
-2 20 20 20 ===20===
|
|
||||||
1 1 1 1 ===1===
|
|
||||||
2 1 1 1 ===1===
|
|
||||||
3 1 1 1 ===1===
|
|
||||||
4 1 1 1 ===1===
|
|
||||||
5 1 1 1 ===1===
|
|
||||||
20 1 1 1 ===1===
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 ( f_int1 INTEGER, f_int2 INTEGER, f_char1 CHAR(10),
|
|
||||||
f_char2 CHAR(10), f_charbig VARCHAR(1000))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY LIST(f_int1)
|
|
||||||
(PARTITION part_1 VALUES IN (-1),
|
|
||||||
PARTITION part0 VALUES IN (0,1),
|
|
||||||
PARTITION part1 VALUES IN (2));
|
|
||||||
INSERT INTO t1 SET f_int1 = -1, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 0, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 1, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 2, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 20, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
ERROR HY000: Table has no partition for value 20
|
|
||||||
SELECT * FROM t1 ORDER BY f_int1;
|
|
||||||
f_int1 f_int2 f_char1 f_char2 f_charbig
|
|
||||||
-1 20 20 20 ===20===
|
|
||||||
0 20 20 20 ===20===
|
|
||||||
1 1 1 1 ===1===
|
|
||||||
2 1 1 1 ===1===
|
|
||||||
DROP TABLE t1;
|
|
@ -1,263 +0,0 @@
|
|||||||
drop table if exists t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a,b),
|
|
||||||
index (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
INSERT into t1 values (1, 1, 1);
|
|
||||||
INSERT into t1 values (6, 1, 1);
|
|
||||||
INSERT into t1 values (10, 1, 1);
|
|
||||||
INSERT into t1 values (15, 1, 1);
|
|
||||||
select * from information_schema.partitions where table_name= 't1';
|
|
||||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
|
||||||
NULL test t1 x1 NULL 1 NULL RANGE NULL a NULL 5 0 0 0 # 0 0 # # NULL NULL default 0 default
|
|
||||||
NULL test t1 x2 NULL 2 NULL RANGE NULL a NULL 10 0 0 0 # 0 0 # # NULL NULL default 0 default
|
|
||||||
NULL test t1 x3 NULL 3 NULL RANGE NULL a NULL 20 0 0 0 # 0 0 # # NULL NULL default 0 default
|
|
||||||
select * from t1 order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
6 1 1
|
|
||||||
10 1 1
|
|
||||||
15 1 1
|
|
||||||
select * from t1 where a=1 order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
select * from t1 where a=15 and b=1 order by a;
|
|
||||||
a b c
|
|
||||||
15 1 1
|
|
||||||
select * from t1 where a=21 and b=1 order by a;
|
|
||||||
a b c
|
|
||||||
select * from t1 where a=21 order by a;
|
|
||||||
a b c
|
|
||||||
select * from t1 where a in (1,6,10,21) order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
6 1 1
|
|
||||||
10 1 1
|
|
||||||
select * from t1 where b=1 and a in (1,6,10,21) order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
6 1 1
|
|
||||||
10 1 1
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(b),
|
|
||||||
unique (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (b)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
INSERT into t1 values (1, 1, 1);
|
|
||||||
INSERT into t1 values (2, 6, 1);
|
|
||||||
INSERT into t1 values (3, 10, 1);
|
|
||||||
INSERT into t1 values (4, 15, 1);
|
|
||||||
select * from t1 order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
2 6 1
|
|
||||||
3 10 1
|
|
||||||
4 15 1
|
|
||||||
UPDATE t1 set a = 5 WHERE b = 15;
|
|
||||||
select * from t1 order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
2 6 1
|
|
||||||
3 10 1
|
|
||||||
5 15 1
|
|
||||||
UPDATE t1 set a = 6 WHERE a = 5;
|
|
||||||
select * from t1 order by a;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
2 6 1
|
|
||||||
3 10 1
|
|
||||||
6 15 1
|
|
||||||
select * from t1 where b=1 order by b;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
select * from t1 where b=15 and a=1 order by b;
|
|
||||||
a b c
|
|
||||||
select * from t1 where b=21 and a=1 order by b;
|
|
||||||
a b c
|
|
||||||
select * from t1 where b=21 order by b;
|
|
||||||
a b c
|
|
||||||
select * from t1 where b in (1,6,10,21) order by b;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
2 6 1
|
|
||||||
3 10 1
|
|
||||||
select * from t1 where a in (1,2,5,6) order by b;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
2 6 1
|
|
||||||
6 15 1
|
|
||||||
select * from t1 where a=1 and b in (1,6,10,21) order by b;
|
|
||||||
a b c
|
|
||||||
1 1 1
|
|
||||||
DELETE from t1 WHERE b = 6;
|
|
||||||
DELETE from t1 WHERE a = 6;
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) NOT NULL,
|
|
||||||
`b` int(11) NOT NULL,
|
|
||||||
`c` int(11) NOT NULL,
|
|
||||||
PRIMARY KEY (`b`),
|
|
||||||
UNIQUE KEY `a` (`a`)
|
|
||||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY RANGE (b) (PARTITION x1 VALUES LESS THAN (5) ENGINE = ndbcluster, PARTITION x2 VALUES LESS THAN (10) ENGINE = ndbcluster, PARTITION x3 VALUES LESS THAN (20) ENGINE = ndbcluster)
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1
|
|
||||||
(id MEDIUMINT NOT NULL,
|
|
||||||
b1 BIT(8),
|
|
||||||
vc VARCHAR(255),
|
|
||||||
bc CHAR(255),
|
|
||||||
d DECIMAL(10,4) DEFAULT 0,
|
|
||||||
f FLOAT DEFAULT 0,
|
|
||||||
total BIGINT UNSIGNED,
|
|
||||||
y YEAR,
|
|
||||||
t DATE) ENGINE=NDB
|
|
||||||
PARTITION BY RANGE (YEAR(t))
|
|
||||||
(PARTITION p0 VALUES LESS THAN (1901),
|
|
||||||
PARTITION p1 VALUES LESS THAN (1946),
|
|
||||||
PARTITION p2 VALUES LESS THAN (1966),
|
|
||||||
PARTITION p3 VALUES LESS THAN (1986),
|
|
||||||
PARTITION p4 VALUES LESS THAN (2005),
|
|
||||||
PARTITION p5 VALUES LESS THAN MAXVALUE);
|
|
||||||
INSERT INTO t1 VALUES (0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
|
|
||||||
SELECT * FROM t1;
|
|
||||||
id b1 vc bc d f total y t
|
|
||||||
0 NULL NULL NULL NULL NULL NULL NULL NULL
|
|
||||||
ALTER TABLE t1 ENGINE=MYISAM;
|
|
||||||
SELECT * FROM t1;
|
|
||||||
id b1 vc bc d f total y t
|
|
||||||
0 NULL NULL NULL NULL NULL NULL NULL NULL
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE LOGFILE GROUP lg1
|
|
||||||
ADD UNDOFILE 'undofile.dat'
|
|
||||||
INITIAL_SIZE 16M
|
|
||||||
UNDO_BUFFER_SIZE=1M
|
|
||||||
ENGINE=NDB;
|
|
||||||
CREATE TABLESPACE ts1
|
|
||||||
ADD DATAFILE 'datafile.dat'
|
|
||||||
USE LOGFILE GROUP lg1
|
|
||||||
INITIAL_SIZE 12M
|
|
||||||
ENGINE NDB;
|
|
||||||
CREATE TABLE test.t1 (
|
|
||||||
a1 INT,
|
|
||||||
a2 TEXT NOT NULL,
|
|
||||||
a3 BIT NOT NULL,
|
|
||||||
a4 DECIMAL(8,3),
|
|
||||||
a5 INT NOT NULL,
|
|
||||||
a6 INT,
|
|
||||||
PRIMARY KEY(a1))
|
|
||||||
TABLESPACE ts1 STORAGE DISK ENGINE=NDB
|
|
||||||
PARTITION BY LIST (a1)
|
|
||||||
(PARTITION p0 VALUES IN (1,2,3,4,5),
|
|
||||||
PARTITION p1 VALUES IN (6,7,8,9, 10),
|
|
||||||
PARTITION p2 VALUES IN (11, 12, 13, 14, 15));
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a6;
|
|
||||||
ALTER TABLE test.t1 ADD COLUMN a6 VARCHAR(255);
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
COUNT(*)
|
|
||||||
15
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a4;
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
COUNT(*)
|
|
||||||
15
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE test.t1 (
|
|
||||||
a1 INT,
|
|
||||||
a2 TEXT NOT NULL,
|
|
||||||
a3 BIT NOT NULL,
|
|
||||||
a4 DECIMAL(8,3),
|
|
||||||
a5 INT NOT NULL,
|
|
||||||
a6 VARCHAR(255),
|
|
||||||
PRIMARY KEY(a1))
|
|
||||||
TABLESPACE ts1 STORAGE DISK ENGINE=NDB
|
|
||||||
PARTITION BY HASH(a1)
|
|
||||||
PARTITIONS 4;
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
COUNT(*)
|
|
||||||
15
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a4;
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
COUNT(*)
|
|
||||||
15
|
|
||||||
DROP TABLE t1;
|
|
||||||
ALTER TABLESPACE ts1
|
|
||||||
DROP DATAFILE 'datafile.dat'
|
|
||||||
ENGINE=NDB;
|
|
||||||
DROP TABLESPACE ts1 ENGINE=NDB;
|
|
||||||
DROP LOGFILE GROUP lg1 ENGINE=NDB;
|
|
||||||
CREATE TABLE t1
|
|
||||||
(id MEDIUMINT NOT NULL,
|
|
||||||
b1 BIT(8),
|
|
||||||
vc VARCHAR(255),
|
|
||||||
bc CHAR(255),
|
|
||||||
d DECIMAL(10,4) DEFAULT 0,
|
|
||||||
f FLOAT DEFAULT 0,
|
|
||||||
total BIGINT UNSIGNED,
|
|
||||||
y YEAR,
|
|
||||||
t DATE) ENGINE=NDB
|
|
||||||
PARTITION BY LIST(id)
|
|
||||||
(PARTITION p0 VALUES IN (2, 4),
|
|
||||||
PARTITION p1 VALUES IN (42, 142));
|
|
||||||
INSERT INTO t1 VALUES (2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
|
|
||||||
SELECT * FROM t1;
|
|
||||||
id b1 vc bc d f total y t
|
|
||||||
2 NULL NULL NULL NULL NULL NULL NULL NULL
|
|
||||||
ALTER TABLE t1 ADD PARTITION
|
|
||||||
(PARTITION p2 VALUES IN (412));
|
|
||||||
SELECT * FROM t1;
|
|
||||||
id b1 vc bc d f total y t
|
|
||||||
2 NULL NULL NULL NULL NULL NULL NULL NULL
|
|
||||||
DROP TABLE t1;
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null)
|
|
||||||
partition by list(a)
|
|
||||||
partitions 2
|
|
||||||
(partition x123 values in (1,5,6),
|
|
||||||
partition x234 values in (4,7,8));
|
|
||||||
INSERT into t1 VALUES (5,1,1);
|
|
||||||
select * from t1;
|
|
||||||
a b c
|
|
||||||
5 1 1
|
|
||||||
UPDATE t1 SET a=8 WHERE a=5 AND b=1;
|
|
||||||
select * from t1;
|
|
||||||
a b c
|
|
||||||
8 1 1
|
|
||||||
drop table t1;
|
|
||||||
CREATE TABLE t1 ( f1 INTEGER, f2 char(20)) engine=ndb
|
|
||||||
PARTITION BY RANGE(f1)
|
|
||||||
( PARTITION part1 VALUES LESS THAN (2),
|
|
||||||
PARTITION part2 VALUES LESS THAN (1000));
|
|
||||||
INSERT INTO t1 VALUES(1, '---1---');
|
|
||||||
INSERT INTO t1 VALUES(2, '---2---');
|
|
||||||
select * from t1 order by f1;
|
|
||||||
f1 f2
|
|
||||||
1 ---1---
|
|
||||||
2 ---2---
|
|
||||||
UPDATE t1 SET f1 = f1 + 4 WHERE f1 = 2;
|
|
||||||
select * from t1 order by f1;
|
|
||||||
f1 f2
|
|
||||||
1 ---1---
|
|
||||||
6 ---2---
|
|
||||||
UPDATE t1 SET f1 = f1 + 4 WHERE f1 = 1;
|
|
||||||
select * from t1 order by f1;
|
|
||||||
f1 f2
|
|
||||||
5 ---1---
|
|
||||||
6 ---2---
|
|
||||||
drop table t1;
|
|
@ -1,93 +0,0 @@
|
|||||||
--source include/have_ndb.inc
|
|
||||||
-- source include/not_embedded.inc
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
drop table if exists t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
#
|
|
||||||
# Minimal NDB blobs test with range partitions.
|
|
||||||
#
|
|
||||||
|
|
||||||
create table t1 (
|
|
||||||
a mediumint not null,
|
|
||||||
b text not null,
|
|
||||||
c int not null,
|
|
||||||
d longblob,
|
|
||||||
primary key using hash (a,c),
|
|
||||||
unique key (c)
|
|
||||||
)
|
|
||||||
engine=ndb
|
|
||||||
partition by range (c)
|
|
||||||
partitions 3
|
|
||||||
( partition p1 values less than (200),
|
|
||||||
partition p2 values less than (300),
|
|
||||||
partition p3 values less than (400));
|
|
||||||
|
|
||||||
--disable_query_log
|
|
||||||
sleep 1;
|
|
||||||
|
|
||||||
# length 61
|
|
||||||
set @s0 = 'rggurloniukyehuxdbfkkyzlceixzrehqhvxvxbpwizzvjzpucqmzrhzxzfau';
|
|
||||||
set @s1 = 'ykyymbzqgqlcjhlhmyqelfoaaohvtbekvifukdtnvcrrjveevfakxarxexomz';
|
|
||||||
set @s2 = 'dbnfqyzgtqxalcrwtfsqabknvtfcbpoonxsjiqvmhnfikxxhcgoexlkoezvah';
|
|
||||||
|
|
||||||
set @v1 = repeat(@s0, 100); -- 1d42dd9090cf78314a06665d4ea938c35cc760f4
|
|
||||||
set @v2 = repeat(@s1, 200); -- 10d3c783026b310218d10b7188da96a2401648c6
|
|
||||||
set @v3 = repeat(@s2, 300); -- a33549d9844092289a58ac348dd59f09fc28406a
|
|
||||||
set @v4 = repeat(@s0, 400); -- daa61c6de36a0526f0d47dc29d6b9de7e6d2630c
|
|
||||||
set @v5 = repeat(@s1, 500); -- 70fc9a7d08beebc522258bfb02000a30c77a8f1d
|
|
||||||
set @v6 = repeat(@s2, 600); -- 090565c580809efed3d369481a4bbb168b20713e
|
|
||||||
set @v7 = repeat(@s0, 700); -- 1e0070bec426871a46291de27b9bd6e4255ab4e5
|
|
||||||
set @v8 = repeat(@s1, 800); -- acbaba01bc2e682f015f40e79d9cbe475db3002e
|
|
||||||
set @v9 = repeat(@s2, 900); -- 9ee30d99162574f79c66ae95cdf132dcf9cbc259
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
# -- insert --
|
|
||||||
insert into t1 values (1, @v1, 101, @v2);
|
|
||||||
insert into t1 values (1, @v2, 102, @v3);
|
|
||||||
insert into t1 values (1, @v3, 103, @v4);
|
|
||||||
insert into t1 values (2, @v4, 201, @v5);
|
|
||||||
insert into t1 values (2, @v5, 202, @v6);
|
|
||||||
insert into t1 values (2, @v6, 203, @v7);
|
|
||||||
insert into t1 values (3, @v7, 301, @v8);
|
|
||||||
insert into t1 values (3, @v8, 302, @v9);
|
|
||||||
insert into t1 values (3, @v9, 303, @v1);
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- pk read --
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 1 and c = 101;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 2 and c = 201;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 where a = 3 and c = 301;
|
|
||||||
|
|
||||||
# -- pk update --
|
|
||||||
update t1 set b = @v3, d = @v4 where a = 1 and c = 102;
|
|
||||||
update t1 set b = @v6, d = @v7 where a = 2 and c = 202;
|
|
||||||
update t1 set b = @v9, d = @v1 where a = 3 and c = 302;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- hash index update --
|
|
||||||
update t1 set b = @v4, d = @v5 where c = 103;
|
|
||||||
update t1 set b = @v7, d = @v8 where c = 203;
|
|
||||||
update t1 set b = @v1, d = @v2 where c = 303;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- full scan update --
|
|
||||||
update t1 set b = @v5, d = @v6;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- range scan update
|
|
||||||
update t1 set b = @v1, d = @v2 where 100 < c and c < 200;
|
|
||||||
update t1 set b = @v4, d = @v5 where 200 < c and c < 300;
|
|
||||||
update t1 set b = @v7, d = @v8 where 300 < c and c < 400;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- delete --
|
|
||||||
delete from t1 where a = 1 and c = 101;
|
|
||||||
delete from t1 where c = 102;
|
|
||||||
# delete from t1 where c < 300; # XXX coredump
|
|
||||||
delete from t1;
|
|
||||||
select a, sha1(b), c, sha1(d) from t1 order by a;
|
|
||||||
|
|
||||||
# -- clean up --
|
|
||||||
drop table t1;
|
|
@ -1,71 +0,0 @@
|
|||||||
-- source include/have_ndb.inc
|
|
||||||
#--disable_abort_on_error
|
|
||||||
#
|
|
||||||
# Simple test for the partition storage engine
|
|
||||||
# Focuses on range partitioning tests
|
|
||||||
#
|
|
||||||
#-- source include/have_partition.inc
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
drop table if exists t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by range, generate node group error
|
|
||||||
#
|
|
||||||
--error 1005
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a,b),
|
|
||||||
index (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5) nodegroup 12,
|
|
||||||
partition x2 values less than (10) nodegroup 13,
|
|
||||||
partition x3 values less than (20) nodegroup 14);
|
|
||||||
show warnings;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by range, create normal valid table
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #17763 mysqld cores with list partitioning if update to missing partition
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (id INT) ENGINE=NDB
|
|
||||||
PARTITION BY LIST(id)
|
|
||||||
(PARTITION p0 VALUES IN (2, 4),
|
|
||||||
PARTITION p1 VALUES IN (42, 142));
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
--error ER_NO_PARTITION_FOR_GIVEN_VALUE
|
|
||||||
UPDATE t1 SET id=5 WHERE id=2;
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# NULL for LIST partition
|
|
||||||
#
|
|
||||||
create table t1 (a int,b int, c int)
|
|
||||||
engine = ndb
|
|
||||||
partition by list(a)
|
|
||||||
partitions 2
|
|
||||||
(partition x123 values in (11, 12),
|
|
||||||
partition x234 values in (5, 1));
|
|
||||||
--error ER_NO_PARTITION_FOR_GIVEN_VALUE
|
|
||||||
insert into t1 values (NULL,1,1);
|
|
||||||
drop table t1;
|
|
@ -1,198 +0,0 @@
|
|||||||
-- source include/have_ndb.inc
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
DROP TABLE IF EXISTS t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
#
|
|
||||||
# Basic syntax test
|
|
||||||
#
|
|
||||||
|
|
||||||
# Support for partition key verified
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, d int, PRIMARY KEY(a,b,c))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (a,b);
|
|
||||||
|
|
||||||
insert into t1 values (1,1,1,1);
|
|
||||||
select * from t1;
|
|
||||||
update t1 set d = 2 where a = 1 and b = 1 and c = 1;
|
|
||||||
select * from t1;
|
|
||||||
delete from t1;
|
|
||||||
select * from t1;
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
# only support for partition key on primary key
|
|
||||||
--error ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, d int, PRIMARY KEY(a,b))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (c);
|
|
||||||
|
|
||||||
CREATE TABLE t1 (a int, b int, c int, PRIMARY KEY(a,b))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY KEY (a);
|
|
||||||
|
|
||||||
insert into t1 values
|
|
||||||
(1,1,3),(1,2,3),(1,3,3),(1,4,3),(1,5,3),(1,6,3),
|
|
||||||
(1,7,3),(1,8,3),(1,9,3),(1,10,3),(1,11,3),(1,12,3);
|
|
||||||
|
|
||||||
select * from t1 order by b;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Test partition and char support
|
|
||||||
#
|
|
||||||
|
|
||||||
CREATE TABLE t1 (a INT, b CHAR(10) COLLATE latin1_bin, c INT, d INT,
|
|
||||||
PRIMARY KEY (a,b,c) USING HASH)
|
|
||||||
ENGINE=NDB
|
|
||||||
DEFAULT CHARSET=latin1
|
|
||||||
PARTITION BY KEY (b);
|
|
||||||
|
|
||||||
insert into t1 values (1,"a",1,1),(2,"a",1,1),(3,"a",1,1);
|
|
||||||
|
|
||||||
# should show only one attribute with DISTRIBUTION KEY
|
|
||||||
--exec $NDB_TOOLS_DIR/ndb_desc --no-defaults -d test t1 | sed 's/Version: [0-9]*//' | sed 's/\(Length of frm data: \)[0-9]*/\1#/'
|
|
||||||
|
|
||||||
#
|
|
||||||
# Test that explicit partition info is not shown in show create table
|
|
||||||
# result should not contain (PARTITION P0 ... etc) since this is what shows up in
|
|
||||||
# mysqldump, and we don't want that info there
|
|
||||||
#
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #13155: Problem in Create Table using SHOW CREATE TABLE syntax
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (a int not null primary key)
|
|
||||||
PARTITION BY KEY(a)
|
|
||||||
(PARTITION p0 ENGINE = NDB, PARTITION p1 ENGINE = NDB);
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
CREATE TABLE t1 (a int not null primary key);
|
|
||||||
ALTER TABLE t1
|
|
||||||
PARTITION BY KEY(a)
|
|
||||||
(PARTITION p0 ENGINE = NDB, PARTITION p1 ENGINE = NDB);
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #17754 Improper handling of removal of partitioning in ALTER TABLE
|
|
||||||
# Also added a number of general test cases in the same area
|
|
||||||
#
|
|
||||||
create table t1 (a int)
|
|
||||||
engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0, partition p1);
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1 engine=heap;
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1 engine=ndb;
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1 engine=heap remove partitioning;
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1 engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0, partition p1 engine = ndb);
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1
|
|
||||||
partition by key (a)
|
|
||||||
(partition p0 engine=ndb, partition p1 engine=ndb);
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
alter table t1 remove partitioning;
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
--error ER_MIX_HANDLER_ERROR
|
|
||||||
alter table t1
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0 engine=ndb, partition p1);
|
|
||||||
|
|
||||||
alter table t1
|
|
||||||
engine=ndb
|
|
||||||
partition by key(a)
|
|
||||||
(partition p0 engine=ndb, partition p1 engine = ndb);
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# BUG 16810 Out of memory when coalesce partition
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
c4 BIT NOT NULL,
|
|
||||||
c5 FLOAT,
|
|
||||||
c6 VARCHAR(255),
|
|
||||||
c7 TIMESTAMP,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3) PARTITIONS 5;
|
|
||||||
|
|
||||||
let $j= 11;
|
|
||||||
--disable_query_log
|
|
||||||
while ($j)
|
|
||||||
{
|
|
||||||
eval INSERT INTO t1 VALUES (NULL, "Tested Remotely from Texas, USA", $j,
|
|
||||||
b'0',
|
|
||||||
$j.00,"By JBM $j","2006-01-26");
|
|
||||||
dec $j;
|
|
||||||
}
|
|
||||||
--enable_query_log
|
|
||||||
ALTER TABLE t1 COALESCE PARTITION 4;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug 16822: OPTIMIZE TABLE hangs test
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (a int primary key)
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(a);
|
|
||||||
--error 1031
|
|
||||||
ALTER TABLE t1 OPTIMIZE PARTITION p0;
|
|
||||||
--error 1031
|
|
||||||
ALTER TABLE t1 CHECK PARTITION p0;
|
|
||||||
--error 1031
|
|
||||||
ALTER TABLE t1 REPAIR PARTITION p0;
|
|
||||||
--error 1031
|
|
||||||
ALTER TABLE t1 ANALYZE PARTITION p0;
|
|
||||||
--error 1031
|
|
||||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# BUG 16806: ALTER TABLE fails
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3) PARTITIONS 5;
|
|
||||||
|
|
||||||
ALTER TABLE t1 ADD COLUMN c4 INT AFTER c1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
c1 MEDIUMINT NOT NULL AUTO_INCREMENT,
|
|
||||||
c2 TEXT NOT NULL,
|
|
||||||
c3 INT NOT NULL,
|
|
||||||
PRIMARY KEY(c1,c3))
|
|
||||||
ENGINE=NDB
|
|
||||||
PARTITION BY KEY(c3);
|
|
||||||
|
|
||||||
ALTER TABLE t1 ADD COLUMN c4 INT AFTER c1;
|
|
||||||
DROP TABLE t1;
|
|
@ -1,64 +0,0 @@
|
|||||||
--source include/have_ndb.inc
|
|
||||||
#
|
|
||||||
# Simple test for the partition storage engine
|
|
||||||
# Focuses on range partitioning tests
|
|
||||||
#
|
|
||||||
#-- source include/have_partition.inc
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
drop table if exists t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by list, basic
|
|
||||||
#
|
|
||||||
|
|
||||||
CREATE TABLE t1 ( f_int1 INTEGER NOT NULL, f_int2 INTEGER NOT NULL,
|
|
||||||
f_char1 CHAR(10),
|
|
||||||
f_char2 CHAR(10), f_charbig VARCHAR(1000),
|
|
||||||
PRIMARY KEY (f_int1,f_int2))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY LIST(MOD(f_int1 + f_int2,4))
|
|
||||||
(PARTITION part_3 VALUES IN (-3),
|
|
||||||
PARTITION part_2 VALUES IN (-2),
|
|
||||||
PARTITION part_1 VALUES IN (-1),
|
|
||||||
PARTITION part0 VALUES IN (0),
|
|
||||||
PARTITION part1 VALUES IN (1),
|
|
||||||
PARTITION part2 VALUES IN (2),
|
|
||||||
PARTITION part3 VALUES IN (3,4,5));
|
|
||||||
|
|
||||||
INSERT INTO t1 SET f_int1 = -2, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 1, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 2, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 3, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 4, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 5, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 20, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
|
|
||||||
SELECT * FROM t1 ORDER BY f_int1;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by list, no pk
|
|
||||||
#
|
|
||||||
|
|
||||||
CREATE TABLE t1 ( f_int1 INTEGER, f_int2 INTEGER, f_char1 CHAR(10),
|
|
||||||
f_char2 CHAR(10), f_charbig VARCHAR(1000))
|
|
||||||
ENGINE = NDB
|
|
||||||
PARTITION BY LIST(f_int1)
|
|
||||||
(PARTITION part_1 VALUES IN (-1),
|
|
||||||
PARTITION part0 VALUES IN (0,1),
|
|
||||||
PARTITION part1 VALUES IN (2));
|
|
||||||
|
|
||||||
INSERT INTO t1 SET f_int1 = -1, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 0, f_int2 = 20, f_char1 = '20', f_char2 = '20', f_charbig = '===20===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 1, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
INSERT INTO t1 SET f_int1 = 2, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
--error ER_NO_PARTITION_FOR_GIVEN_VALUE
|
|
||||||
INSERT INTO t1 SET f_int1 = 20, f_int2 = 1, f_char1 = '1', f_char2 = '1', f_charbig = '===1===';
|
|
||||||
|
|
||||||
SELECT * FROM t1 ORDER BY f_int1;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
@ -1,260 +0,0 @@
|
|||||||
-- source include/have_ndb.inc
|
|
||||||
#--disable_abort_on_error
|
|
||||||
#
|
|
||||||
# Simple test for the partition storage engine
|
|
||||||
# Focuses on range partitioning tests
|
|
||||||
#
|
|
||||||
#-- source include/have_partition.inc
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
drop table if exists t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by range, basic
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(a,b),
|
|
||||||
index (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (a)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
|
|
||||||
# Simple insert and verify test
|
|
||||||
INSERT into t1 values (1, 1, 1);
|
|
||||||
INSERT into t1 values (6, 1, 1);
|
|
||||||
INSERT into t1 values (10, 1, 1);
|
|
||||||
INSERT into t1 values (15, 1, 1);
|
|
||||||
|
|
||||||
--replace_column 16 # 19 # 20 #
|
|
||||||
select * from information_schema.partitions where table_name= 't1';
|
|
||||||
|
|
||||||
select * from t1 order by a;
|
|
||||||
|
|
||||||
select * from t1 where a=1 order by a;
|
|
||||||
select * from t1 where a=15 and b=1 order by a;
|
|
||||||
select * from t1 where a=21 and b=1 order by a;
|
|
||||||
select * from t1 where a=21 order by a;
|
|
||||||
select * from t1 where a in (1,6,10,21) order by a;
|
|
||||||
select * from t1 where b=1 and a in (1,6,10,21) order by a;
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Partition by range, basic
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null,
|
|
||||||
primary key(b),
|
|
||||||
unique (a))
|
|
||||||
engine = ndb
|
|
||||||
partition by range (b)
|
|
||||||
partitions 3
|
|
||||||
(partition x1 values less than (5),
|
|
||||||
partition x2 values less than (10),
|
|
||||||
partition x3 values less than (20));
|
|
||||||
|
|
||||||
# Simple insert and verify test
|
|
||||||
INSERT into t1 values (1, 1, 1);
|
|
||||||
INSERT into t1 values (2, 6, 1);
|
|
||||||
INSERT into t1 values (3, 10, 1);
|
|
||||||
INSERT into t1 values (4, 15, 1);
|
|
||||||
|
|
||||||
select * from t1 order by a;
|
|
||||||
UPDATE t1 set a = 5 WHERE b = 15;
|
|
||||||
select * from t1 order by a;
|
|
||||||
UPDATE t1 set a = 6 WHERE a = 5;
|
|
||||||
select * from t1 order by a;
|
|
||||||
|
|
||||||
select * from t1 where b=1 order by b;
|
|
||||||
select * from t1 where b=15 and a=1 order by b;
|
|
||||||
select * from t1 where b=21 and a=1 order by b;
|
|
||||||
select * from t1 where b=21 order by b;
|
|
||||||
select * from t1 where b in (1,6,10,21) order by b;
|
|
||||||
select * from t1 where a in (1,2,5,6) order by b;
|
|
||||||
select * from t1 where a=1 and b in (1,6,10,21) order by b;
|
|
||||||
|
|
||||||
DELETE from t1 WHERE b = 6;
|
|
||||||
DELETE from t1 WHERE a = 6;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Test that explicit partition info _is_ shown in show create table
|
|
||||||
# result _should_ contain (PARTITION x1 ... etc)
|
|
||||||
#
|
|
||||||
show create table t1;
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #17499, #17687
|
|
||||||
# Alter partitioned NDB table causes mysqld to core
|
|
||||||
#
|
|
||||||
|
|
||||||
CREATE TABLE t1
|
|
||||||
(id MEDIUMINT NOT NULL,
|
|
||||||
b1 BIT(8),
|
|
||||||
vc VARCHAR(255),
|
|
||||||
bc CHAR(255),
|
|
||||||
d DECIMAL(10,4) DEFAULT 0,
|
|
||||||
f FLOAT DEFAULT 0,
|
|
||||||
total BIGINT UNSIGNED,
|
|
||||||
y YEAR,
|
|
||||||
t DATE) ENGINE=NDB
|
|
||||||
PARTITION BY RANGE (YEAR(t))
|
|
||||||
(PARTITION p0 VALUES LESS THAN (1901),
|
|
||||||
PARTITION p1 VALUES LESS THAN (1946),
|
|
||||||
PARTITION p2 VALUES LESS THAN (1966),
|
|
||||||
PARTITION p3 VALUES LESS THAN (1986),
|
|
||||||
PARTITION p4 VALUES LESS THAN (2005),
|
|
||||||
PARTITION p5 VALUES LESS THAN MAXVALUE);
|
|
||||||
|
|
||||||
INSERT INTO t1 VALUES (0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
|
|
||||||
SELECT * FROM t1;
|
|
||||||
ALTER TABLE t1 ENGINE=MYISAM;
|
|
||||||
SELECT * FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
CREATE LOGFILE GROUP lg1
|
|
||||||
ADD UNDOFILE 'undofile.dat'
|
|
||||||
INITIAL_SIZE 16M
|
|
||||||
UNDO_BUFFER_SIZE=1M
|
|
||||||
ENGINE=NDB;
|
|
||||||
|
|
||||||
CREATE TABLESPACE ts1
|
|
||||||
ADD DATAFILE 'datafile.dat'
|
|
||||||
USE LOGFILE GROUP lg1
|
|
||||||
INITIAL_SIZE 12M
|
|
||||||
ENGINE NDB;
|
|
||||||
|
|
||||||
CREATE TABLE test.t1 (
|
|
||||||
a1 INT,
|
|
||||||
a2 TEXT NOT NULL,
|
|
||||||
a3 BIT NOT NULL,
|
|
||||||
a4 DECIMAL(8,3),
|
|
||||||
a5 INT NOT NULL,
|
|
||||||
a6 INT,
|
|
||||||
PRIMARY KEY(a1))
|
|
||||||
TABLESPACE ts1 STORAGE DISK ENGINE=NDB
|
|
||||||
PARTITION BY LIST (a1)
|
|
||||||
(PARTITION p0 VALUES IN (1,2,3,4,5),
|
|
||||||
PARTITION p1 VALUES IN (6,7,8,9, 10),
|
|
||||||
PARTITION p2 VALUES IN (11, 12, 13, 14, 15));
|
|
||||||
|
|
||||||
# Alter table directly without any statements inbetween
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a6;
|
|
||||||
ALTER TABLE test.t1 ADD COLUMN a6 VARCHAR(255);
|
|
||||||
|
|
||||||
let $j= 15;
|
|
||||||
--disable_query_log
|
|
||||||
while ($j)
|
|
||||||
{
|
|
||||||
eval INSERT INTO test.t1 VALUES ($j, "Tested Remotely from Texas, USA",
|
|
||||||
b'1',$j.00,$j+1,"By NIK $j");
|
|
||||||
dec $j;
|
|
||||||
}
|
|
||||||
--enable_query_log
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a4;
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
CREATE TABLE test.t1 (
|
|
||||||
a1 INT,
|
|
||||||
a2 TEXT NOT NULL,
|
|
||||||
a3 BIT NOT NULL,
|
|
||||||
a4 DECIMAL(8,3),
|
|
||||||
a5 INT NOT NULL,
|
|
||||||
a6 VARCHAR(255),
|
|
||||||
PRIMARY KEY(a1))
|
|
||||||
TABLESPACE ts1 STORAGE DISK ENGINE=NDB
|
|
||||||
PARTITION BY HASH(a1)
|
|
||||||
PARTITIONS 4;
|
|
||||||
|
|
||||||
let $j= 15;
|
|
||||||
--disable_query_log
|
|
||||||
while ($j)
|
|
||||||
{
|
|
||||||
eval INSERT INTO test.t1 VALUES ($j, "Tested Remotely from Texas, USA",
|
|
||||||
b'1',$j.00,$j+1,"By NIK $j");
|
|
||||||
dec $j;
|
|
||||||
}
|
|
||||||
--enable_query_log
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
|
|
||||||
ALTER TABLE test.t1 DROP COLUMN a4;
|
|
||||||
SELECT COUNT(*) FROM test.t1;
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
ALTER TABLESPACE ts1
|
|
||||||
DROP DATAFILE 'datafile.dat'
|
|
||||||
ENGINE=NDB;
|
|
||||||
DROP TABLESPACE ts1 ENGINE=NDB;
|
|
||||||
DROP LOGFILE GROUP lg1 ENGINE=NDB;
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #17701 ALTER TABLE t1 ADD PARTITION for PARTITION BY LIST hangs test
|
|
||||||
#
|
|
||||||
|
|
||||||
CREATE TABLE t1
|
|
||||||
(id MEDIUMINT NOT NULL,
|
|
||||||
b1 BIT(8),
|
|
||||||
vc VARCHAR(255),
|
|
||||||
bc CHAR(255),
|
|
||||||
d DECIMAL(10,4) DEFAULT 0,
|
|
||||||
f FLOAT DEFAULT 0,
|
|
||||||
total BIGINT UNSIGNED,
|
|
||||||
y YEAR,
|
|
||||||
t DATE) ENGINE=NDB
|
|
||||||
PARTITION BY LIST(id)
|
|
||||||
(PARTITION p0 VALUES IN (2, 4),
|
|
||||||
PARTITION p1 VALUES IN (42, 142));
|
|
||||||
|
|
||||||
INSERT INTO t1 VALUES (2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
|
|
||||||
SELECT * FROM t1;
|
|
||||||
ALTER TABLE t1 ADD PARTITION
|
|
||||||
(PARTITION p2 VALUES IN (412));
|
|
||||||
SELECT * FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
#
|
|
||||||
# Bug #17806 Update on NDB table with list partition causes mysqld to core
|
|
||||||
# Bug #16385 Partitions: crash when updating a range partitioned NDB table
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (
|
|
||||||
a int not null,
|
|
||||||
b int not null,
|
|
||||||
c int not null)
|
|
||||||
partition by list(a)
|
|
||||||
partitions 2
|
|
||||||
(partition x123 values in (1,5,6),
|
|
||||||
partition x234 values in (4,7,8));
|
|
||||||
INSERT into t1 VALUES (5,1,1);
|
|
||||||
select * from t1;
|
|
||||||
UPDATE t1 SET a=8 WHERE a=5 AND b=1;
|
|
||||||
select * from t1;
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
CREATE TABLE t1 ( f1 INTEGER, f2 char(20)) engine=ndb
|
|
||||||
PARTITION BY RANGE(f1)
|
|
||||||
( PARTITION part1 VALUES LESS THAN (2),
|
|
||||||
PARTITION part2 VALUES LESS THAN (1000));
|
|
||||||
INSERT INTO t1 VALUES(1, '---1---');
|
|
||||||
INSERT INTO t1 VALUES(2, '---2---');
|
|
||||||
select * from t1 order by f1;
|
|
||||||
UPDATE t1 SET f1 = f1 + 4 WHERE f1 = 2;
|
|
||||||
select * from t1 order by f1;
|
|
||||||
UPDATE t1 SET f1 = f1 + 4 WHERE f1 = 1;
|
|
||||||
select * from t1 order by f1;
|
|
||||||
drop table t1;
|
|
Reference in New Issue
Block a user