diff options
author | unknown <timour@askmonty.org> | 2012-06-06 22:26:40 +0300 |
---|---|---|
committer | unknown <timour@askmonty.org> | 2012-06-06 22:26:40 +0300 |
commit | c2677de7aca09a0ba4b680b5227bda3865ab9290 (patch) | |
tree | 980157e9eaf1062641572da371d1ae7fcc371625 /sql/item_subselect.h | |
parent | 8efc63ba5d32b77501226921ee503b9ae513a365 (diff) | |
parent | 7ddd5418d01e60dba2ae69a668e7c9f811613451 (diff) | |
download | mariadb-git-c2677de7aca09a0ba4b680b5227bda3865ab9290.tar.gz |
Merge the fix for lp:944706, mdev-193
Diffstat (limited to 'sql/item_subselect.h')
-rw-r--r-- | sql/item_subselect.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/item_subselect.h b/sql/item_subselect.h index 0e0f61aedd9..415bb059198 100644 --- a/sql/item_subselect.h +++ b/sql/item_subselect.h @@ -209,7 +209,7 @@ public: */ bool is_evaluated() const; bool is_uncacheable() const; - bool is_expensive() { return TRUE; } + bool is_expensive(); /* Used by max/min subquery to initialize value presence registration @@ -235,7 +235,7 @@ public: @retval TRUE if the predicate is expensive @retval FALSE otherwise */ - bool is_expensive_processor(uchar *arg) { return TRUE; } + bool is_expensive_processor(uchar *arg) { return is_expensive(); } /** Get the SELECT_LEX structure associated with this Item. @@ -581,6 +581,10 @@ public: bool fix_fields(THD *thd, Item **ref); void fix_length_and_dec(); void fix_after_pullout(st_select_lex *new_parent, Item **ref); + bool const_item() const + { + return Item_subselect::const_item() && left_expr->const_item(); + } void update_used_tables(); bool setup_mat_engine(); bool init_left_expr_cache(); |