Re: Missing docs on AT TIME ZONE precedence?

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

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Bruce Momjian <bruce@momjian.us>
Cc: Shay Rojansky <roji@roji.org>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2023-11-26T16:35:19Z
Lists: pgsql-hackers
Bruce Momjian <bruce@momjian.us> writes:
> On Sun, Nov 26, 2023 at 11:13:39AM +0100, Shay Rojansky wrote:
>> Is there a missing line in the operator precedence table in the docs?

> I think the big question is whether AT TIME ZONE is significant enough
> to list there because there are many other clauses we could potentially
> add there.

Comparing the precedence list in the grammar with the doc table,
the only omissions I feel bad about are AT and COLLATE.  There's
a group of keywords that have "almost the same precedence as IDENT"
which probably don't need documentation; but these are not in that
group.

I am, however, feeling a little bit on the warpath about the
grammar comments for the SQL/JSON keyword precedences:

/* SQL/JSON related keywords */
%nonassoc	UNIQUE JSON
%nonassoc	KEYS OBJECT_P SCALAR VALUE_P
%nonassoc	WITH WITHOUT

Every other case where we're doing this has a para of explanation
in the block comment just below here.  These not only have no
meaningful explanation, they are in the wrong place --- it looks
like they are unrelated to the block comment, whereas actually
(I think) they are another instance of it.  I consider this
well below project standard.

			regards, tom lane



Commits

  1. Clean up usage of bison precedence for non-operator keywords.

  2. Doc: list AT TIME ZONE and COLLATE in operator precedence table.

  3. SQL/JSON: support the IS JSON predicate