summaryrefslogtreecommitdiff
path: root/mysql-test/r/partition_column.result
diff options
context:
space:
mode:
authorMattias Jonsson <mattias.jonsson@sun.com>2010-03-04 11:24:39 +0100
committerMattias Jonsson <mattias.jonsson@sun.com>2010-03-04 11:24:39 +0100
commit5eaa7936f667f4c38ea54310f5511dc323a8f039 (patch)
treea7a243823bfcef9781202c526308babc11fe0a39 /mysql-test/r/partition_column.result
parentaca943f0b122e56aa19fb2f73583de3078d9d458 (diff)
downloadmariadb-git-5eaa7936f667f4c38ea54310f5511dc323a8f039.tar.gz
Bug#51347: assertion with show create table + partition by columns
on decimal column The problem was that there was no check to disallow DECIMAL columns in the code (it was accepted as if it was INTEGER). Solution was to correctly disallow DECIMAL columns in COLUMNS partitioning. As documented. mysql-test/r/partition_column.result: Bug#51347: assertion with show create table + partition by columns on decimal column updated test result mysql-test/t/partition_column.test: Bug#51347: assertion with show create table + partition by columns on decimal column Added test to verify column types that is not supported sql/sql_partition.cc: Bug#51347: assertion with show create table + partition by columns on decimal column Moved DECIMAL types to be disallowed as column types in COLUMNS partitioning
Diffstat (limited to 'mysql-test/r/partition_column.result')
-rw-r--r--mysql-test/r/partition_column.result50
1 files changed, 40 insertions, 10 deletions
diff --git a/mysql-test/r/partition_column.result b/mysql-test/r/partition_column.result
index ddc48b635cf..458343a6b92 100644
--- a/mysql-test/r/partition_column.result
+++ b/mysql-test/r/partition_column.result
@@ -1,4 +1,44 @@
drop table if exists t1;
+CREATE TABLE t1 (a DECIMAL)
+PARTITION BY RANGE COLUMNS (a)
+(PARTITION p0 VALUES LESS THAN (0));
+ERROR HY000: Field 'a' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (a BLOB)
+PARTITION BY RANGE COLUMNS (a)
+(PARTITION p0 VALUES LESS THAN ("X"));
+ERROR HY000: A BLOB field is not allowed in partition function
+CREATE TABLE t1 (a TEXT)
+PARTITION BY RANGE COLUMNS (a)
+(PARTITION p0 VALUES LESS THAN ("X"));
+ERROR HY000: A BLOB field is not allowed in partition function
+CREATE TABLE t1 (a FLOAT)
+PARTITION BY RANGE COLUMNS (a)
+(PARTITION p0 VALUES LESS THAN (0.0));
+ERROR HY000: Field 'a' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (a DOUBLE)
+PARTITION BY RANGE COLUMNS (a)
+(PARTITION p0 VALUES LESS THAN (0.0));
+ERROR HY000: Field 'a' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (d TIMESTAMP)
+PARTITION BY RANGE COLUMNS(d)
+(PARTITION p0 VALUES LESS THAN ('2000-01-01'),
+PARTITION p1 VALUES LESS THAN ('2040-01-01'));
+ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (d BIT(1))
+PARTITION BY RANGE COLUMNS(d)
+(PARTITION p0 VALUES LESS THAN (0),
+PARTITION p1 VALUES LESS THAN (1));
+ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (d ENUM("YES","NO"))
+PARTITION BY RANGE COLUMNS(d)
+(PARTITION p0 VALUES LESS THAN ("NO"),
+PARTITION p1 VALUES LESS THAN (MAXVALUE));
+ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
+CREATE TABLE t1 (d SET("Car","MC"))
+PARTITION BY RANGE COLUMNS(d)
+(PARTITION p0 VALUES LESS THAN ("MC"),
+PARTITION p1 VALUES LESS THAN (MAXVALUE));
+ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
create table t1 (a int, b int)
partition by range columns (a,b)
( partition p0 values less than (maxvalue, 10),
@@ -430,16 +470,6 @@ partition by range columns(d)
( partition p0 values less than ('2000-01-01'),
partition p1 values less than ('2040-01-01'));
ERROR HY000: Partition column values of incorrect type
-create table t1 (d timestamp)
-partition by range columns(d)
-( partition p0 values less than ('2000-01-01'),
-partition p1 values less than ('2040-01-01'));
-ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
-create table t1 (d bit(1))
-partition by range columns(d)
-( partition p0 values less than (0),
-partition p1 values less than (1));
-ERROR HY000: Field 'd' is of a not allowed type for this type of partitioning
create table t1 (a int, b int)
partition by range columns(a,b)
(partition p0 values less than (maxvalue, 10));