diff options
author | Sergei Golubchik <serg@mariadb.org> | 2015-10-09 17:12:26 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2015-10-09 17:12:26 +0200 |
commit | cfeedbfd3e292f61c7da8f0a7f86307cbeeddb64 (patch) | |
tree | 3629d1de148b14915a35a21f809e1a2ea6a08619 /sql/partition_info.cc | |
parent | bff1af983ad7b0bed6c3973e4d13297df5fe2791 (diff) | |
parent | 16c4b3c68b06653592a9500050ad977a38f4ebae (diff) | |
download | mariadb-git-cfeedbfd3e292f61c7da8f0a7f86307cbeeddb64.tar.gz |
Merge branch '5.5' into 10.0
Diffstat (limited to 'sql/partition_info.cc')
-rw-r--r-- | sql/partition_info.cc | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/sql/partition_info.cc b/sql/partition_info.cc index 4a42d7965b8..1607b1937df 100644 --- a/sql/partition_info.cc +++ b/sql/partition_info.cc @@ -1,4 +1,5 @@ -/* Copyright (c) 2006, 2013, Oracle and/or its affiliates. +/* Copyright (c) 2006, 2015, Oracle and/or its affiliates. + Copyright (c) 2010, 2015, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -1665,15 +1666,22 @@ bool partition_info::check_partition_info(THD *thd, handlerton **eng_type, { int err= 0; + /* Check for partition expression. */ if (!list_of_part_fields) { DBUG_ASSERT(part_expr); err= part_expr->walk(&Item::check_partition_func_processor, 0, NULL); - if (!err && is_sub_partitioned() && !list_of_subpart_fields) - err= subpart_expr->walk(&Item::check_partition_func_processor, 0, - NULL); } + + /* Check for sub partition expression. */ + if (!err && is_sub_partitioned() && !list_of_subpart_fields) + { + DBUG_ASSERT(subpart_expr); + err= subpart_expr->walk(&Item::check_partition_func_processor, 0, + NULL); + } + if (err) { my_error(ER_PARTITION_FUNCTION_IS_NOT_ALLOWED, MYF(0)); |