Re: Stored Procedures

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Kent Anderson <kenta(at)ezyield(dot)com>
Cc: "Pgsql-General(at)Postgresql(dot) Org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Stored Procedures
Date: 2004-09-21 13:50:10
Message-ID: 20040921135009.GA3037@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Sep 21, 2004 at 07:41:31AM -0400, Kent Anderson wrote:
> We are currently switching to stored procedures for a lot of our database
> activity. The question has come up about the transactional nature of the
> stored procedures. I was wondering if stored procedures can have
> transactions in them or if you must start the transaction in your code and
> call the stored procedure from there to get the safety of a transaction?

There's only one transaction (whether it's an explicit transaction block
or an implicit one), and the query that invokes the stored procedure is
already running inside it. So the stored procedure always has the
safety of it, and it can't get out (except by raising an error and
aborting the whole thing). The transaction can only be committed
_after_ the stored procedure has finished succesfully.

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Jajaja! Solo hablaba en serio!

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Reynard Hilman 2004-09-21 14:51:15 abnormal data grow
Previous Message Kent Anderson 2004-09-21 11:41:31 Stored Procedures