Hello this limit will be removed at 8.4
in older version you have to use table notation like select * from srf() regards Pavel Stehule 2009/2/10 Daniel Migowski <dmigow...@ikoffice.de>: > Hello dear PostgreSQL developers, > > I noticed the following strange behaviour with set-returning functions. If > sets are allowed seems to depend on the language the function is written in, > what makes conpletely no sense to me. See the following functions x() and > y(). x() is written in 'sql' and works, y() is written is plpgsql and fails. > Any reasons for this I do not realize? > > With best regards, > Daniel Migowski > > ---------------------------- > > CREATE FUNCTION x() RETURNS SETOF int4 AS > $$ > SELECT 1 > UNION > SELECT 2 > $$ > LANGUAGE 'sql'; > SELECT x(); -- fine with two result rows. > > CREATE FUNCTION y() RETURNS SETOF int4 AS > $$ > BEGIN > RETURN NEXT 1; > RETURN NEXT 2; > END > $$ > LANGUAGE 'plpgsql'; > SELECT y(); -- fails with: > FEHLER: Funktion mit Mengenergebnis in einem Zusammenhang aufgerufen, der > keine Mengenergebnisse verarbeiten kann > SQL Status:0A000 > Kontext:PL/pgSQL function "y" line 2 at RETURN NEXT > > > -- > Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-bugs > -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs