summaryrefslogtreecommitdiff
path: root/sql/sql_derived.h
diff options
context:
space:
mode:
authorIgor Babaev <igor@askmonty.org>2017-04-28 21:58:04 -0700
committerIgor Babaev <igor@askmonty.org>2017-04-28 21:59:11 -0700
commit7a29ca277698ffac757b2bd17c0977fb02b78557 (patch)
treee23dc1653e46c095d4488f614cbc26ed18dbb7d6 /sql/sql_derived.h
parent4b24467ff37d6db82500e736e832d0a53842ac9b (diff)
downloadmariadb-git-7a29ca277698ffac757b2bd17c0977fb02b78557.tar.gz
Fixed the bug mdev-12563.
The bug happened when the specification of a recursive CTE had no recursive references at the top level of the specification. In this case the regular processing of derived table references of the select containing a non-recursive reference to this recursive CTE misses handling the specification unit. At the preparation stage any non-recursive reference to a recursive CTE must be handled after the preparation of the specification unit for this CTE. So we have to force this preparation when regular handling of derived tables does not do it.
Diffstat (limited to 'sql/sql_derived.h')
-rw-r--r--sql/sql_derived.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/sql/sql_derived.h b/sql/sql_derived.h
index c451e423032..f098cf39083 100644
--- a/sql/sql_derived.h
+++ b/sql/sql_derived.h
@@ -39,10 +39,6 @@ bool mysql_derived_cleanup(THD *thd, LEX *lex, TABLE_LIST *derived);
Item *delete_not_needed_parts(THD *thd, Item *cond);
-#if 0
-bool pushdown_cond_for_derived(THD *thd, Item **cond, TABLE_LIST *derived);
-#else
bool pushdown_cond_for_derived(THD *thd, Item *cond, TABLE_LIST *derived);
-#endif
#endif /* SQL_DERIVED_INCLUDED */