pgsql: Fix missed step in removal of useless RESULT RTEs in the planner - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix missed step in removal of useless RESULT RTEs in the planner
Date
Msg-id E1kleuv-0002Af-Ja@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix missed step in removal of useless RESULT RTEs in the planner.

Commit 4be058fe9 forgot that the append_rel_list would already be
populated at the time we remove useless result RTEs, and it might contain
PlaceHolderVars that need to be adjusted like the ones in the main parse
tree.  This could lead to "no relation entry for relid N" failures later
on, when the planner tries to do something with an unadjusted PHV.

Per report from Tom Ellis.  Back-patch to v12 where the bug came in.

Discussion: https://postgr.es/m/20201205173056.GF30712@cloudinit-builder

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/77a94c30da6152b9cbe5383d29e2aa9661260fbe

Modified Files
--------------
src/backend/optimizer/prep/prepjointree.c |  1 +
src/test/regress/expected/join.out        | 36 +++++++++++++++++++++++++++++++
src/test/regress/sql/join.sql             | 22 +++++++++++++++++++
3 files changed, 59 insertions(+)


pgsql-committers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: pgsql: Fix race conditions in newly-added test.
Next
From: Michael Paquier
Date:
Subject: pgsql: Fix fd leak in pg_verifybackup