Re: GUC names in messages

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Laurenz Albe <laurenz.albe@cybertec.at>, Peter Eisentraut <peter@eisentraut.org>, Tom Lane <tgl@sss.pgh.pa.us>, Daniel Gustafsson <daniel@yesql.se>, Peter Smith <smithpb2250@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-11-07T14:58:21Z
Lists: pgsql-hackers
On Tue, Nov 07, 2023 at 10:33:03AM +0100, Alvaro Herrera wrote:
> On 2023-Nov-01, Nathan Bossart wrote:
>> +1, IMHO quoting GUC names makes it abundantly clear that they are special
>> identifiers.  In de4d456, we quoted the role names in a bunch of messages.
>> We didn't quote the attribute/option names, but those are in all-caps, so
>> they already stand out nicely.
> 
> I like this, and I propose we codify it in the message style guide.  How
> about this?  We can start looking at code changes to make once we decide
> we agree with this.

> +   <para>
> +    In messages containing configuration variable names, quotes are
> +    not necessary when the names are visibly not English natural words, such
> +    as when they have underscores or are all-uppercase.  Otherwise, quotes
> +    must be added.  Do include double-quotes in a message where an arbitrary
> +    variable name is to be expanded.
> +   </para>

І'd vote for quoting all GUC names, if for no other reason than "visibly
not English natural words" feels a bit open to interpretation.  But this
seems like it's on the right track, so I won't argue too strongly if I'm
the only holdout.

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com



Commits

  1. Apply GUC name from central table in more places of guc.c

  2. Use camel case for "DateStyle" in some error messages

  3. Unify some error messages to ease work of translators

  4. Apply more quoting to GUC names in messages

  5. Revise GUC names quoting in messages again

  6. doc: Mention how to use quotes with GUC names in error messages

  7. Apply quotes more consistently to GUC names in logs