Re: SQL-standard function body

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

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Julien Rouhaud <rjuju123@gmail.com>, Jaime Casanova <jcasanov@systemguards.com.ec>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-04-08T05:41:40Z
Lists: pgsql-hackers
Andres Freund <andres@anarazel.de> writes:
> Independent of this patch, it might be a good idea to have
> ExecInitParallelPlan() be robust against NULL querystrings. Places like
> executor_errposition() are certainly trying to be...

FWIW, I think the long-term drift of things is definitely that
we want to have the querystring available everywhere.  Code like
executor_errposition is from an earlier era before we were trying
to enforce that.  In particular, if the querystring is available in
the leader and not the workers, then you will get different error
reporting behavior in parallel query than non-parallel query, which
is surely a bad thing.

So IMO what you did here is definitely a short-term thing that
we should be looking to revert.  The question at hand is why
Peter's patch broke this in the first place, and how hard it
will be to fix it properly.  I'm entirely on board with reverting
the feature if that isn't readily fixable.

			regards, tom lane



Commits

  1. Don't crash on empty statements in SQL-standard function bodies.

  2. psql: Fix line continuation prompts for unbalanced parentheses

  3. Provide query source text when parsing a SQL-standard function body.

  4. Revert "Cope with NULL query string in ExecInitParallelPlan()."

  5. Undo decision to allow pg_proc.prosrc to be NULL.

  6. SQL-standard function body

  7. Move pg_stat_statements query jumbling to core.

  8. Extend SQL function tests lightly