error in simple sql function breaks connection - Mailing list pgsql-bugs

From Fabien COELHO
Subject error in simple sql function breaks connection
Date
Msg-id Pine.LNX.4.61.0409061806480.2431@sablons.cri.ensmp.fr
Whole thread Raw
Responses Re: error in simple sql function breaks connection  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
Dear bug-hunters,

With a nearly current cvs head version I have the following:

psql> SELECT VERSION();
...
PostgreSQL 8.0.0beta2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC)
3.3.4 (Debian 1:3.3.4-6sarge1)

psql> CREATE TABLE foo(id SERIAL PRIMARY KEY, data TEXT);

psql> CREATE FUNCTION add_data(TEXT) RETURNS boolean LANGUAGE SQL AS
       'BEGIN; INSERT INTO foo(data) VALUES($1); COMMIT; SELECT TRUE;';

psql> SELECT add_data('hello');
FATAL:  EndTransactionBlock: unexpected state BEGIN
CONTEXT:  SQL function "add_data" statement 3
server closed the connection unexpectedly


in log:
Sep  6 18:09:23 sablons postgres[21271]: [4-1] FATAL:  EndTransactionBlock: unexpected state BEGIN
Sep  6 18:09:23 sablons postgres[21271]: [4-2] CONTEXT:  SQL function "add_data" statement 3
Sep  6 18:09:23 sablons postgres[21271]: [5-1] LOG:  disconnection: session time: 0:02:49.02 user=coelho
database=coelhohost=[local] port= 
Sep  6 18:09:23 sablons postgres[21271]: [5-2] CONTEXT:  SQL function "add_data" statement 3

Although the "BEGIN" might not be welcome (well, it was ok, possibly
ignored, with version 7.4), shuting down the connection does not seem to
be the appropriate action anyway.

Have a nice day,

--
Fabien.

pgsql-bugs by date:

Previous
From: Fabien COELHO
Date:
Subject: Re: BUG #1240: memory leak in JDBC driver build 215
Next
From: Tom Lane
Date:
Subject: Re: BUG #1239: Stale postmaster.pid prevents server start