Re: BUG #1201: void functions called through jdbc driver - Mailing list pgsql-bugs

From Kris Jurka
Subject Re: BUG #1201: void functions called through jdbc driver
Date
Msg-id Pine.BSO.4.56.0407270130560.19067@leary.csoft.net
Whole thread Raw
In response to BUG #1201: void functions called through jdbc driver return error  ("PostgreSQL Bugs List" <pgsql-bugs@postgresql.org>)
List pgsql-bugs
On Tue, 27 Jul 2004, PostgreSQL Bugs List wrote:

> Bug reference:      1201
> Logged by:          Jonathan Scott
> Email address:      jwscott@vanten.com
> PostgreSQL version: 7.4
> Description:        void functions called through jdbc driver return error
>
> At work here, we are considering upgrading from 7.3 to 7.4, but we've hit a
> bit of a snag. We have functions in our schema that have return void. When
> called through the 7.4's JDBC driver, we get the following error:
>
> ERROR: function "fulfill_cctrans_item" in FROM has unsupported return type
>

To elaborate more on this problem after it gets past the jdbc driver, what
happens is that the function call execution is translated into a SQL
statement of the form "SELECT * FROM voidfunc();"  This produces a server
error message:

CREATE OR REPLACE FUNCTION voidfunc() RETURNS void AS
    'begin return; end;'
    LANGUAGE plpgsql;

SELECT * FROM voidfunc();

ERROR:  function "voidfunc" in FROM has unsupported return type

It is unclear why this is disallowed.  A plain "SELECT voidfunc();" works.

Kris Jurka

pgsql-bugs by date:

Previous
From: "PostgreSQL Bugs List"
Date:
Subject: BUG #1201: void functions called through jdbc driver return error
Next
From: Kris Jurka
Date:
Subject: Re: casting strings to multidimensional arrays yields strange