From: Tom Lane <tgl@sss.pgh.pa.us>
To: Merlin Moncure <merlin.moncure@rcsonline.com>
Cc: pgsql-hackers@postgresql.org, "Gavin Sherry" <swm@linuxworld.com.au>
Cc: Neil Conway <neilc@samurai.com>
Subject: Re: Where are we on stored procedures?
Date: Fri, 25 Feb 2005 10:23:16 -0500
Message-ID: <5155.1109344996@sss.pgh.pa.us> (raw)
In-Reply-To: <6EE64EF3AB31D5448D0007DD34EEB3412A7632@Herge.rcsinc.local>
References: <6EE64EF3AB31D5448D0007DD34EEB3412A7632@Herge.rcsinc.local>
"Merlin Moncure" <merlin.moncure@rcsonline.com> 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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: tgl@sss.pgh.pa.us, merlin.moncure@rcsonline.com, swm@linuxworld.com.au, neilc@samurai.com
Subject: Re: Where are we on stored procedures?
In-Reply-To: <5155.1109344996@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox