Fix MERGE command tag for actions blocked by BEFORE ROW triggers.
authorDean Rasheed <dean.a.rasheed@gmail.com>
Mon, 13 Mar 2023 11:09:39 +0000 (11:09 +0000)
committerDean Rasheed <dean.a.rasheed@gmail.com>
Mon, 13 Mar 2023 11:12:20 +0000 (11:12 +0000)
commit7b14e20b12cc8358cad9bdd05dd6b7de7f73c431
treeac702d6b25846a6bc81bac4a10d190db2218e31d
parent9321c79c86e6a6a4eac22e2235a21a8b68388723
Fix MERGE command tag for actions blocked by BEFORE ROW triggers.

This ensures that the row count in the command tag for a MERGE is
correctly computed in the case where UPDATEs or DELETEs are skipped
due to a BEFORE ROW trigger returning NULL (the INSERT case was
already handled correctly by ExecMergeNotMatched() calling
ExecInsert()).

Back-patch to v15, where MERGE was introduced.

Discussion: https://postgr.es/m/CAEZATCU8XEmR0JWKDtyb7iZ%3DqCffxS9uyJt0iOZ4TV4RT%2Bow1w%40mail.gmail.com
src/backend/executor/nodeModifyTable.c
src/test/regress/expected/merge.out
src/test/regress/sql/merge.sql