BUG #6043: Compilation PLpgsql Succesful but execution bad - Mailing list pgsql-bugs

From Emanuel
Subject BUG #6043: Compilation PLpgsql Succesful but execution bad
Date
Msg-id 201105271405.p4RE5Tid050879@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #6043: Compilation PLpgsql Succesful but execution bad
List pgsql-bugs
The following bug has been logged online:

Bug reference:      6043
Logged by:          Emanuel
Email address:      postgres.arg@gmail.com
PostgreSQL version: 9.1 beta
Operating system:   Ubuntu 10.04 2.6.31
Description:        Compilation PLpgsql Succesful but execution bad
Details:

postgres=# CREATE OR REPLACE FUNCTION p_() RETURNS TABLE (i int) AS $$
DECLARE
BEGIN
  SELECT * FROM p;  --<<<-- here must ne RETURN QUERY ..
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
postgres=# select p_();
ERROR:  query has no destination for result data
HINT:  If you want to discard the results of a SELECT, use PERFORM instead.
CONTEXT:  PL/pgSQL function "p_" line 4 at SQL statement

I don't know if it's really a bug or a feature request. But seems that the
function compiles well without checking the existence of a RETURN QUERY. I
think the best in this cases is raise an error during compilation.

Thougths?

pgsql-bugs by date:

Previous
From: Simon Riggs
Date:
Subject: Re: BUG #6042: unlogged table with Streaming Replication
Next
From: Heikki Linnakangas
Date:
Subject: Re: BUG #6043: Compilation PLpgsql Succesful but execution bad