cleanup parts.partition_exch_* tests
This commit is contained in:
parent
f7294f5b36
commit
be3490f01f
@ -1,4 +1,3 @@
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
@ -11,5 +10,3 @@ DROP TABLE IF EXISTS tsp_03;
|
||||
DROP TABLE IF EXISTS tsp_04;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
--enable_warnings
|
||||
|
||||
|
@ -1,51 +1,27 @@
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
DROP TABLE IF EXISTS tp;
|
||||
DROP TABLE IF EXISTS tsp;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
--enable_warnings
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE t_10 (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_table;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE t_100 (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_table;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE t_1000 (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_table;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE t_empty (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_table;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE t_null (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_table;
|
||||
|
||||
eval CREATE TABLE tp (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_part
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_part
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) $p_data_directory $p_index_directory,
|
||||
PARTITION p1 VALUES LESS THAN (100) $p_data_directory $p_index_directory,
|
||||
PARTITION p2 VALUES LESS THAN (1000) $p_data_directory $p_index_directory);
|
||||
|
||||
eval CREATE TABLE tsp (a INT,
|
||||
b VARCHAR(55),
|
||||
PRIMARY KEY (a)) $data_directory $index_directory
|
||||
ENGINE = $engine_subpart
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) $data_directory $index_directory ENGINE = $engine_subpart
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) $p_data_directory $p_index_directory
|
||||
@ -53,8 +29,7 @@ SUBPARTITION BY HASH(a)
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04),
|
||||
PARTITION p1 VALUES LESS THAN (100)
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 $p_data_directory $p_index_directory,
|
||||
SUBPARTITION sp11 $p_data_directory $p_index_directory,
|
||||
SUBPARTITION sp12 $p_data_directory $p_index_directory,
|
||||
@ -99,41 +74,13 @@ INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four")
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
|
||||
eval CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a))
|
||||
ENGINE = $engine_table $data_directory $index_directory
|
||||
AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
eval CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a))
|
||||
ENGINE = $engine_table $data_directory $index_directory
|
||||
AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
eval CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a))
|
||||
ENGINE = $engine_table $data_directory $index_directory
|
||||
AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
eval CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a))
|
||||
ENGINE = $engine_table $data_directory $index_directory
|
||||
AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
eval CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a))
|
||||
ENGINE = $engine_table $data_directory $index_directory
|
||||
AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
|
||||
SHOW CREATE TABLE t_10;
|
||||
SHOW CREATE TABLE t_100;
|
||||
SHOW CREATE TABLE t_1000;
|
||||
SHOW CREATE TABLE tp;
|
||||
SHOW CREATE TABLE tsp;
|
||||
|
||||
--sorted_result
|
||||
SELECT * FROM t_10;
|
||||
--sorted_result
|
||||
SELECT * FROM t_100;
|
||||
--sorted_result
|
||||
SELECT * FROM t_1000;
|
||||
--sorted_result
|
||||
SELECT * FROM tp;
|
||||
--sorted_result
|
||||
SELECT * FROM tp WHERE a< 10;
|
||||
--sorted_result
|
||||
SELECT * FROM tp WHERE a BETWEEN 11 AND 100;
|
||||
--sorted_result
|
||||
SELECT * FROM tp WHERE a BETWEEN 101 AND 200;
|
||||
--sorted_result
|
||||
SELECT * FROM tsp;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = $engine_table $data_directory $index_directory AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = $engine_table $data_directory $index_directory AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = $engine_table $data_directory $index_directory AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = $engine_table $data_directory $index_directory AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR;
|
||||
eval CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = $engine_table $data_directory $index_directory AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
|
@ -1,3 +1,58 @@
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MariaDB
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
|
@ -1,4 +1,59 @@
|
||||
use test;
|
||||
# === Data/Index directories are identical
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p1 VALUES LESS THAN (100) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir');
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp11 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp12 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp13 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp14 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'),
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
@ -13,7 +68,132 @@ DROP TABLE IF EXISTS tsp_03;
|
||||
DROP TABLE IF EXISTS tsp_04;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
use test;
|
||||
# === partition has directories, the table does not
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p1 VALUES LESS THAN (100) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir');
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp11 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp12 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp13 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp14 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'),
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: Non matching attribute 'DATA DIRECTORY' between partition and table
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
DROP TABLE IF EXISTS tp;
|
||||
DROP TABLE IF EXISTS tsp;
|
||||
DROP TABLE IF EXISTS tsp_00;
|
||||
DROP TABLE IF EXISTS tsp_01;
|
||||
DROP TABLE IF EXISTS tsp_02;
|
||||
DROP TABLE IF EXISTS tsp_03;
|
||||
DROP TABLE IF EXISTS tsp_04;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
# === the table has directories, partition does not
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
@ -28,7 +208,132 @@ DROP TABLE IF EXISTS tsp_03;
|
||||
DROP TABLE IF EXISTS tsp_04;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
use test;
|
||||
# === data directory differs
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p1 VALUES LESS THAN (100) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir');
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp11 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp12 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp13 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir',
|
||||
SUBPARTITION sp14 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'),
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir'
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
DROP TABLE IF EXISTS tp;
|
||||
DROP TABLE IF EXISTS tsp;
|
||||
DROP TABLE IF EXISTS tsp_00;
|
||||
DROP TABLE IF EXISTS tsp_01;
|
||||
DROP TABLE IF EXISTS tsp_02;
|
||||
DROP TABLE IF EXISTS tsp_03;
|
||||
DROP TABLE IF EXISTS tsp_04;
|
||||
DROP TABLE IF EXISTS t_empty;
|
||||
DROP TABLE IF EXISTS t_null;
|
||||
# === index directory differs
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
PARTITION p1 VALUES LESS THAN (100) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir');
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir'
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
SUBPARTITION sp11 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
SUBPARTITION sp12 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
SUBPARTITION sp13 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir',
|
||||
SUBPARTITION sp14 DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir'),
|
||||
PARTITION p2 VALUES LESS THAN (1000) DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir'
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-data-dir' DATA DIRECTORY = 'MYSQLTEST_VARDIR/mysql-test-idx-dir' AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
|
@ -1,10 +1,65 @@
|
||||
use test;
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = InnoDB AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = InnoDB AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = InnoDB AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = InnoDB AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = InnoDB AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
CREATE TABLE t_11 (a INT, b VARCHAR(55),
|
||||
FOREIGN KEY (a) REFERENCES t_10 (a) ON DELETE CASCADE)
|
||||
ENGINE= InnoDB;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
ERROR HY000: Table to exchange with partition has foreign key references: 't_11'
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
|
@ -1,4 +1,59 @@
|
||||
use test;
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
SELECT * FROM t_10;
|
||||
a b
|
||||
1 One
|
||||
@ -102,20 +157,20 @@ a b
|
||||
CREATE TABLE t_11(a INT,b VARCHAR(55)) SELECT * FROM t_10;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
CREATE TABLE t_11(a INT,b CHAR(55),PRIMARY KEY(a)) ENGINE= MYISAM SELECT * FROM t_10;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
CREATE TABLE t_11(a INT,b VARCHAR(55),PRIMARY KEY(a)) ENGINE= MEMORY SELECT * FROM t_10;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MariaDB
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
CREATE TABLE t_11(a INT,b CHAR(55),PRIMARY KEY(a)) ENGINE= MYISAM
|
||||
PARTITION BY KEY() AS SELECT * FROM t_10;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
ERROR HY000: Table to exchange with partition is partitioned: 't_11'
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE tsp;
|
||||
ERROR HY000: Table to exchange with partition is partitioned: 'tsp'
|
||||
ALTER TABLE tsp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
|
@ -1,4 +1,159 @@
|
||||
use test;
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = InnoDB
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
SELECT * FROM t_10;
|
||||
a b
|
||||
1 One
|
||||
3 Three
|
||||
5 Five
|
||||
9 Nine
|
||||
SELECT * FROM t_100;
|
||||
a b
|
||||
11 Eleven
|
||||
13 Thirdteen
|
||||
15 Fifeteen
|
||||
19 Nineteen
|
||||
91 Ninety-one
|
||||
93 Ninety-three
|
||||
95 Ninety-five
|
||||
99 Ninety-nine
|
||||
SELECT * FROM t_1000;
|
||||
a b
|
||||
111 Hundred elven
|
||||
113 Hundred thirdteen
|
||||
115 Hundred fiveteen
|
||||
119 Hundred nineteen
|
||||
131 Hundred thirty-one
|
||||
133 Hundred thirty-three
|
||||
135 Hundred thirty-five
|
||||
139 Hundred thirty-nine
|
||||
151 Hundred fifty-one
|
||||
153 Hundred fifty-three
|
||||
155 Hundred fity-five
|
||||
159 Hundred fifty-nine
|
||||
191 Hundred ninety-one
|
||||
193 Hundred ninety-three
|
||||
195 Hundred ninety-five
|
||||
199 Hundred ninety-nine
|
||||
SELECT * FROM tp;
|
||||
a b
|
||||
112 Hundred twelve
|
||||
114 Hundred fourteen
|
||||
116 Hundred sixteen
|
||||
118 Hundred eightteen
|
||||
12 twelve
|
||||
122 Hundred twenty-two
|
||||
124 Hundred twenty-four
|
||||
126 Hundred twenty-six
|
||||
128 Hundred twenty-eight
|
||||
14 Fourteen
|
||||
16 Sixteen
|
||||
162 Hundred sixty-two
|
||||
164 Hundred sixty-four
|
||||
166 Hundred sixty-six
|
||||
168 Hundred sixty-eight
|
||||
18 Eightteen
|
||||
182 Hundred eighty-two
|
||||
184 Hundred eighty-four
|
||||
186 Hundred eighty-six
|
||||
188 Hundred eighty-eight
|
||||
2 Two
|
||||
4 Four
|
||||
6 Six
|
||||
8 Eight
|
||||
SELECT * FROM tsp;
|
||||
a b
|
||||
112 Hundred twelve
|
||||
114 Hundred fourteen
|
||||
116 Hundred sixteen
|
||||
118 Hundred eightteen
|
||||
12 twelve
|
||||
122 Hundred twenty-two
|
||||
124 Hundred twenty-four
|
||||
126 Hundred twenty-six
|
||||
128 Hundred twenty-eight
|
||||
14 Fourteen
|
||||
16 Sixteen
|
||||
162 Hundred sixty-two
|
||||
164 Hundred sixty-four
|
||||
166 Hundred sixty-six
|
||||
168 Hundred sixty-eight
|
||||
18 Eightteen
|
||||
182 Hundred eight-two
|
||||
184 Hundred eighty-four
|
||||
186 Hundred eighty-six
|
||||
188 Hundred eighty-eight
|
||||
2 Two
|
||||
4 Four
|
||||
6 Six
|
||||
8 Eight
|
||||
SELECT * FROM tsp_00;
|
||||
a b
|
||||
5 Five
|
||||
SELECT * FROM tsp_01;
|
||||
a b
|
||||
1 One
|
||||
SELECT * FROM tsp_02;
|
||||
a b
|
||||
SELECT * FROM tsp_03;
|
||||
a b
|
||||
3 Three
|
||||
SELECT * FROM tsp_04;
|
||||
a b
|
||||
9 Nine
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MariaDB
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
|
@ -1,8 +1,61 @@
|
||||
CREATE USER test2@localhost;
|
||||
CREATE TABLE t_10 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_100 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_1000 (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_empty (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE t_null (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM;
|
||||
CREATE TABLE tp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ,
|
||||
PARTITION p1 VALUES LESS THAN (100) ,
|
||||
PARTITION p2 VALUES LESS THAN (1000) );
|
||||
CREATE TABLE tsp (a INT, b VARCHAR(55), PRIMARY KEY (a)) ENGINE = MYISAM
|
||||
PARTITION BY RANGE (a)
|
||||
SUBPARTITION BY HASH(a)
|
||||
(PARTITION p0 VALUES LESS THAN (10)
|
||||
(SUBPARTITION sp00,
|
||||
SUBPARTITION sp01,
|
||||
SUBPARTITION sp02,
|
||||
SUBPARTITION sp03,
|
||||
SUBPARTITION sp04), PARTITION p1 VALUES LESS THAN (100)
|
||||
(SUBPARTITION sp10 ,
|
||||
SUBPARTITION sp11 ,
|
||||
SUBPARTITION sp12 ,
|
||||
SUBPARTITION sp13 ,
|
||||
SUBPARTITION sp14 ),
|
||||
PARTITION p2 VALUES LESS THAN (1000)
|
||||
(SUBPARTITION sp20,
|
||||
SUBPARTITION sp21,
|
||||
SUBPARTITION sp22,
|
||||
SUBPARTITION sp23,
|
||||
SUBPARTITION sp24));
|
||||
INSERT INTO t_10 VALUES (1, "One"), (3, "Three"), (5, "Five"), (9, "Nine");
|
||||
INSERT INTO t_100 VALUES (11, "Eleven"), (13, "Thirdteen"), (15, "Fifeteen"), (19, "Nineteen");
|
||||
INSERT INTO t_100 VALUES (91, "Ninety-one"), (93, "Ninety-three"), (95, "Ninety-five"), (99, "Ninety-nine");
|
||||
INSERT INTO t_1000 VALUES (111, "Hundred elven"), (113, "Hundred thirdteen"), (115, "Hundred fiveteen"), (119, "Hundred nineteen");
|
||||
INSERT INTO t_1000 VALUES (131, "Hundred thirty-one"), (133, "Hundred thirty-three"), (135, "Hundred thirty-five"), (139, "Hundred thirty-nine");
|
||||
INSERT INTO t_1000 VALUES (151, "Hundred fifty-one"), (153, "Hundred fifty-three"), (155, "Hundred fity-five"), (159, "Hundred fifty-nine");
|
||||
INSERT INTO t_1000 VALUES (191, "Hundred ninety-one"), (193, "Hundred ninety-three"), (195, "Hundred ninety-five"), (199, "Hundred ninety-nine");
|
||||
INSERT INTO t_null VALUES (1, "NULL");
|
||||
INSERT INTO tp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tp VALUES (182, "Hundred eighty-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
INSERT INTO tsp VALUES (2, "Two"), (4, "Four"), (6, "Six"), (8, "Eight");
|
||||
INSERT INTO tsp VALUES (12, "twelve"), (14, "Fourteen"), (16, "Sixteen"), (18, "Eightteen");
|
||||
INSERT INTO tsp VALUES (112, "Hundred twelve"), (114, "Hundred fourteen"), (116, "Hundred sixteen"), (118, "Hundred eightteen");
|
||||
INSERT INTO tsp VALUES (122, "Hundred twenty-two"), (124, "Hundred twenty-four"), (126, "Hundred twenty-six"), (128, "Hundred twenty-eight");
|
||||
INSERT INTO tsp VALUES (162, "Hundred sixty-two"), (164, "Hundred sixty-four"), (166, "Hundred sixty-six"), (168, "Hundred sixty-eight");
|
||||
INSERT INTO tsp VALUES (182, "Hundred eight-two"), (184, "Hundred eighty-four"), (186, "Hundred eighty-six"), (188, "Hundred eighty-eight");
|
||||
CREATE TABLE tsp_01(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 1;
|
||||
CREATE TABLE tsp_02(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 2;
|
||||
CREATE TABLE tsp_03(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 3;
|
||||
CREATE TABLE tsp_04(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 4;
|
||||
CREATE TABLE tsp_00(a INT,b VARCHAR(55),PRIMARY KEY (a)) ENGINE = MYISAM AS SELECT a, b FROM t_10 WHERE MOD(a,5)= 0;
|
||||
GRANT USAGE ON *.* TO test2@localhost;
|
||||
GRANT CREATE, DROP, ALTER, UPDATE, INSERT, SELECT ON test.* TO test2@localhost;
|
||||
connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
Grants for test2@localhost
|
||||
GRANT USAGE ON *.* TO 'test2'@'localhost'
|
||||
@ -53,10 +106,7 @@ a b
|
||||
4 Four
|
||||
6 Six
|
||||
8 Eight
|
||||
disconnect test2;
|
||||
connection default;
|
||||
REVOKE INSERT ON test.* FROM test2@localhost;
|
||||
connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
Grants for test2@localhost
|
||||
@ -64,11 +114,8 @@ GRANT USAGE ON *.* TO 'test2'@'localhost'
|
||||
GRANT SELECT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost'
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR 42000: INSERT command denied to user 'test2'@'localhost' for table 'tp'
|
||||
disconnect test2;
|
||||
connection default;
|
||||
GRANT INSERT ON test.* TO test2@localhost;
|
||||
REVOKE CREATE ON test.* FROM test2@localhost;
|
||||
connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
Grants for test2@localhost
|
||||
@ -76,20 +123,14 @@ GRANT USAGE ON *.* TO 'test2'@'localhost'
|
||||
GRANT SELECT, INSERT, UPDATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost'
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
ERROR 42000: CREATE command denied to user 'test2'@'localhost' for table 'tsp'
|
||||
disconnect test2;
|
||||
connection default;
|
||||
GRANT CREATE ON test.* TO test2@localhost;
|
||||
REVOKE DROP ON test.* FROM test2@localhost;
|
||||
connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
Grants for test2@localhost
|
||||
GRANT USAGE ON *.* TO 'test2'@'localhost'
|
||||
GRANT SELECT, INSERT, UPDATE, CREATE, ALTER ON `test`.* TO 'test2'@'localhost'
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
ERROR 42000: DROP command denied to user 'test2'@'localhost' for table 'tp'
|
||||
disconnect test2;
|
||||
connection default;
|
||||
DROP TABLE IF EXISTS t_10;
|
||||
DROP TABLE IF EXISTS t_100;
|
||||
DROP TABLE IF EXISTS t_1000;
|
||||
|
@ -1,21 +1,17 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-05
|
||||
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_partition.inc
|
||||
source include/have_innodb.inc;
|
||||
source include/have_partition.inc;
|
||||
|
||||
let $engine_table= MYISAM;
|
||||
let $engine_part= InnoDB;
|
||||
let $engine_subpart= InnoDB;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
|
||||
--error 1497
|
||||
error ER_MIX_HANDLER_ERROR;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
|
@ -1,94 +1,67 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-13
|
||||
|
||||
--source include/not_windows.inc
|
||||
--source include/have_partition.inc
|
||||
--source include/have_symlink.inc
|
||||
source include/not_windows.inc;
|
||||
source include/have_partition.inc;
|
||||
source include/have_symlink.inc;
|
||||
|
||||
let $engine_table= MYISAM;
|
||||
let $engine_part= MYISAM;
|
||||
let $engine_subpart= MYISAM;
|
||||
|
||||
# DATA DIRECTORY
|
||||
# Make directory for partition data
|
||||
let $data_dir_path= $MYSQLTEST_VARDIR/mysql-test-data-dir;
|
||||
--mkdir $data_dir_path
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
|
||||
# INDEX DIRECTORY
|
||||
# Make directory for partition index
|
||||
let $idx_dir_path= $MYSQLTEST_VARDIR/mysql-test-idx-dir;
|
||||
--mkdir $idx_dir_path
|
||||
let $p_index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
let $index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
mkdir $data_dir_path;
|
||||
mkdir $idx_dir_path;
|
||||
|
||||
use test;
|
||||
echo # === Data/Index directories are identical;
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $p_index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
let $index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
echo # === partition has directories, the table does not;
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $data_directory= ;
|
||||
let $p_index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
let $index_directory= ;
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
error ER_PARTITION_EXCHANGE_DIFFERENT_OPTION;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
echo # === the table has directories, partition does not;
|
||||
let $p_data_directory= ;
|
||||
let $data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $p_index_directory= ;
|
||||
let $index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
--rmdir $data_dir_path
|
||||
--rmdir $idx_dir_path
|
||||
echo # === data directory differs;
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $data_directory= DATA DIRECTORY = '$idx_dir_path';
|
||||
let $p_index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
let $index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
# DATA DIRECTORY
|
||||
# Make directory for partition data
|
||||
let $data_dir_path= $MYSQLTEST_VARDIR/mysql-test-data-dir;
|
||||
--mkdir $data_dir_path
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
|
||||
# INDEX DIRECTORY
|
||||
# Make directory for partition index
|
||||
let $idx_dir_path= $MYSQLTEST_VARDIR/mysql-test-idx-dir;
|
||||
--mkdir $idx_dir_path
|
||||
let $p_index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
|
||||
use test;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
--rmdir $data_dir_path
|
||||
--rmdir $idx_dir_path
|
||||
|
||||
# DATA DIRECTORY
|
||||
# Make directory for partition data
|
||||
let $data_dir_path= $MYSQLTEST_VARDIR/mysql-test-data-dir;
|
||||
--mkdir $data_dir_path
|
||||
let $data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
|
||||
# INDEX DIRECTORY
|
||||
# Make directory for partition index
|
||||
let $idx_dir_path= $MYSQLTEST_VARDIR/mysql-test-idx-dir;
|
||||
--mkdir $idx_dir_path
|
||||
let $index_directory= INDEX DIRECTORY = '$idx_dir_path';
|
||||
|
||||
use test;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
--rmdir $data_dir_path
|
||||
--rmdir $idx_dir_path
|
||||
echo # === index directory differs;
|
||||
let $p_data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $data_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $p_index_directory= DATA DIRECTORY = '$data_dir_path';
|
||||
let $index_directory= DATA DIRECTORY = '$idx_dir_path';
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
rmdir $idx_dir_path;
|
||||
rmdir $data_dir_path;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-15
|
||||
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_partition.inc
|
||||
source include/have_innodb.inc;
|
||||
source include/have_partition.inc;
|
||||
|
||||
let $engine_table= InnoDB;
|
||||
let $engine_part= InnoDB;
|
||||
@ -10,11 +10,7 @@ let $engine_subpart= InnoDB;
|
||||
|
||||
use test;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
|
||||
# 21) Foreign Key.
|
||||
# Exchange of partition with table differing in structure.
|
||||
@ -22,10 +18,8 @@ CREATE TABLE t_11 (a INT, b VARCHAR(55),
|
||||
FOREIGN KEY (a) REFERENCES t_10 (a) ON DELETE CASCADE)
|
||||
ENGINE= InnoDB;
|
||||
#--error ER_TABLES_DIFFERENT_METADATA
|
||||
--error ER_PARTITION_EXCHANGE_FOREIGN_KEY
|
||||
error ER_PARTITION_EXCHANGE_FOREIGN_KEY;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
--enable_warnings
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
DROP TABLE t_11;
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-05
|
||||
|
||||
--source include/have_partition.inc
|
||||
source include/have_partition.inc;
|
||||
|
||||
let $engine_table= MYISAM;
|
||||
let $engine_part= MYISAM;
|
||||
@ -9,72 +9,61 @@ let $engine_subpart= MYISAM;
|
||||
|
||||
use test;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_100;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_1000;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tp;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_01;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_02;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_03;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_04;
|
||||
|
||||
# 3) Invalid exchanges.
|
||||
# Exchange of partition with table differing in structure.
|
||||
CREATE TABLE t_11(a INT,b VARCHAR(55)) SELECT * FROM t_10;
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
--enable_warnings
|
||||
DROP TABLE t_11;
|
||||
eval CREATE TABLE t_11(a INT,b CHAR(55),PRIMARY KEY(a)) ENGINE= $engine_table SELECT * FROM t_10;
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
error ER_TABLES_DIFFERENT_METADATA;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
DROP TABLE t_11;
|
||||
CREATE TABLE t_11(a INT,b VARCHAR(55),PRIMARY KEY(a)) ENGINE= MEMORY SELECT * FROM t_10;
|
||||
--error ER_MIX_HANDLER_ERROR
|
||||
error ER_MIX_HANDLER_ERROR;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
--enable_warnings
|
||||
DROP TABLE t_11;
|
||||
# Exchange of partition with partitioned table.
|
||||
eval CREATE TABLE t_11(a INT,b CHAR(55),PRIMARY KEY(a)) ENGINE= $engine_table
|
||||
PARTITION BY KEY() AS SELECT * FROM t_10;
|
||||
--error ER_PARTITION_EXCHANGE_PART_TABLE
|
||||
error ER_PARTITION_EXCHANGE_PART_TABLE;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_11;
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_11;
|
||||
--enable_warnings
|
||||
DROP TABLE t_11;
|
||||
# Exchange of subpartition with partitioned table.
|
||||
--error ER_PARTITION_EXCHANGE_PART_TABLE
|
||||
error ER_PARTITION_EXCHANGE_PART_TABLE;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE tsp;
|
||||
# Exchange of subpartitioned partition with table.
|
||||
--error ER_PARTITION_INSTEAD_OF_SUBPARTITION
|
||||
error ER_PARTITION_INSTEAD_OF_SUBPARTITION;
|
||||
ALTER TABLE tsp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
# Exchange of values in partition not fitting the hash.
|
||||
--error ER_ROW_DOES_NOT_MATCH_PARTITION
|
||||
error ER_ROW_DOES_NOT_MATCH_PARTITION;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_100;
|
||||
# Exchange of values in subpartition not fitting the hash.
|
||||
--error ER_ROW_DOES_NOT_MATCH_PARTITION
|
||||
error ER_ROW_DOES_NOT_MATCH_PARTITION;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p2 WITH TABLE t_10;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-05
|
||||
|
||||
--source include/have_partition.inc
|
||||
--source include/have_innodb.inc
|
||||
source include/have_partition.inc;
|
||||
source include/have_innodb.inc;
|
||||
|
||||
let $engine_table= MYISAM;
|
||||
let $engine_part= InnoDB;
|
||||
@ -10,38 +10,34 @@ let $engine_subpart= InnoDB;
|
||||
|
||||
use test;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_100;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_1000;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tp;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_01;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_02;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_03;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_04;
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
|
||||
# 5) Exchanges with different engines.
|
||||
--error ER_MIX_HANDLER_ERROR
|
||||
error ER_MIX_HANDLER_ERROR;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
--error ER_MIX_HANDLER_ERROR
|
||||
error ER_MIX_HANDLER_ERROR;
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Author: Horst Hunger
|
||||
# Created: 2010-07-06
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_partition.inc
|
||||
source include/not_embedded.inc;
|
||||
source include/have_partition.inc;
|
||||
|
||||
let $engine_table= MYISAM;
|
||||
let $engine_part= MYISAM;
|
||||
@ -10,93 +10,75 @@ let $engine_subpart= MYISAM;
|
||||
|
||||
CREATE USER test2@localhost;
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
--source suite/parts/inc/part_exch_tabs.inc
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
source suite/parts/inc/part_exch_tabs.inc;
|
||||
|
||||
GRANT USAGE ON *.* TO test2@localhost;
|
||||
GRANT CREATE, DROP, ALTER, UPDATE, INSERT, SELECT ON test.* TO test2@localhost;
|
||||
|
||||
--echo connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
connect (test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
# 9) Exchanges with different owner.
|
||||
# Privilege for ALTER and SELECT
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tp WHERE a BETWEEN 0 AND 10;
|
||||
# Back to former values.
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM t_10;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tp WHERE a BETWEEN 0 AND 10;
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp WHERE a BETWEEN 0 AND 10;
|
||||
# Back to former values.
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp_00;
|
||||
--sorted_result
|
||||
sorted_result;
|
||||
SELECT * FROM tsp WHERE a BETWEEN 0 AND 10;
|
||||
--echo disconnect test2;
|
||||
disconnect test2;
|
||||
|
||||
--echo connection default;
|
||||
connection default;
|
||||
REVOKE INSERT ON test.* FROM test2@localhost;
|
||||
|
||||
--echo connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
connect (test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
# Privilege for ALTER and SELECT
|
||||
--error ER_TABLEACCESS_DENIED_ERROR
|
||||
error ER_TABLEACCESS_DENIED_ERROR;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
--echo disconnect test2;
|
||||
disconnect test2;
|
||||
|
||||
--echo connection default;
|
||||
connection default;
|
||||
GRANT INSERT ON test.* TO test2@localhost;
|
||||
REVOKE CREATE ON test.* FROM test2@localhost;
|
||||
|
||||
--echo connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
connect (test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
--error ER_TABLEACCESS_DENIED_ERROR
|
||||
error ER_TABLEACCESS_DENIED_ERROR;
|
||||
ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00;
|
||||
--echo disconnect test2;
|
||||
disconnect test2;
|
||||
|
||||
--echo connection default;
|
||||
connection default;
|
||||
GRANT CREATE ON test.* TO test2@localhost;
|
||||
REVOKE DROP ON test.* FROM test2@localhost;
|
||||
|
||||
--echo connect (test2,localhost,test2,,test,MASTER_MYPORT,MASTER_MYSOCK);
|
||||
connect (test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
|
||||
USE test;
|
||||
SHOW GRANTS FOR CURRENT_USER;
|
||||
# Privilege for ALTER and SELECT
|
||||
--error ER_TABLEACCESS_DENIED_ERROR
|
||||
error ER_TABLEACCESS_DENIED_ERROR;
|
||||
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
|
||||
--echo disconnect test2;
|
||||
disconnect test2;
|
||||
|
||||
--echo connection default;
|
||||
connection default;
|
||||
|
||||
--source suite/parts/inc/part_exch_drop_tabs.inc
|
||||
source suite/parts/inc/part_exch_drop_tabs.inc;
|
||||
|
||||
DROP USER test2@localhost;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user