20231107-guc-names-in-messages-data.txt

text/plain

Filename: 20231107-guc-names-in-messages-data.txt
Type: text/plain
Part: 0
Message: Re: GUC names in messages
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]