Re: PL/pgSQL, RAISE and error context - Mailing list pgsql-hackers

From Merlin Moncure
Subject Re: PL/pgSQL, RAISE and error context
Date
Msg-id CAHyXU0x2VAitPRUTPst7rkjULyagdYDo1yS6Py+=+Db+rGvVxw@mail.gmail.com
Whole thread Raw
In response to Re: PL/pgSQL, RAISE and error context  (Marko Tiikkaja <marko@joh.to>)
Responses Re: PL/pgSQL, RAISE and error context  (Pavel Stehule <pavel.stehule@gmail.com>)
Re: PL/pgSQL, RAISE and error context  (Marko Tiikkaja <marko@joh.to>)
Re: PL/pgSQL, RAISE and error context  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Wed, Aug 21, 2013 at 10:07 AM, Marko Tiikkaja <marko@joh.to> wrote:
> On 8/21/13 5:05 PM, Merlin Moncure wrote:
>>
>> On Wed, Aug 21, 2013 at 9:22 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>>
>>> Marko Tiikkaja <marko@joh.to> writes:
>>>>
>>>> By default, PL/pgSQL does not print the error context of a RAISE
>>>> statement, for example:
>>>
>>>
>>> It used to do so, in the beginning when we first added context-printing.
>>> There were complaints that the result was too verbose; for instance if
>>> you
>>> had a RAISE NOTICE inside a loop for progress-monitoring purposes, you'd
>>> get two lines for every one you wanted.  I think if we undid this we'd
>>> get the same complaints again.  I agree that in complicated nests of
>>> functions the location info is more interesting than it is in trivial
>>> cases, but that doesn't mean you're not going to hear such complaints
>>> from
>>> people with trivial functions.
>>
>>
>> It *is* (apologies for the hijack) too verbose but whatever context
>> suppressing we added doesn't work in pretty much any interesting case.
>>   What is basically needed is for the console to honor
>> log_error_verbosity (which I would prefer) or a separate GUC in manage
>> the console logging verbosity:
>
>
> Why does  \set VERBOSITY 'terse'  not work for you?

Because it can't be controlled mid-function...that would suppress all
context of errors as well as messages and so it's useless.  Also psql
directives for this purpose is a hack anyways -- what if I'm using a
non-psql client?

what I really want is:
SET LOCAL log_console_verbosity = 'x'

merlin



pgsql-hackers by date:

Previous
From: Marko Tiikkaja
Date:
Subject: Re: PL/pgSQL, RAISE and error context
Next
From: "David E. Wheeler"
Date:
Subject: Re: CAST Within EXCLUSION constraint