From: | Achilleus Mantzios <achill(at)matrix(dot)gatewaynet(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Alvaro Herrera <alvherre(at)commandprompt(dot)com>, <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: After Trigger assignment to NEW |
Date: | 2006-02-24 19:51:24 |
Message-ID: | Pine.LNX.4.44.0602242150390.20246-100000@matrix.gatewaynet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
O Tom Lane έγραψε στις Feb 24, 2006 :
> Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> > Tom Lane wrote:
> >> Achilleus Mantzios <achill(at)matrix(dot)gatewaynet(dot)com> writes:
> >>> Is there a reason that the NEW values should remain unchanged in AFTER
> >>> row triggers?
> >>
> >> By definition, an AFTER trigger is too late to change what was stored.
> >> Use a BEFORE trigger.
>
> > But a BEFORE trigger would alter the stored tuple, which is not what
> > Achilleus wants AFAIU.
>
> Oh, I misunderstood what he wanted ... and now that I do understand,
> I think it's a really terrible idea :-(. A large part of the point
> of using an AFTER trigger is to be certain you know exactly what got
> stored. (BEFORE triggers can never know this with certainty because
> there might be another BEFORE trigger that runs after them and edits the
> tuple some more.) If one AFTER trigger could falsify the data seen by
> the next, then that guarantee crumbles. For instance, a minor
> programming error in a user-written trigger could break foreign-key
> checking. No thanks.
Alvaro, Tom,
thanx a lot,
i'll have to incorporate that into dbmirror.
>
> > I think the desired effect can be had by having DBMirror check the
> > source relation of the inserted tuple (There is a hidden attributa
> > called tableoid IIRC that can be used for that, I think).
>
> I agree --- the correct solution is to change the DBMirror triggers to
> incorporate the desired filtering logic.
>
> regards, tom lane
>
--
-Achilleus
From | Date | Subject | |
---|---|---|---|
Next Message | Judith | 2006-02-24 22:17:14 | Can't connect to the db |
Previous Message | Achilleus Mantzios | 2006-02-24 19:47:51 | Re: After Trigger assignment to NEW |