Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mLsSK-0000XW-FT for pgsql-docs@arkaria.postgresql.org; Thu, 02 Sep 2021 19:33:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mLsSJ-00008k-Au for pgsql-docs@arkaria.postgresql.org; Thu, 02 Sep 2021 19:32:59 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mLsSJ-00008c-4p for pgsql-docs@lists.postgresql.org; Thu, 02 Sep 2021 19:32:59 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mLsSF-0003Pl-C8 for pgsql-docs@lists.postgresql.org; Thu, 02 Sep 2021 19:32:56 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 182JWqQS2266037; Thu, 2 Sep 2021 15:32:52 -0400 From: Tom Lane To: "David G. Johnston" cc: danny.jones1994@live.com, Pg Docs Subject: Re: Keyword docs missing, or mislabelled keywords In-reply-to: References: <163058588314.700.9808641086715132991@wrigleys.postgresql.org> Comments: In-reply-to "David G. Johnston" message dated "Thu, 02 Sep 2021 07:54:17 -0700" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <2266035.1630611172.1@sss.pgh.pa.us> Date: Thu, 02 Sep 2021 15:32:52 -0400 Message-ID: <2266036.1630611172@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk "David G. Johnston" writes: > On Thu, Sep 2, 2021 at 7:11 AM PG Doc comments form > wrote: >> Missing: >> RESTRICTED (as found in CREATE FUNCTION (PARALLEL RESTRICTED)) >> SAFE (as found in CREATE FUNCTION (PARALLEL SAFE)) >> UNSAFE (as found in CREATE FUNCTION (PARALLEL UNSAFE)) > I'll agree that the documentation for this doesn't fully describe the > intricacies of the implementation, but the listing, at least for the > PARALLEL related options, is correct. In recent versions that listing is guaranteed correct, because it's generated mechanically from the same keyword list the grammar uses. But, as you say, it's not the whole story because some commands have options that are not keywords in the eyes of the grammar, just identifiers that are looked up later. Indeed we encourage that where we can, to avoid grammar bloat. Maybe it'd be appropriate to add some text here about that? But I'm not sure where to stop, because there are lots of things that are identifiers but an unsophisticated user might think are keywords. (Index type names, for example.) regards, tom lane