Re: Need "InBetween" (not just Before and After) Trigger - Mailing list pgsql-general

From Stephan Szabo
Subject Re: Need "InBetween" (not just Before and After) Trigger
Date
Msg-id Pine.BSF.4.21.0101151322400.17042-100000@megazone23.bigpanda.com
Whole thread Raw
In response to Re: Need "InBetween" (not just Before and After) Trigger  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Need "InBetween" (not just Before and After) Trigger  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Mon, 15 Jan 2001, Tom Lane wrote:

> Matt Doucleff <matt@digitalfountain.com> writes:
> > For example, say I want to create a file when a row is inserted, and
> > modify that file when the row is modified.  If a transaction fails, I
> > need to undo my changes to the filesystem.
>
> Unless you want to implement your own undo log, I'd suggest rethinking
> this.  What you really want is a trigger fired at commit time, ie a
> deferred trigger, so that you don't have to worry about rolling back
> your outside actions.  I believe we have that facility for foreign key
> triggers, not sure if it's available for general use yet ...

Sort of, but it still isn't sufficient.  There's no way to say for certain
that a later deferred trigger won't send an exception that will roll back
the transaction.  What he'd really need would be something that occurs
after the deferred trigger queue and after the transaction has committed
that cannot cause the transaction to rollback (I'm not sure what an
error condition raised in such a state would do...)


pgsql-general by date:

Previous
From: Alex Pilosov
Date:
Subject: Re: SQL queries from within PL/PERL triggers?
Next
From: "Anthony E . Greene"
Date:
Subject: Re: Date help