Re: Nested Transactions, Abort All - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: Nested Transactions, Abort All
Date
Msg-id 20040709154751.GC24668@dcc.uchile.cl
Whole thread Raw
In response to Re: Nested Transactions, Abort All  (Thomas Swan <tswan@idigx.com>)
Responses Re: Nested Transactions, Abort All  (Simon Riggs <simon@2ndquadrant.com>)
Re: Nested Transactions, Abort All  (Thomas Swan <tswan@idigx.com>)
List pgsql-hackers
On Fri, Jul 09, 2004 at 10:38:15AM -0500, Thomas Swan wrote:

> visibility issue and how far do you unwind the depth of subtransactions 
> or transactions?
> 
> BEGIN
>  UPDATE A
>  SAVEPOINT X
>  BEGIN
>    BEGIN
>      UPDATE B
>      BEGIN
>        UPDATE C
>        ROLLBACK TO SAVEPOINT X

What happens here is that the user will go nuts.  We will have a
prominent entry in the docs: "using both nested transactions and
savepoints inside a transaction can cause confusion.  We recommend you
stick to one or the other."  Or something like that.

(What would really happen: when ROLLBACK TO SAVEPOINT X is executed,
nested transactions created after the SAVEPOINT will be closed.)

So this is another reason why we should use COMMIT to close a nested
transaction: it may refer to a transaction that is already closed
because the user got confused.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"I can't go to a restaurant and order food because I keep looking at the
fonts on the menu.  Five minutes later I realize that it's also talking
about food" (Donald Knuth)



pgsql-hackers by date:

Previous
From: Stephen Frost
Date:
Subject: Re: User Quota Implementation
Next
From: "Jonah H. Harris"
Date:
Subject: Re: User Quota Implementation