Re: will I need nested transactions ?

From: Ben <bench(at)silentmedia(dot)com>
To: Andreas <maps(dot)on(at)gmx(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: will I need nested transactions ?
Date: 2004-05-17 16:55:02
Message-ID: Pine.LNX.4.44.0405170952370.12573-100000@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

If you want the model where if any updates fail, all should be rolled
back, then you don't need nested transactions, just multiple aborts:

begin;
update d; if error abort;
update c; if error abort;
...
commit;

On Mon, 17 May 2004, Andreas wrote:

> Hi,
>
> will I need "nested transactions" which - as I read - aren't
> implemented, yet ?
>
> I have some objects that rely on each other.
> Each has a status like proposal, working, canceled.
>
> table-A <--- table-B <--- table-C <--- table-D
>
> Those are (1, OO) relationships,
> A status change above gets cascaded down but not upwards.
> If I try to cancel a table-A-record every "lower" record in B, C, D
> should be canceled, too, when the transaction is committed.
> Since it is possible, that I cancel e.g. a table B object only its
> children should get updated but not table-A.
>
> I thought somthing along this to cancel a type B object:
>
> BEGIN
> BEGIN
> BEGIN
> UPDATE table-D
> END
> if no error UPDATE table-C
> END
> if no error UPDATE table-B
> END
>
> Does this make sense and will it provide the necesary protection ?
>
> BTW the client is Access 2000 via ODBC talking to an PostgreSQL 7.4.2 on
> Linux.
>
>
> Regards
> Andreas
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Richard Huxton 2004-05-17 17:04:54 Re: filesystem option tuning
Previous Message Richard Huxton 2004-05-17 16:26:46 Re: will I need nested transactions ?