diff options
author | Dean Rasheed <dean.a.rasheed@gmail.com> | 2023-02-22 09:41:28 +0000 |
---|---|---|
committer | Dean Rasheed <dean.a.rasheed@gmail.com> | 2023-02-22 09:41:28 +0000 |
commit | 018af1cc1c8075346e6a5fe3bb77b7e31399be70 (patch) | |
tree | 1585eadced83b2d84d4a8f3cf7dc0b7ab2c2ce70 /src/backend/executor/nodeModifyTable.c | |
parent | fa5dd460c1805a00a6fcc909b7e1f826663bcce3 (diff) | |
download | postgresql-018af1cc1c8075346e6a5fe3bb77b7e31399be70.tar.gz postgresql-018af1cc1c8075346e6a5fe3bb77b7e31399be70.zip |
Fix MERGE command tag for cross-partition updates.
This ensures that the row count in the command tag for a MERGE is
correctly computed. Previously, if MERGE updated a partitioned table,
the row count would be incorrect if any row was moved to a different
partition, since such updates were counted twice.
Back-patch to v15, where MERGE was introduced.
Discussion: https://postgr.es/m/CAEZATCWRMG7XX2QEsVL1LswmNo2d_YG8tKTLkpD3=Lp644S7rg@mail.gmail.com
Diffstat (limited to 'src/backend/executor/nodeModifyTable.c')
-rw-r--r-- | src/backend/executor/nodeModifyTable.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 508dcc4cbea..ad0aa8dd9d7 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -2889,7 +2889,7 @@ lmerge_matched:; } ExecUpdatePrepareSlot(resultRelInfo, newslot, context->estate); result = ExecUpdateAct(context, resultRelInfo, tupleid, NULL, - newslot, mtstate->canSetTag, &updateCxt); + newslot, false, &updateCxt); if (result == TM_Ok && updateCxt.updated) { ExecUpdateEpilogue(context, &updateCxt, resultRelInfo, |