diff options
Diffstat (limited to 'src/backend/commands/trigger.c')
-rw-r--r-- | src/backend/commands/trigger.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index da0850bfd6d..bbfbc06db90 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -5474,7 +5474,9 @@ AfterTriggerSaveEvent(EState *estate, ResultRelInfo *relinfo, new_shared.ats_tgoid = trigger->tgoid; new_shared.ats_relid = RelationGetRelid(rel); new_shared.ats_firing_id = 0; - new_shared.ats_transition_capture = transition_capture; + /* deferrable triggers cannot access transition data */ + new_shared.ats_transition_capture = + trigger->tgdeferrable ? NULL : transition_capture; afterTriggerAddEvent(&afterTriggers.query_stack[afterTriggers.query_depth], &new_event, &new_shared); |