From 2bb6dc234e5466868b8c4aa26bda241dd6e5495a Mon Sep 17 00:00:00 2001 From: John Gemignani Date: Tue, 2 Jan 2024 11:58:48 -0800 Subject: [PATCH] Add an additional way to find a previous variable ref (#1450) Added an additional way to find a previous variable reference to `transform_column_ref_for_indirection`. There was no impact on current regression tests. Resolved - Conflicts: src/backend/parser/cypher_expr.c --- src/backend/parser/cypher_expr.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/backend/parser/cypher_expr.c b/src/backend/parser/cypher_expr.c index cbb250e51..18d500ba9 100644 --- a/src/backend/parser/cypher_expr.c +++ b/src/backend/parser/cypher_expr.c @@ -841,10 +841,16 @@ static Node *transform_column_ref_for_indirection(cypher_parsestate *cpstate, /* locate the referenced RTE */ rte = find_rte(cpstate, relname); - /* if we didn't find anything, return NULL */ + /* + * If we didn't find anything, try looking for a previous variable + * reference. Otherwise, return NULL (colNameToVar will return NULL + * if nothing is found). + */ if (!rte) { - return NULL; + Node *prev_var = colNameToVar(pstate, relname, false, cr->location); + + return prev_var; } /* find the properties column of the NSI and return a var for it */