Re: Problem with trigger makes Detail record be invalid

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
Cc: PegoraroF10 <marcos(at)f10(dot)com(dot)br>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Problem with trigger makes Detail record be invalid
Date: 2018-04-20 14:21:05
Message-ID: CAKFQuwbe_0dZ-6xfHRT7hMvLmKNvoh7p+X5wVCdQjhE3mkUOhQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 04/19/2018 06:49 PM, PegoraroF10 wrote:
On Fri, Apr 20, 2018 at 6:55 AM, Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
wrote:

> I know I did that trigger incorrectly but referential integrity is
>> obligatory.
>>
>
> I would agree if the FK relationship was entirely driven by the system
> trigger e.g:
>
> alter table Detail add constraint FKMasterDetail foreign key (Master_ID)
> references Master(ID) on update cascade on delete cascade;
>
> As soon as you added your UPDATE/DELETE trigger you took on responsibility
> for how the data was passed around.

Such responsibility is an artifact of our specific implementation and not
an inherent property of writing triggers in the presence of FK constraints.

We've left a foot-gun laying around and should not be surprised when less
experienced users pick it up and shoot themselves in the foot.

IOW, I do agree with the OP - its just an unfortunate reality that this
isn't how things work today. Whether one can accept and work within this
reality is a personal decision.

This does reinforce that testing the restoration of ones backups is
important.

David J.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Vick Khera 2018-04-20 14:23:14 Re: A couple of pg_dump questions
Previous Message Adrian Klaver 2018-04-20 13:55:21 Re: Problem with trigger makes Detail record be invalid