Re: [GENERAL] potential extension of psql's \df+ ? - Mailing list pgsql-general

From Pavel Stehule
Subject Re: [GENERAL] potential extension of psql's \df+ ?
Date
Msg-id CAFj8pRAU25fkSLMhkq5q9awjC8Bc3oWPd9LesvwmPVVbWDhdsA@mail.gmail.com
Whole thread Raw
In response to [GENERAL] potential extension of psql's \df+ ?  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
Responses Re: [GENERAL] potential extension of psql's \df+ ?  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
List pgsql-general
Hi

2017-04-19 11:55 GMT+02:00 Karsten Hilbert <Karsten.Hilbert@gmx.net>:
Hi all !

Every so often, when working with functions, errors get
reported with context information similar to this:

        Context: PL/pgSQL function "test_function" line 5 at SQL statement

Often, the function source is kept under version control (or
in a file annotated, commented, etc in certain ways) such
that the file line number does not correspond to the function
source line number.

In such cases, a typical approach would be to go and do

        \df+ test_function

which nicely produces function metadata and source as
contained in the database. For non-trivial functions it is,
however, slightly cumbersome to count the line numbers
onscreen (let alone line break settings).

Hence I wonder whether an approach along these lines:

        select
                row_number() over ()
                || src_line
        from (
                select
                        unnest(string_to_array(prosrc, E'\n')) as src_line
                from
                        pg_proc
                where
                        proname = 'FUNC_NAME'
        ) as func_src;

would be a worthwhile change to the query "\df+" uses ?


do you know \sf+ fce command?

Regards

Pavel

 
(Resorting to "\ef" won't align temp file lines with function
source line numbers either, because pgsql boilerplate is
needed for function definition etc.)

Thanks for considering,
Karsten
--
GPG key ID E4071346 @ eu.pool.sks-keyservers.net
E167 67FD A291 2BEA 73BD  4537 78B9 A9F9 E407 1346


--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

pgsql-general by date:

Previous
From: Karsten Hilbert
Date:
Subject: [GENERAL] potential extension of psql's \df+ ?
Next
From: Samuel Williams
Date:
Subject: Re: [GENERAL] Large data and slow queries