Thread: pg_get_functiondef(), trailing spaces and + sign

pg_get_functiondef(), trailing spaces and + sign

From
Ron
Date:
Is there any direct way in Postgresql to get rid of the frankly anti-useful 
junk at the end of each line (which also infects pg_stat_activity.query), or 
must I resort to sed post-processing?


test=# select pg_get_functiondef(oid)
test-# from pg_proc
test-# where proname = 'foo';
                  pg_get_functiondef
----------------------------------------------------
  CREATE OR REPLACE FUNCTION public.foo(bar integer)+
   RETURNS double precision                         +
   LANGUAGE plpgsql                                 +
  AS $function$                                     +
  begin                                             +
      return bar * 1.0;                             +
  end;                                              +
  $function$                                        +

(1 row)


-- 
Born in Arizona, moved to Babylonia.



Re: pg_get_functiondef(), trailing spaces and + sign

From
Adrian Klaver
Date:
On 2/27/23 11:34 AM, Ron wrote:
> Is there any direct way in Postgresql to get rid of the frankly 
> anti-useful junk at the end of each line (which also infects 
> pg_stat_activity.query), or must I resort to sed post-processing?

\pset format unaligned
> 
> 
> test=# select pg_get_functiondef(oid)
> test-# from pg_proc
> test-# where proname = 'foo';
>                   pg_get_functiondef
> ----------------------------------------------------
>   CREATE OR REPLACE FUNCTION public.foo(bar integer)+
>    RETURNS double precision                         +
>    LANGUAGE plpgsql                                 +
>   AS $function$                                     +
>   begin                                             +
>       return bar * 1.0;                             +
>   end;                                              +
>   $function$                                        +
> 
> (1 row)
> 
> 


-- 
Adrian Klaver
adrian.klaver@aklaver.com



Re: pg_get_functiondef(), trailing spaces and + sign

From
Adrian Klaver
Date:
On 2/27/23 11:34 AM, Ron wrote:
> Is there any direct way in Postgresql to get rid of the frankly 
> anti-useful junk at the end of each line (which also infects 
> pg_stat_activity.query), or must I resort to sed post-processing?
> 
> 

Or

\ef foo

> test=# select pg_get_functiondef(oid)
> test-# from pg_proc
> test-# where proname = 'foo';
>                   pg_get_functiondef
> ----------------------------------------------------
>   CREATE OR REPLACE FUNCTION public.foo(bar integer)+
>    RETURNS double precision                         +
>    LANGUAGE plpgsql                                 +
>   AS $function$                                     +
>   begin                                             +
>       return bar * 1.0;                             +
>   end;                                              +
>   $function$                                        +
> 
> (1 row)
> 
> 


-- 
Adrian Klaver
adrian.klaver@aklaver.com



Re: pg_get_functiondef(), trailing spaces and + sign

From
Kirk Wolak
Date:
On Mon, Feb 27, 2023 at 2:40 PM Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 2/27/23 11:34 AM, Ron wrote:
> Is there any direct way in Postgresql to get rid of the frankly
> anti-useful junk at the end of each line (which also infects
> pg_stat_activity.query), or must I resort to sed post-processing?
>
>

Or

\ef foo

that will edit the function, I think he meant

\sf foo

which will show you the content of the function!

 
> test=# select pg_get_functiondef(oid)
> test-# from pg_proc
> test-# where proname = 'foo';
>                   pg_get_functiondef
> ----------------------------------------------------
>   CREATE OR REPLACE FUNCTION public.foo(bar integer)+
>    RETURNS double precision                         +
>    LANGUAGE plpgsql                                 +
>   AS $function$                                     +
>   begin                                             +
>       return bar * 1.0;                             +
>   end;                                              +
>   $function$                                        +
>
> (1 row)
>
>


--
Adrian Klaver
adrian.klaver@aklaver.com