On Wed, Nov 8, 2023 at 7:40 AM Peter Smith <smithpb2...@gmail.com> wrote:
>
> FWIW, I am halfway through doing regex checking of the PG16 source for
> all GUC names in messages to see what current styles are in use today.
>
> Not sure if those numbers will influence the decision.
>
> I hope I can post my findings today or tomorrow.
>

Here are my findings from the current PG16 source messages.

I used a regex search:
".*GUCNAME

to find how each GUCNAME is used in the messages in *.c files.

The GUC names are taken from the guc_tables.c code, so they are
grouped accordingly below.

~TOTALS:

messages where GUC names are QUOTED:
- bool = 11
- int = 11
- real = 0
- string = 10
- enum = 7
TOTAL = 39

messages where GUC names are NOT QUOTED:
- bool = 14
- int = 60
- real = 0
- string = 59
- enum = 31
TOTAL = 164

~~~

Details are in the attached file. PSA.

I've categorised them as being currently QUOTED, NOT QUOTED, and NONE
(most are not used in any messages).

Notice that NOT QUOTED is the far more common pattern, so my vote
would be just to standardise on making everything this way. I know
there was some concern raised about ambiguous words like "timezone"
and "datestyle" etc but in practice, those are rare. Also, those GUCs
are different in that they are written as camel-case (e.g.
"DateStyle") in the guc_tables.c, so if they were also written
camel-case in the messages that could remove ambiguities with normal
words. YMMV.

Anyway, I will await a verdict about what to do.

======
Kind Regards,
Peter Smith.
Fujitsu Australia
Hi 

I used regex search:
".*GUCNAME

to find how each GUCNAME is used in messages in *.c files.

GUC names are taken from the guc_tables.c code, so are grouped accordingly 
below.

I've categorised them as being currently QUOTED, NOT QUOTED, and NONE (many are 
not used in any messages).

~TOTALS:

messages where GUC names are quoted:
- bool = 11
- int = 11
- real = 0
- string = 10
- enum = 7
- TOTAL = 39

messages where GUC names are NOT quoted:
- bool = 14
- int = 60
- real = 0
- string = 59
- enum = 31
- TOTAL = 164


Details below...


///////////////////////////

------------------
ConfigureNamesBool
------------------

{"enable_seqscan", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_indexscan", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_indexonlyscan", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_bitmapscan", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_tidscan", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_sort", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_incremental_sort", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_hashagg", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_material", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_memoize", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_nestloop", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_mergejoin", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_hashjoin", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_gathermerge", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_partitionwise_join", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_partitionwise_aggregate", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_parallel_append", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_parallel_hash", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_partition_pruning", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_presorted_aggregate", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"enable_async_append", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"geqo", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"is_superuser", PGC_INTERNAL, UNGROUPED,
- NONE

{"bonjour", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE

{"track_commit_timestamp", PGC_POSTMASTER, REPLICATION_SENDING,
- QUOTED
        errhint("Make sure the configuration parameter \"%s\" is set on the 
primary server.", "track_commit_timestamp") :
        errhint("Make sure the configuration parameter \"%s\" is set.", 
"track_commit_timestamp")));
        
{"ssl", PGC_SIGHUP, CONN_AUTH_SSL,
- NOT QUOTED
        errhint("Set ssl = on in postgresql.conf."),
        
{"ssl_passphrase_command_supports_reload", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_prefer_server_ciphers", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"fsync", PGC_SIGHUP, WAL_SETTINGS,
- NONE

{"zero_damaged_pages", PGC_SUSET, DEVELOPER_OPTIONS,
- NOT QUOTED
        gettext_noop(... Setting "                       "zero_damaged_pages to 
true causes the system to instead report a "...
        
{"ignore_invalid_pages", PGC_POSTMASTER, DEVELOPER_OPTIONS,
- NOT QUOTED
        gettext_noop(... "Setting ignore_invalid_pages to true causes "
        
{"full_page_writes", PGC_SIGHUP, WAL_SETTINGS,
- NOT QUOTED
        errmsg("WAL generated with full_page_writes=off was replayed ""since 
last restartpoint"),
        errhint(...      "Enable full_page_writes and run CHECKPOINT on the 
primary, ""and then try an online backup again.")));
        errmsg("WAL generated with full_page_writes=off was replayed ""during 
online backup"),\
        errhint(... "Enable full_page_writes and run CHECKPOINT on the primary, 
" "and then try an online backup again.")));
        pg_fatal("full_page_writes must be enabled in the source server");
        
{"wal_log_hints", PGC_POSTMASTER, WAL_SETTINGS,
- QUOTED, but this quotes everything -- not just the GUC name
        "target server needs to use either data checksums or \"wal_log_hints = 
on\"");
        
{"wal_init_zero", PGC_SUSET, WAL_SETTINGS,
- NONE

{"wal_recycle", PGC_SUSET, WAL_SETTINGS,
- NONE

{"log_checkpoints", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"log_connections", PGC_SU_BACKEND, LOGGING_WHAT,
- NONE

{"log_disconnections", PGC_SU_BACKEND, LOGGING_WHAT,
- NONE

{"log_replication_commands", PGC_SUSET, LOGGING_WHAT,
- NONE

{"debug_assertions", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"exit_on_error", PGC_USERSET, ERROR_HANDLING_OPTIONS,
- NONE

{"restart_after_crash", PGC_SIGHUP, ERROR_HANDLING_OPTIONS,
- NOT QUOTED
        (errmsg("shutting down because restart_after_crash is off")));
        
{"remove_temp_files_after_crash", PGC_SIGHUP, DEVELOPER_OPTIONS,
- NONE

{"send_abort_for_crash", PGC_SIGHUP, DEVELOPER_OPTIONS,
- NONE

{"send_abort_for_kill", PGC_SIGHUP, DEVELOPER_OPTIONS,
- NONE

{"log_duration", PGC_SUSET, LOGGING_WHAT,
- NONE

{"debug_print_parse", PGC_USERSET, LOGGING_WHAT,
- NONE

{"debug_print_rewritten", PGC_USERSET, LOGGING_WHAT,
- NONE

{"debug_print_plan", PGC_USERSET, LOGGING_WHAT,
- NONE

{"debug_pretty_print", PGC_USERSET, LOGGING_WHAT,
- NONE

{"log_parser_stats", PGC_SUSET, STATS_MONITORING,
- QUOTED
        GUC_check_errdetail("Cannot enable \"log_statement_stats\" when 
""\"log_parser_stats\", \"log_planner_stats\", ""or \"log_executor_stats\" is 
true.");
        
{"log_planner_stats", PGC_SUSET, STATS_MONITORING,
- QUOTED
        GUC_check_errdetail("Cannot enable \"log_statement_stats\" when 
""\"log_parser_stats\", \"log_planner_stats\", ""or \"log_executor_stats\" is 
true.");
        
{"log_executor_stats", PGC_SUSET, STATS_MONITORING,
- QUOTED
        GUC_check_errdetail("Cannot enable \"log_statement_stats\" when 
""\"log_parser_stats\", \"log_planner_stats\", ""or \"log_executor_stats\" is 
true.")
        
{"log_statement_stats", PGC_SUSET, STATS_MONITORING,
- QUOTED
        GUC_check_errdetail("Cannot enable parameter when 
\"log_statement_stats\" is true.");
        GUC_check_errdetail("Cannot enable \"log_statement_stats\" when 
""\"log_parser_stats\", \"log_planner_stats\", ""or \"log_executor_stats\" is 
true.");
        
{"log_btree_build_stats", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"track_activities", PGC_SUSET, STATS_CUMULATIVE,
- NONE

{"track_counts", PGC_SUSET, STATS_CUMULATIVE,
- NONE

{"track_io_timing", PGC_SUSET, STATS_CUMULATIVE,
- NONE

{"track_wal_io_timing", PGC_SUSET, STATS_CUMULATIVE,
- NONE

{"update_process_title", PGC_SUSET, PROCESS_TITLE,
- NONE

{"autovacuum", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"trace_notify", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

{"trace_locks", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"trace_userlocks", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"trace_lwlocks", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"debug_deadlocks", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"log_lock_waits", PGC_SUSET, LOGGING_WHAT,
- NONE

{"log_recovery_conflict_waits", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"log_hostname", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"transform_null_equals", PGC_USERSET, COMPAT_OPTIONS_CLIENT,
- NONE

{"db_user_namespace", PGC_SIGHUP, CONN_AUTH_AUTH,
- QUOTED
        errmsg("MD5 authentication is not supported when \"db_user_namespace\" 
is enabled")))
        errmsg("MD5 authentication is not supported when \"db_user_namespace\" 
is enabled"),
        *err_msg = "MD5 authentication is not supported when 
\"db_user_namespace\" is enabled";
        
{"default_transaction_read_only", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"transaction_read_only", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"default_transaction_deferrable", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"transaction_deferrable", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"row_security", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"check_function_bodies", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"array_nulls", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"default_with_oids", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"logging_collector", PGC_POSTMASTER, LOGGING_WHERE,
- NONE

{"log_truncate_on_rotation", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"trace_sort", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

{"trace_syncscan", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

"optimize_bounded_sort", PGC_USERSET, QUERY_TUNING_METHOD,
- NONE

{"wal_debug", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"integer_datetimes", PGC_INTERNAL, PRESET_OPTIONS,
- NOT QUOTED
        pg_log_error("could not determine server setting for 
integer_datetimes");
        pg_log_error("integer_datetimes compile flag does not match server");
        
{"krb_caseins_users", PGC_SIGHUP, CONN_AUTH_AUTH,
- NONE

{"gss_accept_delegation", PGC_SIGHUP, CONN_AUTH_AUTH,
- NONE

{"escape_string_warning", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"standard_conforming_strings", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NOT QUOTED
        errdetail("String constants with Unicode escapes cannot be used when 
standard_conforming_strings is off."),
        pg_log_info("saving standard_conforming_strings = %s", stdstrings);
        
{"synchronize_seqscans", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"recovery_target_inclusive", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NONE

{"hot_standby", PGC_POSTMASTER, REPLICATION_STANDBY,
- NONE

{"hot_standby_feedback", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"in_hot_standby", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"allow_system_table_mods", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"ignore_system_indexes", PGC_BACKEND, DEVELOPER_OPTIONS,
- NONE

{"allow_in_place_tablespaces", PGC_SUSET, DEVELOPER_OPTIONS,
- NOT QUOTED
        errhint("Remove those directories, or set allow_in_place_tablespaces to 
ON transiently to let recovery complete.")));
        
{"lo_compat_privileges", PGC_SUSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"quote_all_identifiers", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"data_checksums", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"syslog_sequence_numbers", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"syslog_split_messages", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"parallel_leader_participation", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
- NONE

{"jit", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"jit_debugging_support", PGC_SU_BACKEND, DEVELOPER_OPTIONS,
- NONE

{"jit_dump_bitcode", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"jit_expressions", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

{"jit_profiling_support", PGC_SU_BACKEND, DEVELOPER_OPTIONS,
- NONE

{"jit_tuple_deforming", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

{"data_sync_retry", PGC_POSTMASTER, ERROR_HANDLING_OPTIONS,
- NONE

{"wal_receiver_create_temp_slot", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

~~~

-----------------
ConfigureNamesInt
-----------------

{"archive_timeout", PGC_SIGHUP, WAL_ARCHIVING,
- NOT QUOTED
        elog(DEBUG1, "write-ahead log switch forced (archive_timeout=%d)", 
XLogArchiveTimeout);
        
{"post_auth_delay", PGC_BACKEND, DEVELOPER_OPTIONS,
- NONE

{"default_statistics_target", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"from_collapse_limit", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"join_collapse_limit", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"geqo_threshold", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"geqo_effort", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"geqo_pool_size", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"geqo_generations", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"deadlock_timeout", PGC_SUSET, LOCK_MANAGEMENT,
- NONE

{"max_standby_archive_delay", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"max_standby_streaming_delay", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"recovery_min_apply_delay", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"wal_receiver_status_interval", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"wal_receiver_timeout", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"max_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NOT QUOTED
        errhint(...consumption of semaphores by reducing its max_connections 
parameter.\n" "The PostgreSQL documentation contains more information about "...
        errhint("This error usually means that PostgreSQL's request ... perhaps 
by reducing shared_buffers or ""max_connections.",      
        write_stderr("%s: superuser_reserved_connections (%d) plus 
reserved_connections (%d) must be less than max_connections (%d)\n",
        errhint("You might need to run fewer transactions at a time or increase 
max_connections.")));
        errhint("You might need to run fewer transactions at a time or increase 
max_connections.")));
        printf(_("selecting default max_connections ... "));
        
{"superuser_reserved_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NOT QUOTED
        write_stderr("%s: superuser_reserved_connections (%d) plus 
reserved_connections (%d) must be less than max_connections (%d)\n",

{"reserved_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NOT QUOTED
        write_stderr("%s: superuser_reserved_connections (%d) plus 
reserved_connections (%d) must be less than max_connections (%d)\n",
        
{"min_dynamic_shared_memory", PGC_POSTMASTER, RESOURCES_MEM,
- NONE

{"shared_buffers", PGC_POSTMASTER, RESOURCES_MEM,
- NOT QUOTED
        errhint("This error usually means that PostgreSQL's request "..."memory 
usage, perhaps by reducing shared_buffers or ""max_connections.",
        printf(_("selecting default shared_buffers ... "));
        
{"vacuum_buffer_usage_limit", PGC_USERSET, RESOURCES_MEM,
- QUOTED
        GUC_check_errdetail("\"vacuum_buffer_usage_limit\" must be 0 or between 
%d kB and %d kB",MIN_BAS_VAC_RING_SIZE_KB, MAX_BAS_VAC_RING_SIZE_KB);
        
{"shared_memory_size", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"shared_memory_size_in_huge_pages", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"temp_buffers", PGC_USERSET, RESOURCES_MEM,
- QUOTED
        GUC_check_errdetail("\"temp_buffers\" cannot be changed after any 
temporary tables have been accessed in the session.");
        
{"port", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE?

{"unix_socket_permissions", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE

{"log_file_mode", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"data_directory_mode", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"work_mem", PGC_USERSET, RESOURCES_MEM,
- NOT QUOTED
        gettext_noop("Multiple of work_mem to use for hash tables."),
        
{"maintenance_work_mem", PGC_USERSET, RESOURCES_MEM,
- NOT QUOTED
        errhint("Reduce maintenance_work_mem.")));
- QUOTED
        errhint("Consider increasing configuration parameter 
\"maintenance_work_mem\" or \"autovacuum_work_mem\".\n"
        
{"logical_decoding_work_mem", PGC_USERSET, RESOURCES_MEM,
- NONE

{"max_stack_depth", PGC_SUSET, RESOURCES_MEM,
- QUOTED
        errhint("Increase the configuration parameter \"max_stack_depth\" 
(currently %dkB), ""after ensuring the platform's stack depth limit is 
adequate.",
        GUC_check_errdetail("\"max_stack_depth\" must not exceed 
%ldkB.",(stack_rlimit - STACK_DEPTH_SLOP) / 1024L);
                                                        
{"temp_file_limit", PGC_SUSET, RESOURCES_DISK,
- NONE

{"vacuum_cost_page_hit", PGC_USERSET, RESOURCES_VACUUM_DELAY,
- NONE

{"vacuum_cost_page_miss", PGC_USERSET, RESOURCES_VACUUM_DELAY,
- NONE

{"vacuum_cost_page_dirty", PGC_USERSET, RESOURCES_VACUUM_DELAY,
- NONE

{"vacuum_cost_limit", PGC_USERSET, RESOURCES_VACUUM_DELAY,
- NONE

{"autovacuum_vacuum_cost_limit", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"max_files_per_process", PGC_POSTMASTER, RESOURCES_KERNEL,
- NONE

{"max_prepared_transactions", PGC_POSTMASTER, RESOURCES_MEM,
- NOT QUOTED
        errhint("Set max_prepared_transactions to a nonzero value.")));
        errhint("Increase max_prepared_transactions (currently %d).", 
max_prepared_xacts)));
        errhint("Increase max_prepared_transactions (currently %d).", 
max_prepared_xacts)));
        
{"trace_lock_oidmin", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"trace_lock_table", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"statement_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"lock_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"idle_in_transaction_session_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"idle_session_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"vacuum_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"vacuum_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"vacuum_multixact_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        errhint("Execute a database-wide VACUUM in database with OID %u with 
reduced vacuum_multixact_freeze_min_age and...
        errhint("Execute a database-wide VACUUM in that database with reduced 
vacuum_multixact_freeze_min_age and...
        
{"vacuum_multixact_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        errhint(... with OID %u with reduced vacuum_multixact_freeze_min_age 
and vacuum_multixact_freeze_table_age settings.",
        errhint(... with reduced vacuum_multixact_freeze_min_age and 
vacuum_multixact_freeze_table_age settings.")));   
        
{"vacuum_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"vacuum_multixact_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"max_locks_per_transaction", PGC_POSTMASTER, LOCK_MANAGEMENT,
- NOT QUOTED
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_locks_per_transaction")));
        gettext_noop(... "max_locks_per_transaction objects per server process 
or prepared "...)
        
{"max_pred_locks_per_transaction", PGC_POSTMASTER, LOCK_MANAGEMENT,
- NOT QUOTED
        errhint("You might need to increase %s.", 
"max_pred_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_pred_locks_per_transaction")));
        errhint("You might need to increase %s.", 
"max_pred_locks_per_transaction")));
        gettext_noop(..."at most max_pred_locks_per_transaction objects per 
server process "...)
        
{"max_pred_locks_per_relation", PGC_SIGHUP, LOCK_MANAGEMENT,
- NONE

{"max_pred_locks_per_page", PGC_SIGHUP, LOCK_MANAGEMENT,
- NONE

{"authentication_timeout", PGC_SIGHUP, CONN_AUTH_AUTH,
- NONE

{"pre_auth_delay", PGC_SIGHUP, DEVELOPER_OPTIONS,
- NONE

{"wal_decode_buffer_size", PGC_POSTMASTER, WAL_RECOVERY,
- NONE

{"wal_keep_size", PGC_SIGHUP, REPLICATION_SENDING,
- NONE
        
{"min_wal_size", PGC_SIGHUP, WAL_CHECKPOINTS,
- QUOTED
        errmsg("\"min_wal_size\" must be at least twice 
\"wal_segment_size\"")));
        
{"max_wal_size", PGC_SIGHUP, WAL_CHECKPOINTS,
- QUOTED
        errmsg("\"max_wal_size\" must be at least twice 
\"wal_segment_size\"")));
        errhint("Consider increasing the configuration parameter 
\"max_wal_size\".")));
        
{"checkpoint_timeout", PGC_SIGHUP, WAL_CHECKPOINTS,
- NONE

{"checkpoint_warning", PGC_SIGHUP, WAL_CHECKPOINTS,
- NONE

{"checkpoint_flush_after", PGC_SIGHUP, WAL_CHECKPOINTS,
- NONE

{"wal_buffers", PGC_POSTMASTER, WAL_SETTINGS,
- NONE

{"wal_writer_delay", PGC_SIGHUP, WAL_SETTINGS,
- NONE

{"wal_writer_flush_after", PGC_SIGHUP, WAL_SETTINGS,
- NONE

{"wal_skip_threshold", PGC_USERSET, WAL_SETTINGS,
- NONE

{"max_wal_senders", PGC_POSTMASTER, REPLICATION_SENDING,
- NOT QUOTED
        (errmsg("WAL streaming (max_wal_senders > 0) requires wal_level 
\"replica\" or \"logical\"")));
        errmsg("number of requested standby connections exceeds max_wal_senders 
(currently %d)", max_wal_senders)));
        
{"max_replication_slots", PGC_POSTMASTER, REPLICATION_SENDING,
- NOT QUOTED
        errhint("Free one or increase max_replication_slots.")));
        errmsg("replication slots can only be used if max_replication_slots > 
0")));
        errhint("Increase max_replication_slots and try again.")));
        errmsg("cannot start logical replication workers when 
max_replication_slots = 0")));
        errmsg("cannot query or manipulate replication origin when 
max_replication_slots = 0")));
        errmsg("could not find free replication state, increase 
max_replication_slots")));
        errhint("Increase max_replication_slots and try again.")));
        errhint("Increase max_replication_slots and try again.")));

{"max_slot_wal_keep_size", PGC_SIGHUP, REPLICATION_SENDING,
- NOT QUOTED
        hint ? errhint("You might need to increase %s.", 
"max_slot_wal_keep_size") : 0);
        
{"wal_sender_timeout", PGC_USERSET, REPLICATION_SENDING,
- NONE

{"commit_delay", PGC_SUSET, WAL_SETTINGS,
- NOT QUOTED
        gettext_noop("Sets the minimum number of concurrent open transactions 
""required before performing commit_delay.")
        
{"commit_siblings", PGC_USERSET, WAL_SETTINGS,
- NONE

{"extra_float_digits", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"log_min_duration_sample", PGC_SUSET, LOGGING_WHEN,
- NOT QUOTED
        gettext_noop("Fraction of statements exceeding log_min_duration_sample 
to be logged."),
        
{"log_min_duration_statement", PGC_SUSET, LOGGING_WHEN,
- NONE

{"log_autovacuum_min_duration", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"log_parameter_max_length", PGC_SUSET, LOGGING_WHAT,
- NONE

{"log_parameter_max_length_on_error", PGC_USERSET, LOGGING_WHAT,
- NONE

{"bgwriter_delay", PGC_SIGHUP, RESOURCES_BGWRITER,
- NONE

{"bgwriter_lru_maxpages", PGC_SIGHUP, RESOURCES_BGWRITER,
- NONE

{"bgwriter_flush_after", PGC_SIGHUP, RESOURCES_BGWRITER,
- NONE

{"effective_io_concurrency",
- NOT QUOTED
        GUC_check_errdetail("effective_io_concurrency must be set to 0 on 
platforms that lack posix_fadvise().");
        gettext_noop("A variant of effective_io_concurrency that is used for 
maintenance work."),       
        
{"maintenance_io_concurrency",
- NOT QUOTED
        GUC_check_errdetail("maintenance_io_concurrency must be set to 0 on 
platforms that lack posix_fadvise().");
        
{"backend_flush_after", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
- NONE

{"max_worker_processes",
- NOT QUOTED, but note probably some of these should be making use of common 
style "You may need to increase %s."
        errhint("You may need to increase max_worker_processes.")));
        errhint("Consider increasing configuration parameter 
\"max_worker_processes\".")));
        (errmsg("inconsistent background worker state (max_worker_processes=%d, 
total_slots=%d)",...)));
        errhint("Consider increasing the configuration parameter 
\"max_worker_processes\".")));
        errhint("You might need to increase %s.", "max_worker_processes")));
        errhint("You may need to increase max_worker_processes.")));
        
{"max_logical_replication_workers",
- NOT QUOTED
        errhint("You might need to increase %s.", 
"max_logical_replication_workers")));
        
{"max_sync_workers_per_subscription",
- NONE

{"max_parallel_apply_workers_per_subscription",
- NONE

{"log_rotation_age", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"log_rotation_size", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"max_function_args", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"max_index_keys", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"max_identifier_length", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"block_size", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"segment_size", PGC_INTERNAL, PRESET_OPTIONS,
- NONE
        
{"wal_block_size", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"wal_retrieve_retry_interval", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"wal_segment_size", PGC_INTERNAL, PRESET_OPTIONS,
- QUOTED
        errmsg("\"min_wal_size\" must be at least twice 
\"wal_segment_size\"")));
        errmsg("\"max_wal_size\" must be at least twice 
\"wal_segment_size\"")));
        
{"autovacuum_naptime", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_vacuum_threshold", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_vacuum_insert_threshold", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_analyze_threshold", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM,
- NONE

{"autovacuum_multixact_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM,
- NONE

{"autovacuum_max_workers", PGC_POSTMASTER, AUTOVACUUM,
- NONE

{"max_parallel_maintenance_workers", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
- NONE

{"max_parallel_workers_per_gather", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
- NONE

{"max_parallel_workers", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
- NONE

{"autovacuum_work_mem", PGC_SIGHUP, RESOURCES_MEM,
- QUOTED
        errhint("Consider increasing configuration parameter 
\"maintenance_work_mem\" or \"autovacuum_work_mem\".\n"...)));
        
{"old_snapshot_threshold", PGC_POSTMASTER, RESOURCES_ASYNCHRONOUS,
- NONE

{"tcp_keepalives_idle", PGC_USERSET, CONN_AUTH_TCP,
- NONE

{"tcp_keepalives_interval", PGC_USERSET, CONN_AUTH_TCP,
- NONE

{"ssl_renegotiation_limit", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"tcp_keepalives_count", PGC_USERSET, CONN_AUTH_TCP,
- NONE

{"gin_fuzzy_search_limit", PGC_USERSET, CLIENT_CONN_OTHER,
- NONE

{"effective_cache_size", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"min_parallel_table_scan_size", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"min_parallel_index_scan_size", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"server_version_num", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"log_temp_files", PGC_SUSET, LOGGING_WHAT,
- NONE

{"gin_pending_list_limit", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"tcp_user_timeout", PGC_USERSET, CONN_AUTH_TCP,
- NOT QUOTED, althought I am not sure if this really is the GUC
        (errmsg("%s(%s) failed: %m", "getsockopt", "TCP_USER_TIMEOUT")));
        (errmsg("%s(%s) failed: %m", "setsockopt", "TCP_USER_TIMEOUT")));
        (errmsg("%s(%s) not supported", "setsockopt", "TCP_USER_TIMEOUT")));
        
{"huge_page_size", PGC_POSTMASTER, RESOURCES_MEM,
- NOT QUOTED
        GUC_check_errdetail("huge_page_size must be 0 on this platform.");
        GUC_check_errdetail("huge_page_size must be 0 on this platform.");
        
{"debug_discard_caches", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"client_connection_check_interval", PGC_USERSET, CONN_AUTH_TCP,
- NOT QUOTED
        GUC_check_errdetail("client_connection_check_interval must be set to 0 
on this platform.");
        
{"log_startup_progress_interval", PGC_SIGHUP, LOGGING_WHEN,
- NONE

{"scram_iterations", PGC_USERSET, CONN_AUTH_AUTH,
- NONE

~~~

------------------
ConfigureNamesReal
------------------

{"seq_page_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"random_page_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"cpu_tuple_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"cpu_index_tuple_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"cpu_operator_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"parallel_tuple_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"parallel_setup_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"jit_above_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"jit_optimize_above_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"jit_inline_above_cost", PGC_USERSET, QUERY_TUNING_COST,
- NONE

{"cursor_tuple_fraction", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"recursive_worktable_factor", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"geqo_selection_bias", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"geqo_seed", PGC_USERSET, QUERY_TUNING_GEQO,
- NONE

{"hash_mem_multiplier", PGC_USERSET, RESOURCES_MEM,
- NONE

{"bgwriter_lru_multiplier", PGC_SIGHUP, RESOURCES_BGWRITER,
- NONE

{"seed", PGC_USERSET, UNGROUPED,
- NONE?

{"vacuum_cost_delay", PGC_USERSET, RESOURCES_VACUUM_DELAY,
- NONE

{"autovacuum_vacuum_cost_delay", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_vacuum_scale_factor", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_vacuum_insert_scale_factor", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"autovacuum_analyze_scale_factor", PGC_SIGHUP, AUTOVACUUM,
- NONE

{"checkpoint_completion_target", PGC_SIGHUP, WAL_CHECKPOINTS,
- NONE

{"log_statement_sample_rate", PGC_SUSET, LOGGING_WHEN,
- NONE

{"log_transaction_sample_rate", PGC_SUSET, LOGGING_WHEN,
- NONE

~~~

--------------------
ConfigureNamesString
--------------------

{"archive_command", PGC_SIGHUP, WAL_ARCHIVING,
- NOT QUOTED
        errhint("Check that your archive_command is executing properly.  "
        errmsg("both archive_command and archive_library set"),
        errdetail("Only one of archive_command, archive_library may be set.")));
        errmsg("both archive_command and archive_library set"),
        errdetail("Only one of archive_command, archive_library may be set.")));
        gettext_noop("Allows archiving of WAL files using archive_command."),
- QUOTED
        gettext_noop("An empty string indicates that \"archive_command\" should 
be used.")      
        
{"archive_library", PGC_SIGHUP, WAL_ARCHIVING,
- NOT QUOTED
        errmsg("both archive_command and archive_library set"),
        errdetail("Only one of archive_command, archive_library may be set.")));
        errmsg("both archive_command and archive_library set"),
        errdetail("Only one of archive_command, archive_library may be set.")))
- QUOTED
        (errmsg("restarting archiver process because value of " 
"\"archive_library\" was changed")));
        gettext_noop("This is used only if \"archive_library\" is not set.")
        
{"restore_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY,
- NOT QUOTED
        errdetail("restore_command returned a zero exit status, but stat() 
failed.")));
        (errmsg("specified neither primary_conninfo nor restore_command"),
        errmsg("must specify restore_command when standby mode is not 
enabled")));
        pg_fatal("restore_command is not set in the target cluster");
        pg_log_debug("using for rewind restore_command = \'%s\'",
        pg_fatal("restore_command failed: %s", wait_result_to_str(rc));
        
{"archive_cleanup_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY,
- NONE

{"recovery_end_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY,
- NOT QUOTED
        (errmsg("%s \"%s\": %s", commandName, command, 
wait_result_to_str(rc))));
        
{"recovery_target_timeline", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        GUC_check_errdetail("recovery_target_timeline is not a valid number.");
        
{"recovery_target", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        errdetail("At most one of recovery_target, recovery_target_lsn, 
recovery_target_name, recovery_target_time, recovery_target_xid may be set.")));
        GUC_check_errdetail("%s is too long (maximum %d characters).", 
"recovery_target_name", MAXFNAMELEN - 1)
        GUC_check_errdetail("recovery_target_timeline is not a valid number.");
        
{"recovery_target_xid", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        errdetail("At most one of recovery_target, recovery_target_lsn, 
recovery_target_name, recovery_target_time, recovery_target_xid may be set.")));
        
{"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        errdetail("At most one of recovery_target, recovery_target_lsn, 
recovery_target_name, recovery_target_time, recovery_target_xid may be set.")));
        GUC_check_errdetail("recovery_target_timeline is not a valid number.");
        
{"recovery_target_name", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        errdetail("At most one of recovery_target, recovery_target_lsn, 
recovery_target_name, recovery_target_time, recovery_target_xid may be set.")));
        GUC_check_errdetail("%s is too long (maximum %d characters).", 
"recovery_target_name", MAXFNAMELEN - 1);
        
{"recovery_target_lsn", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NOT QUOTED
        errdetail("At most one of recovery_target, recovery_target_lsn, 
recovery_target_name, recovery_target_time, recovery_target_xid may be set.")));
        
{"primary_conninfo", PGC_SIGHUP, REPLICATION_STANDBY,
- NOT QUOTED
        (errmsg("specified neither primary_conninfo nor restore_command"),
        
{"primary_slot_name", PGC_SIGHUP, REPLICATION_STANDBY,
- NONE

{"client_encoding", PGC_USERSET, CLIENT_CONN_LOCALE,
- QUOTED
        GUC_check_errdetail("Cannot change \"client_encoding\" now.");
- NOT QUOTED
        errmsg("cannot change client_encoding during a parallel operation")));
        
{"log_line_prefix", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"log_timezone", PGC_SIGHUP, LOGGING_WHAT,
- NONE

{"DateStyle", PGC_USERSET, CLIENT_CONN_LOCALE,
- QUOTED, and note the case is difference from the GUC
        GUC_check_errdetail("Conflicting \"datestyle\" specifications.");
        errhint("Perhaps you need a different \"datestyle\" setting.")));
        
{"default_table_access_method", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        GUC_check_errdetail("%s cannot be empty.", 
"default_table_access_method");
        GUC_check_errdetail("%s is too long (maximum %d characters).", 
"default_table_access_method", NAMEDATALEN - 1);
        warn_or_exit_horribly(AH, "could not set default_table_access_method: 
%s", PQerrorMessage(AH->connection));
        
{"default_tablespace", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        warn_or_exit_horribly(AH, "could not set default_tablespace to %s: %s", 
fmtId(want), PQerrorMessage(AH->connection));
        
{"temp_tablespaces", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"createrole_self_grant", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"dynamic_library_path", PGC_SUSET, CLIENT_CONN_OTHER,
- QUOTED
        errmsg("zero-length component in parameter \"dynamic_library_path\"")));
        errmsg("component in parameter \"dynamic_library_path\" is not an 
absolute path")));
        
{"krb_server_keyfile", PGC_SIGHUP, CONN_AUTH_AUTH,
- NONE

{"bonjour_name", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE

{"lc_messages", PGC_SUSET, CLIENT_CONN_LOCALE,
- NOT QUOTED
        pg_fatal("failed to set lc_messages: %s", PQerrorMessage(conn));
        
{"lc_monetary", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"lc_numeric", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"lc_time", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"session_preload_libraries", PGC_SUSET, CLIENT_CONN_PRELOAD,
- NONE

{"shared_preload_libraries", PGC_POSTMASTER, CLIENT_CONN_PRELOAD,
- NOT QUOTED
        errmsg("pg_stat_statements must be loaded via 
shared_preload_libraries")));
        errmsg("pg_stat_statements must be loaded via 
shared_preload_libraries")));
        errmsg("pg_stat_statements must be loaded via 
shared_preload_libraries")));
        errmsg("sepgsql must be loaded via shared_preload_libraries")));
        errhint("Include the extension module that implements this resource 
manager in shared_preload_libraries.")));
        errdetail("Custom resource manager must be registered while 
initializing modules in shared_preload_libraries.")));
        errmsg("background worker \"%s\": must be registered in 
shared_preload_libraries", worker->bgw_name)));
        errdetail("\"%s\" must be loaded with shared_preload_libraries.", 
"test_slru")))

{"local_preload_libraries", PGC_USERSET, CLIENT_CONN_PRELOAD,
- NONE

{"search_path", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        pg_log_error("could not clear search_path: %s", PQerrorMessage(conn));
        pg_log_error("failed to set search_path: %s", PQerrorMessage(conn));
        pg_log_error("could not clear search_path: %s", 
PQerrorMessage(tmpconn));
        warn_or_exit_horribly(AH, "could not set search_path to \"%s\": %s", 
schemaName, PQerrorMessage(AH->connection));
        pg_log_info("saving search_path = %s", path->data);
        pg_fatal("could not clear search_path: %s", PQresultErrorMessage(res));
        pg_log_error("no pgbench_accounts table found in search_path");
        
{"server_encoding", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"server_version", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"role", PGC_USERSET, UNGROUPED,
- NONE?

{"session_authorization", PGC_USERSET, UNGROUPED,
- NONE

{"log_destination", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"log_directory", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"log_filename", PGC_SIGHUP, LOGGING_WHERE,
- NOT QUOTED 
        errmsg("the log_filename parameter must equal 
'postgresql-%%Y-%%m-%%d_%%H%%M%%S.log'")))
        
{"syslog_ident", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"event_source", PGC_POSTMASTER, LOGGING_WHERE,
- NONE

{"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE,
- NOT QUOTED, need to re-check are these really the GUC name
        elog(ERROR, "unrecognized timezone type %d", (int) tp->type);
        (errmsg_internal("timezone directory stack overflow")));        
        
{"timezone_abbreviations", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"unix_socket_group", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NOT QUOTED
        elog(WARNING, "configuration item unix_socket_group is not supported on 
this platform");
        
{"unix_socket_directories", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE

{"listen_addresses", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
- NONE

{"data_directory", PGC_POSTMASTER, FILE_LOCATIONS,
- QUOTED
        write_stderr(... "This can be specified as \"data_directory\" in 
\"%s\", " ...
        
{"config_file", PGC_POSTMASTER, FILE_LOCATIONS,
- NONE

{"hba_file", PGC_POSTMASTER, FILE_LOCATIONS,
- QUOTED
        write_stderr(... "This can be specified as \"hba_file\" in \"%s\", "...
        
{"ident_file", PGC_POSTMASTER, FILE_LOCATIONS,
- QUOTED
        write_stderr(... "This can be specified as \"ident_file\" in \"%s\", 
"...
        
{"external_pid_file", PGC_POSTMASTER, FILE_LOCATIONS,
- NONE

{"ssl_library", PGC_INTERNAL, PRESET_OPTIONS,
- NONE

{"ssl_cert_file", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_key_file", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_ca_file", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_crl_file", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_crl_dir", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"synchronous_standby_names", PGC_SIGHUP, REPLICATION_PRIMARY,
- NOT QUOTED
        GUC_check_errdetail("synchronous_standby_names parser failed");
        
{"default_text_search_config", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"ssl_ciphers", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_ecdh_curve", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_dh_params_file", PGC_SIGHUP, CONN_AUTH_SSL,
- NONE

{"ssl_passphrase_command", PGC_SIGHUP, CONN_AUTH_SSL,
- NOT QUOTED
        gettext_noop("Controls whether ssl_passphrase_command is called during 
server reload."),
        (errmsg("ssl_passphrase_command setting ignored by ssl_passphrase_func 
module")));
        
{"application_name", PGC_USERSET, LOGGING_WHAT,
- NONE

{"cluster_name", PGC_POSTMASTER, PROCESS_TITLE,
- NONE

{"wal_consistency_checking", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"jit_provider", PGC_POSTMASTER, CLIENT_CONN_PRELOAD,
- NONE

{"backtrace_functions", PGC_SUSET, DEVELOPER_OPTIONS,
- NONE

{"debug_io_direct", PGC_POSTMASTER, DEVELOPER_OPTIONS,
- NOT QUOTED
        GUC_check_errdetail("debug_io_direct is not supported on this 
platform.")
        GUC_check_errdetail("debug_io_direct is not supported for WAL because 
XLOG_BLCKSZ is too small");
        GUC_check_errdetail("debug_io_direct is not supported for data because 
BLCKSZ is too small");
- QUOTED
        GUC_check_errdetail("invalid list syntax in parameter \"%s\"", 
"debug_io_direct");      

~~~

------------------
ConfigureNamesEnum
------------------

{"backslash_quote", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
- NONE

{"bytea_output", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NOT QUOTED
        elog(ERROR, "unrecognized bytea_output setting: %d",
        
{"client_min_messages", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"compute_query_id", PGC_SUSET, STATS_MONITORING,
- NONE

{"constraint_exclusion", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"default_toast_compression", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"default_transaction_isolation", PGC_USERSET, CLIENT_CONN_STATEMENT,
- QUOTED
        errdetail("\"default_transaction_isolation\" is set to 
\"serializable\"."),
        
{"transaction_isolation", PGC_USERSET, CLIENT_CONN_STATEMENT,
- QUOTED
        errdetail("\"default_transaction_isolation\" is set to 
\"serializable\"."),
        
{"IntervalStyle", PGC_USERSET, CLIENT_CONN_LOCALE,
- NONE

{"icu_validation_level", PGC_USERSET, CLIENT_CONN_LOCALE,
- QUOTED
        errhint("To disable ICU locale validation, set the parameter \"%s\" to 
\"%s\".", "icu_validation_level", "disabled")));
        errhint("To disable ICU locale validation, set the parameter \"%s\" to 
\"%s\".", "icu_validation_level", "disabled")));
        
{"log_error_verbosity", PGC_SUSET, LOGGING_WHAT,
- NONE

{"log_min_messages", PGC_SUSET, LOGGING_WHEN,
- NONE

{"log_min_error_statement", PGC_SUSET, LOGGING_WHEN,
- NONE

{"log_statement", PGC_SUSET, LOGGING_WHAT,
- NONE

{"syslog_facility", PGC_SIGHUP, LOGGING_WHERE,
- NONE

{"session_replication_role", PGC_SUSET, CLIENT_CONN_STATEMENT,
- NONE

{"synchronous_commit", PGC_USERSET, WAL_SETTINGS,
- NONE

{"archive_mode", PGC_POSTMASTER, WAL_ARCHIVING,
- NOT QUOTED
        errmsg("archive_mode enabled, yet archiving is not configured")));
        
{"recovery_target_action", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- NONE

{"trace_recovery_messages", PGC_SIGHUP, DEVELOPER_OPTIONS,
- NONE

{"track_functions", PGC_SUSET, STATS_CUMULATIVE,
- NONE

{"stats_fetch_consistency", PGC_USERSET, STATS_CUMULATIVE,
- NONE

{"wal_compression", PGC_SUSET, WAL_SETTINGS,
- NONE

{"wal_level", PGC_POSTMASTER, WAL_SETTINGS,
- NOT QUOTED, and notice some of these option values are quoted and some are not
        errmsg("WAL was generated with wal_level=minimal, cannot continue 
recovering")
        errdetail("This happens if you temporarily set wal_level=minimal on the 
server."),
        errhint("Use a backup taken after setting wal_level to higher than 
minimal.")));
        errhint("wal_level must be set to \"replica\" or \"logical\" at server 
start.")));
        errhint("wal_level must be set to \"replica\" or \"logical\" at server 
start.")));
        errmsg("pg_log_standby_snapshot() can only be used if wal_level >= 
replica")));
        errhint("wal_level must be set to \"replica\" or \"logical\" at server 
start.")));
        errmsg("wal_level is insufficient to publish logical changes"),
        errhint("Set wal_level to \"logical\" before creating 
subscriptions.")));
        (errmsg("WAL archival cannot be enabled when wal_level is 
\"minimal\"")));
        (errmsg("WAL streaming (max_wal_senders > 0) requires wal_level 
\"replica\" or \"logical\"")));
        errmsg("replication slots can only be used if wal_level >= replica")));
        appendStringInfo(&err_detail, _("Logical decoding on standby requires 
wal_level >= logical on the primary server."));
        errmsg("logical replication slot \"%s\" exists, but wal_level < 
logical",
        errhint("Change wal_level to be logical or higher.")));
        errmsg("physical replication slot \"%s\" exists, but wal_level < 
replica",
        errhint("Change wal_level to be replica or higher.")));
        errmsg("physical replication slot \"%s\" exists, but wal_level < 
replica",
        errhint("Change wal_level to be replica or higher.")));
        errmsg("logical decoding on standby requires wal_level >= logical on 
the primary")));
        errmsg("logical decoding requires wal_level >= logical")));
        errmsg("logical decoding on standby requires wal_level >= logical on 
the primary")));

{"dynamic_shared_memory_type", PGC_POSTMASTER, RESOURCES_MEM,
- NONE

{"shared_memory_type", PGC_POSTMASTER, RESOURCES_MEM,
- NOT QUOTED
        errmsg("huge pages not supported with the current shared_memory_type 
setting")));
        
{"wal_sync_method", PGC_SIGHUP, WAL_SETTINGS,
- NOT QUOTED
        elog(ERROR, "unrecognized wal_sync_method: %d", method);
        elog(PANIC, "unrecognized wal_sync_method: %d", sync_method);
        
{"xmlbinary", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"xmloption", PGC_USERSET, CLIENT_CONN_STATEMENT,
- NONE

{"huge_pages", PGC_POSTMASTER, RESOURCES_MEM,
- NONE

{"recovery_prefetch", PGC_SIGHUP, WAL_RECOVERY,
- NOT QUOTED
        GUC_check_errdetail("recovery_prefetch is not supported on platforms 
that lack posix_fadvise().");
        
{"debug_parallel_query", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

{"password_encryption", PGC_USERSET, CONN_AUTH_AUTH,
- NOT QUOTED
        libpq_append_conn_error(conn, "password_encryption value too long");
        
{"plan_cache_mode", PGC_USERSET, QUERY_TUNING_OTHER,
- NONE

{"ssl_min_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL,
- QUOTED
        (errmsg("\"%s\" setting \"%s\" not supported by this build", 
"ssl_min_protocol_version", GetConfigOption("ssl_min_protocol_version", false, 
false))));
- NOT QUOTED
        libpq_append_conn_error(conn, "invalid %s value: \"%s\"", 
"ssl_min_protocol_version", conn->ssl_min_protocol_version);  
        
{"ssl_max_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL,
- QUOTED
        (errmsg("\"%s\" setting \"%s\" not supported by this build", 
"ssl_max_protocol_version", GetConfigOption("ssl_max_protocol_version", false, 
false))));
        errdetail("\"%s\" cannot be higher than \"%s\"", 
"ssl_min_protocol_version", "ssl_max_protocol_version")));
- NOT QUOTED
        libpq_append_conn_error(conn, "invalid %s value: \"%s\"", 
"ssl_max_protocol_version", conn->ssl_max_protocol_version);
                                                           
{"recovery_init_sync_method", PGC_SIGHUP, ERROR_HANDLING_OPTIONS,
- NONE

{"debug_logical_replication_streaming", PGC_USERSET, DEVELOPER_OPTIONS,
- NONE

[end]

Reply via email to