--- r/partition_column.result 2011-10-21 23:09:08.000000000 +0200 +++ r/partition_column.reject 2012-02-10 14:12:42.000000000 +0100 @@ -29,10 +29,10 @@ `name` varchar(255) DEFAULT NULL, `department` varchar(10) DEFAULT NULL, `country` varchar(255) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(department,country) -(PARTITION first_office VALUES IN (('dep1','Russia'),('dep1','Croatia')) ENGINE = MyISAM, - PARTITION second_office VALUES IN (('dep2','Russia')) ENGINE = MyISAM) */ +(PARTITION first_office VALUES IN (('dep1','Russia'),('dep1','Croatia')) ENGINE = PBXT, + PARTITION second_office VALUES IN (('dep2','Russia')) ENGINE = PBXT) */ SELECT * FROM t1 WHERE department = 'dep2' and country = 'Croatia'; id name department country SELECT * FROM t1 WHERE department = 'dep1' and country = 'Croatia'; @@ -98,7 +98,7 @@ 00410000 explain partitions select hex(a) from t1 where a like 'A_'; id select_type table partitions type possible_keys key key_len ref rows Extra -1 SIMPLE t1 p0 system NULL NULL NULL NULL 1 +1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 2 Using where alter table t1 remove partitioning; select hex(a) from t1 where a like 'A_'; hex(a) @@ -172,11 +172,11 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(5) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(a) -(PARTITION p0 VALUES IN ('''') ENGINE = MyISAM, - PARTITION p1 VALUES IN ('\\') ENGINE = MyISAM, - PARTITION p2 VALUES IN ('\0') ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN ('''') ENGINE = PBXT, + PARTITION p1 VALUES IN ('\\') ENGINE = PBXT, + PARTITION p2 VALUES IN ('\0') ENGINE = PBXT) */ drop table t1; set @@sql_mode=allow_invalid_dates; create table t1 (a char, b char, c date) @@ -231,14 +231,14 @@ `b` char(10) DEFAULT NULL, `c` varchar(25) DEFAULT NULL, `d` datetime DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY RANGE COLUMNS(a,b,c,d) SUBPARTITION BY HASH (to_seconds(d)) SUBPARTITIONS 4 -(PARTITION p0 VALUES LESS THAN (1,'0',MAXVALUE,'1900-01-01') ENGINE = MyISAM, - PARTITION p1 VALUES LESS THAN (1,'a',MAXVALUE,'1999-01-01') ENGINE = MyISAM, - PARTITION p2 VALUES LESS THAN (1,'b',MAXVALUE,MAXVALUE) ENGINE = MyISAM, - PARTITION p3 VALUES LESS THAN (1,MAXVALUE,MAXVALUE,MAXVALUE) ENGINE = MyISAM) */ +(PARTITION p0 VALUES LESS THAN (1,'0',MAXVALUE,'1900-01-01') ENGINE = PBXT, + PARTITION p1 VALUES LESS THAN (1,'a',MAXVALUE,'1999-01-01') ENGINE = PBXT, + PARTITION p2 VALUES LESS THAN (1,'b',MAXVALUE,MAXVALUE) ENGINE = PBXT, + PARTITION p3 VALUES LESS THAN (1,MAXVALUE,MAXVALUE,MAXVALUE) ENGINE = PBXT) */ drop table t1; create table t1 (a int, b int) partition by range columns (a,b) @@ -314,11 +314,11 @@ t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(a,b) -(PARTITION p0 VALUES IN ((1,NULL),(2,NULL),(NULL,NULL)) ENGINE = MyISAM, - PARTITION p1 VALUES IN ((1,1),(2,2)) ENGINE = MyISAM, - PARTITION p2 VALUES IN ((3,NULL),(NULL,1)) ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN ((1,NULL),(2,NULL),(NULL,NULL)) ENGINE = PBXT, + PARTITION p1 VALUES IN ((1,1),(2,2)) ENGINE = PBXT, + PARTITION p2 VALUES IN ((3,NULL),(NULL,1)) ENGINE = PBXT) */ insert into t1 values (3, NULL); insert into t1 values (NULL, 1); insert into t1 values (NULL, NULL); @@ -348,11 +348,11 @@ t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(a,b) -(PARTITION p0 VALUES IN ((1,NULL),(2,NULL),(NULL,NULL)) ENGINE = MyISAM, - PARTITION p1 VALUES IN ((1,1),(2,2)) ENGINE = MyISAM, - PARTITION p2 VALUES IN ((3,NULL),(NULL,1)) ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN ((1,NULL),(2,NULL),(NULL,NULL)) ENGINE = PBXT, + PARTITION p1 VALUES IN ((1,1),(2,2)) ENGINE = PBXT, + PARTITION p2 VALUES IN ((3,NULL),(NULL,1)) ENGINE = PBXT) */ drop table t1; create table t1 (a int) partition by list (a) @@ -372,10 +372,10 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (a) -(PARTITION p0 VALUES IN (2,1) ENGINE = MyISAM, - PARTITION p1 VALUES IN (NULL,4,3) ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN (2,1) ENGINE = PBXT, + PARTITION p1 VALUES IN (NULL,4,3) ENGINE = PBXT) */ insert into t1 values (1); insert into t1 values (2); insert into t1 values (3); @@ -402,10 +402,10 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(a) -(PARTITION p0 VALUES IN (2,1) ENGINE = MyISAM, - PARTITION p1 VALUES IN (4,NULL,3) ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN (2,1) ENGINE = PBXT, + PARTITION p1 VALUES IN (4,NULL,3) ENGINE = PBXT) */ insert into t1 values (1); insert into t1 values (2); insert into t1 values (3); @@ -417,10 +417,10 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY LIST COLUMNS(a) -(PARTITION p0 VALUES IN (2,1) ENGINE = MyISAM, - PARTITION p1 VALUES IN (4,NULL,3) ENGINE = MyISAM) */ +(PARTITION p0 VALUES IN (2,1) ENGINE = PBXT, + PARTITION p1 VALUES IN (4,NULL,3) ENGINE = PBXT) */ drop table t1; create table t1 (a int, b char(10), c varchar(5), d int) partition by range columns(a,b,c) @@ -452,14 +452,14 @@ `b` char(10) DEFAULT NULL, `c` varchar(5) DEFAULT NULL, `d` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY RANGE COLUMNS(a,b,c) SUBPARTITION BY KEY (c,d) SUBPARTITIONS 3 -(PARTITION p0 VALUES LESS THAN (1,'abc','abc') ENGINE = MyISAM, - PARTITION p1 VALUES LESS THAN (2,'abc','abc') ENGINE = MyISAM, - PARTITION p2 VALUES LESS THAN (3,'abc','abc') ENGINE = MyISAM, - PARTITION p3 VALUES LESS THAN (4,'abc','abc') ENGINE = MyISAM) */ +(PARTITION p0 VALUES LESS THAN (1,'abc','abc') ENGINE = PBXT, + PARTITION p1 VALUES LESS THAN (2,'abc','abc') ENGINE = PBXT, + PARTITION p2 VALUES LESS THAN (3,'abc','abc') ENGINE = PBXT, + PARTITION p3 VALUES LESS THAN (4,'abc','abc') ENGINE = PBXT) */ insert into t1 values (1,'a','b',1),(2,'a','b',2),(3,'a','b',3); insert into t1 values (1,'b','c',1),(2,'b','c',2),(3,'b','c',3); insert into t1 values (1,'c','d',1),(2,'c','d',2),(3,'c','d',3); @@ -485,14 +485,14 @@ `a` int(11) DEFAULT NULL, `b` varchar(2) DEFAULT NULL, `c` int(11) DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=latin1 +) ENGINE=PBXT DEFAULT CHARSET=latin1 /*!50500 PARTITION BY RANGE COLUMNS(a,b,c) -(PARTITION p0 VALUES LESS THAN (1,'A',1) ENGINE = MyISAM, - PARTITION p1 VALUES LESS THAN (1,'B',1) ENGINE = MyISAM) */ +(PARTITION p0 VALUES LESS THAN (1,'A',1) ENGINE = PBXT, + PARTITION p1 VALUES LESS THAN (1,'B',1) ENGINE = PBXT) */ insert into t1 values (1, 'A', 1); explain partitions select * from t1 where a = 1 AND b <= 'A' and c = 1; id select_type table partitions type possible_keys key key_len ref rows Extra -1 SIMPLE t1 p0,p1 system NULL NULL NULL NULL 1 +1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 2 Using where select * from t1 where a = 1 AND b <= 'A' and c = 1; a b c 1 A 1