diff options
-rw-r--r-- | mysql-test/r/partition.result | 3 | ||||
-rw-r--r-- | mysql-test/t/partition.test | 4 | ||||
-rw-r--r-- | sql/item_func.h | 4 |
3 files changed, 10 insertions, 1 deletions
diff --git a/mysql-test/r/partition.result b/mysql-test/r/partition.result index a361a8f6bcc..d3275cec922 100644 --- a/mysql-test/r/partition.result +++ b/mysql-test/r/partition.result @@ -1,4 +1,7 @@ drop table if exists t1; +create table t1 (a int) partition by list ((a/3)*10 div 1) +(partition p0 values in (0), partition p1 values in (1)); +ERROR HY000: This partition function is not allowed CREATE TABLE t1 ( d DATE NOT NULL ) diff --git a/mysql-test/t/partition.test b/mysql-test/t/partition.test index 23d6c5f8865..7ca6f0f55d6 100644 --- a/mysql-test/t/partition.test +++ b/mysql-test/t/partition.test @@ -14,6 +14,10 @@ drop table if exists t1; --enable_warnings +--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int) partition by list ((a/3)*10 div 1) +(partition p0 values in (0), partition p1 values in (1)); + # # Bug #30695: An apostrophe ' in the comment of the ADD PARTITION causes the Server to crash. # diff --git a/sql/item_func.h b/sql/item_func.h index e09b584de95..c73b46f21e6 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -296,7 +296,6 @@ class Item_num_op :public Item_func_numhybrid void print(String *str) { print_op(str); } void find_num_type(); String *str_op(String *str) { DBUG_ASSERT(0); return 0; } - bool check_partition_func_processor(uchar *int_arg) {return FALSE;} }; @@ -382,6 +381,7 @@ class Item_func_additive_op :public Item_num_op public: Item_func_additive_op(Item *a,Item *b) :Item_num_op(a,b) {} void result_precision(); + bool check_partition_func_processor(uchar *int_arg) {return FALSE;} }; @@ -416,6 +416,7 @@ public: double real_op(); my_decimal *decimal_op(my_decimal *); void result_precision(); + bool check_partition_func_processor(uchar *int_arg) {return FALSE;} }; @@ -456,6 +457,7 @@ public: const char *func_name() const { return "%"; } void result_precision(); void fix_length_and_dec(); + bool check_partition_func_processor(uchar *int_arg) {return FALSE;} }; |