pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Michael Paquier <michael.paquier@gmail.com>
To: Postgres hackers <pgsql-hackers@postgresql.org>
Subject: pg_get_functiondef forgets about most GUC_LIST_INPUT GUCs
Date: Thu, 11 Jan 2018 15:49:00 +0900
Message-ID: <20180111064900.GA51030@paquier.xyz> (raw)

Hi all,

While reviewing another patch related to the use of pg_strcasecmp in the
backend, I have noticed this bit in ruleutils.c:

    /*
     * Some GUC variable names are 'LIST' type and hence must not
     * be quoted.
     */
    if (pg_strcasecmp(configitem, "DateStyle") == 0
        || pg_strcasecmp(configitem, "search_path") == 0)
        appendStringInfoString(&buf, pos);
    else
        simple_quote_literal(&buf, pos);

However this fails to consider all GUCs marked as GUC_LIST_INPUT, like
the recent wal_consistency_checking. guc.c already holds a find_option()
which can be used to retrieve the flags of a parameter. What about using
that and filtering by GUC_LIST_INPUT? This requires exposing the
function, and I am not sure what people think about that.

Thoughts?
--
Michael

Attachments:

  signature.asc (application/pgp-signature, 832B) download

view thread (35+ messages)  latest in thread

Message-ID: <20180111064900.GA51030@paquier.xyz>
Permalink:  ../20180111064900.GA51030@paquier.xyz/
Also on:    postgresql.org/message-id/20180111064900.GA51030@paquier.xyz

 · 

reply

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: michael.paquier@gmail.com
  Subject: Re: pg_get_functiondef forgets about most GUC_LIST_INPUT GUCs
  In-Reply-To: <20180111064900.GA51030@paquier.xyz>

* 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