"Merlin Moncure" <[EMAIL PROTECTED]> writes:
>> 1. Executing outside the database engine, and therefore being able to
>> start/commit transactions.  (This is *fundamentally* different from our
>> current concept of functions, and I think that any implementation that
>> tries to gloss over the difference will be doomed to failure.)

> Back in the early days of nested transactions, you could begin/commit
> while within a transaction...they could be pushed and popped off of a
> stack.

Those weren't actual transaction starts or commits though; they were
(in our current terminology) savepoints.  People want *real* commits
in stored procedures, not fakes.  For instance consider an SP that
wants to issue a series of VACUUM commands --- if there's a hidden
transaction block around the SP, this must fail.  Locking considerations
may force use of real commits and real rollbacks, too.  You can't
release a lock by committing a subtransaction.

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to