summaryrefslogtreecommitdiff
path: root/sql/item_subselect.h
diff options
context:
space:
mode:
authorGalina Shalygina <galashalygina@gmail.com>2016-05-24 21:29:52 +0300
committerGalina Shalygina <galashalygina@gmail.com>2016-05-24 21:29:52 +0300
commitb4f1f42062d108230b62ad49fedd93ee6e38e168 (patch)
treea57f64c4f64bed0e7b14fca9ea10ddbaf7f7d702 /sql/item_subselect.h
parent0f7fe2a7437e69d1973d4354c2cddd7beeca05b9 (diff)
downloadmariadb-git-b4f1f42062d108230b62ad49fedd93ee6e38e168.tar.gz
Fixed the problem of wrong identification of WITH tables defined in WITH clauses without RECURSIVE.
Added test cases to check the fix. Fixed the problem of wrong types of recursive tables when the type of anchor part does not coincide with the type of recursive part. Prevented usage of marerialization and subquery cache for subqueries with recursive references. Introduced system variables 'max_recursion_level'. Added a test case to test usage of this variable.
Diffstat (limited to 'sql/item_subselect.h')
-rw-r--r--sql/item_subselect.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/item_subselect.h b/sql/item_subselect.h
index 58b5a948048..c1e68247220 100644
--- a/sql/item_subselect.h
+++ b/sql/item_subselect.h
@@ -126,7 +126,9 @@ public:
bool changed;
/* TRUE <=> The underlying SELECT is correlated w.r.t some ancestor select */
- bool is_correlated;
+ bool is_correlated;
+
+ bool with_recursive_reference;
enum subs_type {UNKNOWN_SUBS, SINGLEROW_SUBS,
EXISTS_SUBS, IN_SUBS, ALL_SUBS, ANY_SUBS};