Re: DETACH PARTITION and FOR EACH ROW triggers on partitioned tables

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: DETACH PARTITION and FOR EACH ROW triggers on partitioned tables
Дата
Msg-id 20200408180110.GA17093@alvherre.pgsql
обсуждение исходный текст
Ответ на Re: DETACH PARTITION and FOR EACH ROW triggers on partitioned tables  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: DETACH PARTITION and FOR EACH ROW triggers on partitioned tables
Список pgsql-hackers
On 2020-Apr-08, Tom Lane wrote:

> Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> > Hmm.  Let's agree to what behavior we want, and then we implement that.
> > It seems to me there are two choices:
> 
> > 1. on detach, keep the trigger but make it independent of the trigger on
> > parent.  (This requires that the trigger is made dependent on the
> > trigger on parent, if the table is attached as partition again;
> > otherwise you'd end up with multiple copies of the trigger if you
> > detach/attach multiple times).
> 
> > 2. on detach, remove the trigger from the partition.
> 
> > I think (2) is easier to implement, but (1) is the more convenient
> > behavior.
> 
> I think that #1 would soon lead to needing all the same infrastructure
> as we have for inherited columns and constraints, ie triggers would need
> equivalents of attislocal and attinhcount.  I don't really want to go
> there, so I'd vote for #2.

Hmm.  Those things are used for the legacy inheritance case supporting
multiple inheritance, where we need to figure out which parent the table
is being detached (disinherited) from.  But for partitioning we know
which parent it is, since there can only be one.  So I don't think that
argument applies.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: backup manifests and contemporaneous buildfarm failures
Следующее
От: Stephen Frost
Дата:
Сообщение: Re: where should I stick that backup?