aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/util/var.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2012-08-31 17:44:01 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2012-08-31 17:44:31 -0400
commitda3df998702061b4b63d83d5354b148e812f21f8 (patch)
tree6a622788d29e9cdf3b7ee9db6d25832684cc26e7 /src/backend/optimizer/util/var.c
parentf789909b59c59a33e34feac3bed2c86f18159122 (diff)
downloadpostgresql-da3df998702061b4b63d83d5354b148e812f21f8.tar.gz
postgresql-da3df998702061b4b63d83d5354b148e812f21f8.zip
Fix LATERAL references to join alias variables.
I had thought this case worked already, but perhaps I didn't re-test it after adding extract_lateral_references() ...
Diffstat (limited to 'src/backend/optimizer/util/var.c')
-rw-r--r--src/backend/optimizer/util/var.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/backend/optimizer/util/var.c b/src/backend/optimizer/util/var.c
index a0668c9615b..db9a1164ad3 100644
--- a/src/backend/optimizer/util/var.c
+++ b/src/backend/optimizer/util/var.c
@@ -600,7 +600,9 @@ pull_var_clause_walker(Node *node, pull_var_clause_context *context)
* hasSubLinks = TRUE, so this is only relevant to un-flattened subqueries.
*
* NOTE: this is used on not-yet-planned expressions. We do not expect it
- * to be applied directly to a Query node.
+ * to be applied directly to the whole Query, so if we see a Query to start
+ * with, we do want to increment sublevels_up (this occurs for LATERAL
+ * subqueries).
*/
Node *
flatten_join_alias_vars(PlannerInfo *root, Node *node)