Hi, I found this bug? In beta 3.  I am not a Linux guru so installing any
betas in Debian is very painful for me.  Perhaps you could check to see if
it is still there in beta 4??

 

Last time I reported a bug
http://archives.postgresql.org/pgsql-committers/2007-11/msg00584.php

I did not get any direct feedback and only found it by fluke.  My pgsql-bugs
subscription is set 

to "nomail".  Please reply directly to [EMAIL PROTECTED]

 

Here are the steps that demonstrate the problem:

 

drop  type t_tempbug_c cascade;

create type t_tempbug_c as (

    CONF_KEY              int4

   )

;

create or replace function tempbug_c()

       returns SETOF t_tempbug_c

       as $$

declare

begin

  drop table if exists temp_table cascade;

  create temporary table temp_table(a int);

  insert into temp_call_table values (7) ;

  return query

    select 0 from temp_call_table limit 1 ; 

end; 

$$ language plpgsql;

 

create or replace function tempbug()

       returns SETOF t_tempbug_c

       as $$

declare

  val int;

begin

  create temporary table temp_call_table (a int);

  perform tempbug_c() ;

  return query

    select * from temp_call_table ;

  drop table temp_call_table ;

end;

$$ language plpgsql;

 

protocal2=> select * from tempbug() ;

ERROR:  set-valued function called in context that cannot accept a set

CONTEXT:  PL/pgSQL function "tempbug_c" line 6 at RETURN QUERY SQL statement
"SELECT  tempbug_c()"

PL/pgSQL function "tempbug" line 5 at PERFORM

 

protocal2=> select version() ;

                                                     version

----------------------------------------------------------------------------
-------------------------------------

PostgreSQL 8.3beta3 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.2.3

20071014 (prerelease) (Debian 4.2.2-3)

(1 row)

 

 

 

Reply via email to