diff options
author | Igor Babaev <igor@askmonty.org> | 2017-08-12 19:58:16 -0700 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2017-08-12 19:58:55 -0700 |
commit | 61bbabb202ddada20dc39970734ce93b0709de0d (patch) | |
tree | e6469830381f43c94f17f832586c71008f1809d3 /sql/sql_lex.h | |
parent | c9981fbee2436dcb893ff74e57a0f461a2020f92 (diff) | |
download | mariadb-git-61bbabb202ddada20dc39970734ce93b0709de0d.tar.gz |
Implemented condition pushdown into derived tables / views
with window functions (mdev-10855).
This patch just modified the function pushdown_cond_for_derived()
to support this feature.
Some test cases demonstrating this optimization were added to
derived_cond_pushdown.test.
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r-- | sql/sql_lex.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h index e404af4afd9..24773719562 100644 --- a/sql/sql_lex.h +++ b/sql/sql_lex.h @@ -1223,7 +1223,7 @@ public: With_element *find_table_def_in_with_clauses(TABLE_LIST *table); bool check_unrestricted_recursive(bool only_standard_compliant); bool check_subqueries_with_recursive_references(); - void collect_grouping_fields(THD *thd); + void collect_grouping_fields(THD *thd, ORDER *grouping_list); void check_cond_extraction_for_grouping_fields(Item *cond, TABLE_LIST *derived); Item *build_cond_for_grouping_fields(THD *thd, Item *cond, @@ -1248,7 +1248,7 @@ public: bool have_window_funcs() const { return (window_funcs.elements !=0); } bool cond_pushdown_is_allowed() const - { return !have_window_funcs() && !olap && !explicit_limit; } + { return !olap && !explicit_limit; } private: bool m_non_agg_field_used; |