On Tue, 6 Jul 2004, Alvaro Herrera wrote:
> We can later implement savepoints, which will have "SAVEPOINT foo" and
> "ROLLBACK TO foo" as interface. (Note that a subtransaction is slightly
> different from a savepoint, so we can't use ROLLBACK TO <foo> in
> subtransactions because that has a different meaning in savepoints).
What is the semantic difference?
In my eye the subtransactions and the savepoints are basically the
same thing except the label that is used. If that is the only difference?
why are we implementing our own extension for subtransactions instead of
implementing this standard feature.
Of course the label stuff is a little more complicated, but all the really
hard parts should be the same as what have already been done. The most
naive implementation of the labels is to have a mapping from a label to
the number of subcommit (for RELEASE SAVEPOINT) or subrolllbacks (for
ROLLBACK TO SAVEPOINT) to execute.
--
/Dennis Björklund