Re: GUC flags

Peter Eisentraut <peter.eisentraut@enterprisedb.com>

From: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
To: Justin Pryzby <pryzby@telsasoft.com>, Michael Paquier <michael@paquier.xyz>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, pgsql-hackers@lists.postgresql.org, bruce@momjian.us, tgl@sss.pgh.pa.us
Date: 2022-01-25T10:47:14Z
Lists: pgsql-hackers
On 25.01.22 02:07, Justin Pryzby wrote:
> +CREATE TABLE pg_settings_flags AS SELECT name, category,
> +	'NO_SHOW_ALL'	=ANY(flags) AS no_show_all,
> +	'NO_RESET_ALL'	=ANY(flags) AS no_reset_all,
> +	'NOT_IN_SAMPLE'	=ANY(flags) AS not_in_sample,
> +	'EXPLAIN'	=ANY(flags) AS guc_explain,
> +	'COMPUTED'	=ANY(flags) AS guc_computed
> +	FROM pg_show_all_settings();

Does this stuff have any value for users?  I'm worried we are exposing a 
bunch of stuff that is really just for internal purposes.  Like, what 
value does showing "not_in_sample" have?  On the other hand, 
"guc_explain" might be genuinely useful, since that is part of a 
user-facing feature.  (I don't like the "guc_*" naming though.)

Your patch doesn't contain a documentation change, so I don't know how 
and to what extend this is supposed to be presented to users.



Commits

  1. Add TAP test to automate the equivalent of check_guc, take two

  2. Retire src/backend/utils/misc/check_guc

  3. Add TAP test to automate the equivalent of check_guc

  4. Add PostgreSQL::Test::Cluster::config_data()

  5. Introduce pg_settings_get_flags() to find flags associated to a GUC

  6. Revert changes about warnings/errors for placeholders.

  7. Improve the description of various GUCs