Fix oversight in FindTriggerIncompatibleWithInheritance.
authorEtsuro Fujita <efujita@postgresql.org>
Fri, 8 Aug 2025 08:35:00 +0000 (17:35 +0900)
committerEtsuro Fujita <efujita@postgresql.org>
Fri, 8 Aug 2025 08:35:00 +0000 (17:35 +0900)
commit9e63f83a7e7f8211581bfe9e9d05b72695261f4f
tree472b2d3954b6a2ea6993e1b8a8f6687857fb2b5f
parent85ccd7e30a6dd378e025a918916f7b1d72004001
Fix oversight in FindTriggerIncompatibleWithInheritance.

This function is called from ATExecAttachPartition/ATExecAddInherit,
which prevent tables with row-level triggers with transition tables from
becoming partitions or inheritance children, to check if there is such a
trigger on the given table, but failed to check if a found trigger is
row-level, causing the caller functions to needlessly prevent a table
with only a statement-level trigger with transition tables from becoming
a partition or inheritance child.  Repair.

Oversight in commit 501ed02cf.

Author: Etsuro Fujita <etsuro.fujita@gmail.com>
Discussion: https://postgr.es/m/CAPmGK167mXzwzzmJ_0YZ3EZrbwiCxtM1vogH_8drqsE6PtxRYw%40mail.gmail.com
Backpatch-through: 13
src/backend/commands/trigger.c
src/test/regress/expected/triggers.out
src/test/regress/sql/triggers.sql