| From: | Peter Eisentraut <peter(at)eisentraut(dot)org> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: pg_get_viewdef() and lateral references in COLUMNS of GRAPH_TABL |
| Date: | 2026-04-24 07:17:43 |
| Message-ID: | E1wGAnH-002TIZ-0J@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
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(at)gmail(dot)com>
Reviewed-by: Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/CAHg%2BQDcLVa2iBnggkHxY4itZbXtDMfsYHEjnCUYe9hNbnxDi-w%40mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/9d2979dd6856e160f35544d79eb11f2c68c30985
Modified Files
--------------
src/backend/utils/adt/ruleutils.c | 10 ++--------
src/test/regress/expected/graph_table.out | 26 ++++++++++++++++++--------
src/test/regress/sql/graph_table.sql | 12 ++++++++++--
3 files changed, 30 insertions(+), 18 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2026-04-24 07:52:14 | pgsql: meson: Differentiate top-level and custom targets |
| Previous Message | Peter Eisentraut | 2026-04-24 06:49:16 | pgsql: Fix collation of expressions in GRAPH_TABLE COLUMNS clause |