pgsql: Support PlaceHolderVars in MERGE actions.

Started by Tom Laneover 3 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Support PlaceHolderVars in MERGE actions.

preprocess_targetlist thought PHVs couldn't appear here.
It was mistaken, as per report from Önder Kalacı.

Surveying other pull_var_clause calls, I noted no similar errors,
but I did notice that qual_is_pushdown_safe's assertion about
!contain_window_function was pointless, because the following
pull_var_clause call would complain about them anyway. In HEAD
only, remove the redundant Assert and improve the commentary.

Discussion: /messages/by-id/CACawEhUuum-gC_2S3sXLTcsk7bUSPSHOD+g1ZpfKaDK-KKPPWA@mail.gmail.com

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/3908d6ae115801cc61486b286ab71d91c2cdbb99

Modified Files
--------------
src/backend/optimizer/prep/preptlist.c | 12 +++++-------
src/test/regress/expected/merge.out | 21 +++++++++++++++++++++
src/test/regress/sql/merge.sql | 10 ++++++++++
3 files changed, 36 insertions(+), 7 deletions(-)