Re: SPI_ERROR_TRANSACTION [PostgreSQL 8.3] - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: SPI_ERROR_TRANSACTION [PostgreSQL 8.3]
Date
Msg-id 20090428151616.GM10358@alvh.no-ip.org
Whole thread Raw
In response to SPI_ERROR_TRANSACTION [PostgreSQL 8.3]  (Daroslav <daroslav@g.pl>)
List pgsql-general
Daroslav wrote:
>
> Hi
>
> As a newbie in PL/pgSQL I have faced an error SPI_ERROR_TRANSACTION which
> was raised always when I have tried to launch following function with
> uncommented keywords SAVEPOINT, SET TRANSACTION and COMMIT(when commented,
> function works fine):

Yes, you cannot use those constructs in plpgsql (or any other PL for
that matter; it's a limitation of the underlying layer).  You need to
use BEGIN/EXCEPTION/END blocks instead.

Also, keep in mind that if you RAISE EXCEPTION, the current transaction
is always rolled back, so the RETURN FALSE in your function would never be
reached.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

pgsql-general by date:

Previous
From: Raymond O'Donnell
Date:
Subject: Re: What may cause - Connection rejected: FATAL: Ident authentication failed for user?
Next
From: "Katz, Lawrence"
Date:
Subject: "ERROR: 42883: could not identify an ordering operator for type polygon"