On Fri, 2006-08-04 at 18:01, Gregory Stark wrote: > Tom Lane <tgl@xxxxxxxxxxxxx> writes: > > > "Thomas F. O'Connell" <tfo@xxxxxxxxxxxx> writes: > > > I sort of expected the release of the savepoint to be tantamount to a > > > commit of the subtransaction, but it doesn't appear to have been. > > > > But you still haven't committed the outer transaction: rolling it back > > must undo the effects of the subtransaction, no? So a "release" merely > > destroys the separate identity of the subtransaction and assigns all its > > effects (including locks) to the parent transaction. > > There seems to be a recurring confusion between subtransactions and autonomous > transactions. Perhaps there should be a caveat in the SAVEPOINT documentation > explaining that they aren't autonomous transactions and the work inside the > savepoint is still subject to the regular transaction semantics for the > outermost transaction and isn't actually committed until the outer transaction > commits. Note that one CAN get autonomous transactions using dblink. I've used it once or twice in the past to do that.