pgsql: Fix get_expr_result_type() to find field names for RECORD Consts

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix get_expr_result_type() to find field names for RECORD Consts
Date: 2023-09-15 21:02:07
Message-ID: E1qhFx0-0042u1-Lw@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix get_expr_result_type() to find field names for RECORD Consts.

This is a back-patch of commit d57534740 ("Fix EXPLAIN of SEARCH
BREADTH FIRST with a constant initial value") into pre-v14 branches.
At the time I'd thought it was not needed in branches that lack the
SEARCH/CYCLE feature, but that was just a failure of imagination.
It's possible to demonstrate "record type has not been registered"
failures in older branches too, during deparsing of views that contain
references to fields of composite constants.

Back-patch only the code changes, as the test cases added by d57534740
all require SEARCH/CYCLE syntax. A suitable test case will be added
in the upcoming fix for bug #18077.

Discussion: https://postgr.es/m/17644-3bd1f3036d6d7a16@postgresql.org
Discussion: https://postgr.es/m/3607145.1694803130@sss.pgh.pa.us

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/479b99125dcce0d625846efd333ccc5aa48411bb

Modified Files
--------------
src/backend/utils/adt/ruleutils.c | 3 ++-
src/backend/utils/fmgr/funcapi.c | 34 ++++++++++++++++++++++++++++++++++
2 files changed, 36 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2023-09-18 05:30:35 pgsql: Update Unicode data to Unicode 15.1.0
Previous Message Tom Lane 2023-09-15 21:02:06 pgsql: Fix get_expr_result_type() to find field names for RECORD Consts