From: Chapman Flack <chap@anastigmatix.net>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: Loose ends after CVE-2020-14350 (extension installation hazards)
Date: Fri, 14 Aug 2020 16:19:18 -0400
Message-ID: <5F36F1C6.2080307@anastigmatix.net> (raw)
In-Reply-To: <655710.1597433892@sss.pgh.pa.us>
References: <653936.1597431032@sss.pgh.pa.us>
<5F36E107.50907@anastigmatix.net>
<655710.1597433892@sss.pgh.pa.us>
On 08/14/20 15:38, Tom Lane wrote:
> (3) If the SQL syntax is really just "WITH variable value [, ...]"
> then I'm afraid we're going to have a lot of parse-ambiguity problems
> with wedging full SET syntax into that. The ability for the righthand
There is precedent in the SET command for having one general syntax
usable for any GUC, and specialized ones for a few 'special' GUCs
(search_path, client_encoding, timezone).
Maybe WITH could be done the same way, inventing some less thorny syntax
for the general case
WITH (foo = bar, baz), (quux = 42), XMLBINARY BASE64, a AS (SELECT...)
and treating just the few like XMLBINARY that appear in the standard
as having equivalent specialized productions?
The only examples of the syntax in the standard that are coming to mind
right now are those I've seen in the SQL/XML part, but I feel like I have
seen others, as if the committee kind of likes their WITH local-setting-
of-something syntax, and additional examples may continue to appear.
Regards,
-Chap
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: chap@anastigmatix.net, tgl@sss.pgh.pa.us, pgsql-hackers@lists.postgresql.org
Subject: Re: Loose ends after CVE-2020-14350 (extension installation hazards)
In-Reply-To: <5F36F1C6.2080307@anastigmatix.net>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox