2015-07-03 1:07 GMT+02:00 Tom Lane <t...@sss.pgh.pa.us>:

> Andres Freund <and...@anarazel.de> writes:
> > On 2015-06-08 14:44:53 +0000, Jeevan Chalke wrote:
> >> This is trivial bug fix in the area of hiding error context.
> >>
> >> I observed that there are two places from which we are calling this
> function
> >> to hide the context in log messages. Those were broken.
>
> > Broken in which sense? They did prevent stuff to go from the server log?
>
> > I'm not convinced that hiding stuff from the client is really
> > necessarily the same as hiding it from the server log. We e.g. always
> > send the verbose log to the client, even if we only send the terse
> > version to the server log.  I don't mind adjusting things for
> > errhidecontext(), but it's not "just a bug".
>
> Not only is it not "just a bug", I disagree that it's a bug at all.
> The documentation of the errhidestmt function is crystal clear about
> what it does:
>
>  * errhidecontext --- optionally suppress CONTEXT: field of log entry
>
> That says "log entry", not anything else.  Furthermore, this is clearly
> modeled on errhidestmt(), which also only affects what's written to the
> log.
>
> Generally our position on error reporting is that it's the client's
> responsibility to decide what parts of a report it will or won't show
> to the user, so even if we agreed the overall behavior was undesirable,
> I do not think this is the appropriate fix.
>
> I especially object to the part of the patch that suppresses calling the
> context callback stack functions; that's just introducing inconsistent
> behavior for no reason.  It doesn't prevent collection of context (there
> are lots of errcontext() calls directly in ereports, which this wouldn't
> stop), and it will break callers that are using those callbacks for
> anything more than just calling errcontext().  An example here is that in
> clauses.c's sql_inline_error_callback, this would not only suppress the
> CONTEXT line but also reporting of the error cursor location.
>

I didn't know it - My idea was, when CONTEXT is not showed, then is useless
to collect data for it.


>
> What is the actual use-case that prompted this complaint?
>

I would to use it for controlling (enabling, disabling) CONTEXT in RAISE
statement in plpgsql. I am thinking so one option for this purpose is
enough, and I would not to add other option to specify LOG, CLIENT.

Regards

Pavel


>
>                         regards, tom lane
>

Reply via email to