]> git.ipfire.org Git - thirdparty/postgresql.git/commit
pg_get_viewdef() and lateral references in COLUMNS of GRAPH_TABLE
authorPeter Eisentraut <peter@eisentraut.org>
Fri, 24 Apr 2026 07:12:03 +0000 (09:12 +0200)
committerPeter Eisentraut <peter@eisentraut.org>
Fri, 24 Apr 2026 07:12:03 +0000 (09:12 +0200)
commit9d2979dd6856e160f35544d79eb11f2c68c30985
treef66aaf7d2dd8a8bf5e17fe301baf8fc52bb62e56
parentac3bcc041c5cc2b7ce522d4ce6e6c4653f1263ea
pg_get_viewdef() and lateral references in COLUMNS of GRAPH_TABLE

Expressions in GRAPH_TABLE COLUMNS list may have lateral references.
get_rule_expr() requires lateral namespaces to deparse such
references.  get_from_clause_item() does not pass them when processing
the expressions in COLUMNS list causing ERROR "bogus varlevelsup: 0
offset 0".  Fix get_from_clause_item() to pass input deparse_context
containing lateral namespaces to get_rule_expr() instead of the dummy
context.

Author: Satyanarayana Narlapuram <satyanarlapuram@gmail.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/CAHg%2BQDcLVa2iBnggkHxY4itZbXtDMfsYHEjnCUYe9hNbnxDi-w%40mail.gmail.com
src/backend/utils/adt/ruleutils.c
src/test/regress/expected/graph_table.out
src/test/regress/sql/graph_table.sql