Re: Nested transactions - Mailing list pgsql-patches

From Christopher Kings-Lynne
Subject Re: Nested transactions
Date
Msg-id 40D0FB7C.8030309@familyhealth.com.au
Whole thread Raw
In response to Re: Nested transactions  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Nested transactions  (Alvaro Herrera <alvherre@dcc.uchile.cl>)
Re: Nested transactions  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-patches
> And consider this case:
>
>     BEGIN;
>     ...
>     SAVEPOINT x;
>     SELECT func_call();
>     SELECT func_call();
>     COMMIT;
>
> Now if func_call has a savepoint, it is really nested because it can't
> know whether the savepoint X will be used to roll back, so its status is
> dependent on the status of X.  Now, if we used savepoints in func_call,
> what happens in the second function call when we define a savepoint with
> the same name?  I assume we overwrite the original, but using nested
> transaction syntax seems much clearer.

It also seems in this example that func_call() probably shouldn't have
permission to rollback to savepoint x?  Otherwise it would get...weird.

Chris


pgsql-patches by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Nested transactions
Next
From: Alvaro Herrera
Date:
Subject: Re: Nested transactions