Re: BUG #15726: parallel queries failed ERROR: invalid name syntax CONTEXT: parallel worker

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: ANASTACIO Tiago <tiago_anastacio@yahoo.fr>, Peter Geoghegan <pg@bowt.ie>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2019-04-02T15:19:41Z
Lists: pgsql-bugs
Thomas Munro <thomas.munro@gmail.com> writes:
> On Tue, Apr 2, 2019 at 10:59 PM ANASTACIO Tiago
> <tiago_anastacio@yahoo.fr> wrote:
>> A pity background worker are no more verbose (DEBUG5) than:
>> 2019-04-02 09:42:38.993 GMT [17654] ERROR:  invalid name syntax

> I agree, it would be nice to improve that.  It seems to be a general
> problem with any GUC that requires a transaction to check: parallel
> workers will force that, but you might not understand the error
> because it comes with no context.  That gives me an idea: perhaps we
> should set the elog() context while restoring GUCs, so that it is
> displayed in the error output somehow.

Yeah, something like

CONTEXT: while setting parameter guc_variable_name to "some value"

would likely make this a whole lot more comprehensible.  And I think
it could probably be done in a fairly centralized way using an error
callback.

			regards, tom lane



Commits

  1. When restoring GUCs in parallel workers, show an error context.

  2. Defer restoration of libraries in parallel workers.