Re: [SQL] function source code not returning from inside a pgsql function. - Mailing list pgsql-sql

From David G. Johnston
Subject Re: [SQL] function source code not returning from inside a pgsql function.
Date
Msg-id CAKFQuwaTXC1jbhhP31uwN3bdU=1DVuUo=Ja_Z-8D4qFG2HwobQ@mail.gmail.com
Whole thread Raw
In response to [SQL] function source code not returning from inside a pgsql function.  (Herwig Goemans <herwig.goemans@gmail.com>)
List pgsql-sql
On Thu, Feb 9, 2017 at 9:39 AM, Herwig Goemans <herwig.goemans@gmail.com> wrote:
Hello,

I have a function in a punlic schema and in psql when I do:
 pg_get_functiondef(oid) from pg_proc where proname = 'xtm_doc_ref';
I get a result.
When I do the same in a function:
CREATE OR REPLACE FUNCTION tm.alter_tbl(
p_id integer,
p_type character varying,
p_lang character varying)
    RETURNS void

​[...]
 And I call the function with :
TM=# select alter_tbl('xtm_2_fr_nl_doc');
NOTICE:  input parameters result in xtm_2_fr_nl_doc
NOTICE:   probleem
 alter_tbl
-----------

(1 row)
 The source code is not fetched.
the function the public schema is a template for another function that I want to create in the TM schema.
I suppose this has something to do with pgsql nit having acces to public schema ? 
Is  there something that can be done about it ?

You've defined the function as RETURNING void -- which says you don't intend to return anything to the caller.

You need to redefine the function and then explicitly return whatever content it is you wish to return - per the documentation at:


pgsql-sql by date:

Previous
From: Herwig Goemans
Date:
Subject: [SQL] function source code not returning from inside a pgsql function.
Next
From: Tom Lane
Date:
Subject: Re: [SQL] function source code not returning from inside a pgsql function.