pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Gerardo Herzig <gherzig@fmed.uba.ar>
To: Filip RembiaƂkowski <plk.zuber@gmail.com>
Cc: pgsql-sql@postgresql.org
Subject: Re: transaction and triggers
Date: Fri, 18 Jan 2008 12:16:04 -0300
Message-ID: <4790C2B4.1070103@fmed.uba.ar> (raw)
In-Reply-To: <92869e660801180642i1fdd417r3d3b9399c5e5ab98@mail.gmail.com>
References: <4790B50A.5050101@fmed.uba.ar>
	<92869e660801180642i1fdd417r3d3b9399c5e5ab98@mail.gmail.com>

Filip RembiaƂkowski wrote:

>2008/1/18, Gerardo Herzig <gherzig@fmed.uba.ar>:
>  
>
>>Hi all. Im puzzled again. Just thinking:
>>
>>As im having fun trying to make my own replication system, im stuck in
>>this situation:
>>Consider a simple table with a unique index on the `id' field, and a
>>function who will fail, such as
>>
>>insert into test (id) values (1);
>>insert into test (id) values (1);
>>
>>This will fail and the transaction will be rollback'ed, but as the basis
>>of my replication system is on row level triggers, the first time the
>>insert is called, the trigger will be executed, and i will like to be
>>able to stack the triggers in some way, in order to be fired only after
>>a succesfull execution of the hole function.
>>    
>>
>
>If the transaction is rolled back, changes made by your trigger to
>local database will be also canceled.
>
>Unless you make any manipulation on remote databases, you have no problem.
>
>Any changes made to remote databases, for example if you call some
>dblink functions, are not transactional, and will not be rolled back.
>
>In this case you have to rethink your design, as there is no "ON
>COMMIT" trigger (yet?)
>  
>
Right.  But  today, that trigger do some other work, wich includes 
writing some files to disk, so there is my problem. Crap, i guess i will 
have to review the main logic.

Thanks!
Gerardo



view thread (7+ messages)  latest in thread

Message-ID: <4790C2B4.1070103@fmed.uba.ar>
Permalink:  ../4790C2B4.1070103@fmed.uba.ar/
Also on:    postgresql.org/message-id/4790C2B4.1070103@fmed.uba.ar

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: gherzig@fmed.uba.ar, plk.zuber@gmail.com
  Subject: Re: transaction and triggers
  In-Reply-To: <4790C2B4.1070103@fmed.uba.ar>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox