From 6ea2fc668304aecbe26cb9180c70f953021e26ea Mon Sep 17 00:00:00 2001 From: shihao zhong Date: Mon, 9 Nov 2026 17:42:59 -0500 Subject: [PATCH 3/3] Pass the original tuple to AFTER ROW triggers in ExecInsert() Since 398eb35f001, ExecInsert() passes NULL instead of the original tuple. Pass it again. --- src/backend/executor/nodeModifyTable.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 445aef47ca2..716d6483f8c 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -1292,7 +1292,7 @@ ExecInsert(ModifyTableContext *context, NULL, NULL, slot, - NULL, + tcs_original_insert_tuple, NULL, mtstate->mt_transition_capture, false); @@ -1305,7 +1305,7 @@ ExecInsert(ModifyTableContext *context, } /* AFTER ROW INSERT Triggers */ - ExecARInsertTriggers(estate, resultRelInfo, slot, NULL, + ExecARInsertTriggers(estate, resultRelInfo, slot, tcs_original_insert_tuple, recheckIndexes, ar_insert_trig_tcs); list_free(recheckIndexes); -- 2.37.1 (Apple Git-137.1)