From 50d9d497b646b37fc29cd62ce319c1142125785e Mon Sep 17 00:00:00 2001 From: Mark Dilger Date: Wed, 12 May 2021 07:04:14 -0700 Subject: [PATCH v2] Delegating setting of GUC variables Creating roles with permission to run SET and ALTER SYSTEM SET commands for variables which otherwise require superuser privileges. --- contrib/auth_delay/auth_delay.c | 1 + contrib/auto_explain/auto_explain.c | 12 + contrib/pg_prewarm/autoprewarm.c | 2 + .../pg_stat_statements/pg_stat_statements.c | 5 + contrib/pg_trgm/trgm_op.c | 3 + contrib/sepgsql/hooks.c | 2 + src/backend/utils/misc/guc.c | 778 ++++-- src/include/catalog/pg_authid.dat | 60 + src/include/utils/guc.h | 22 + src/include/utils/guc_tables.h | 1 + src/pl/plperl/plperl.c | 8 +- src/pl/plpgsql/src/pl_handler.c | 10 +- src/pl/tcl/pltcl.c | 4 +- .../modules/delay_execution/delay_execution.c | 1 + .../ssl_passphrase_func.c | 1 + src/test/modules/worker_spi/worker_spi.c | 3 + src/test/regress/expected/guc_priv_admin.out | 1844 ++++++++++++++ src/test/regress/expected/guc_priv_tenant.out | 2237 +++++++++++++++++ src/test/regress/parallel_schedule | 2 +- src/test/regress/sql/guc_priv_admin.sql | 1470 +++++++++++ src/test/regress/sql/guc_priv_tenant.sql | 1461 +++++++++++ 21 files changed, 7746 insertions(+), 181 deletions(-) create mode 100644 src/test/regress/expected/guc_priv_admin.out create mode 100644 src/test/regress/expected/guc_priv_tenant.out create mode 100644 src/test/regress/sql/guc_priv_admin.sql create mode 100644 src/test/regress/sql/guc_priv_tenant.sql diff --git a/contrib/auth_delay/auth_delay.c b/contrib/auth_delay/auth_delay.c index 5820ac328d..6a5105aa61 100644 --- a/contrib/auth_delay/auth_delay.c +++ b/contrib/auth_delay/auth_delay.c @@ -63,6 +63,7 @@ _PG_init(void) 0, 0, INT_MAX / 1000, PGC_SIGHUP, + GUC_INTERFACE_SETTINGS, GUC_UNIT_MS, NULL, NULL, diff --git a/contrib/auto_explain/auto_explain.c b/contrib/auto_explain/auto_explain.c index e9092ba359..11b5687136 100644 --- a/contrib/auto_explain/auto_explain.c +++ b/contrib/auto_explain/auto_explain.c @@ -100,6 +100,7 @@ _PG_init(void) -1, -1, INT_MAX, PGC_SUSET, + GUC_LOGGING_SETTINGS, GUC_UNIT_MS, NULL, NULL, @@ -111,6 +112,7 @@ _PG_init(void) &auto_explain_log_analyze, false, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -122,6 +124,7 @@ _PG_init(void) &auto_explain_log_settings, false, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -133,6 +136,7 @@ _PG_init(void) &auto_explain_log_verbose, false, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -144,6 +148,7 @@ _PG_init(void) &auto_explain_log_buffers, false, PGC_SUSET, + GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE, 0, NULL, NULL, @@ -155,6 +160,7 @@ _PG_init(void) &auto_explain_log_wal, false, PGC_SUSET, + GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS, 0, NULL, NULL, @@ -166,6 +172,7 @@ _PG_init(void) &auto_explain_log_triggers, false, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -178,6 +185,7 @@ _PG_init(void) EXPLAIN_FORMAT_TEXT, format_options, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -190,6 +198,7 @@ _PG_init(void) LOG, loglevel_options, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -201,6 +210,7 @@ _PG_init(void) &auto_explain_log_nested_statements, false, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -212,6 +222,7 @@ _PG_init(void) &auto_explain_log_timing, true, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, @@ -225,6 +236,7 @@ _PG_init(void) 0.0, 1.0, PGC_SUSET, + GUC_LOGGING_SETTINGS, 0, NULL, NULL, diff --git a/contrib/pg_prewarm/autoprewarm.c b/contrib/pg_prewarm/autoprewarm.c index b3f73ea92d..55432c502c 100644 --- a/contrib/pg_prewarm/autoprewarm.c +++ b/contrib/pg_prewarm/autoprewarm.c @@ -116,6 +116,7 @@ _PG_init(void) 300, 0, INT_MAX / 1000, PGC_SIGHUP, + GUC_INTERNAL_SETTINGS, GUC_UNIT_S, NULL, NULL, @@ -131,6 +132,7 @@ _PG_init(void) &autoprewarm, true, PGC_POSTMASTER, + GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE, 0, NULL, NULL, diff --git a/contrib/pg_stat_statements/pg_stat_statements.c b/contrib/pg_stat_statements/pg_stat_statements.c index 77ca5abcdc..525d951cb8 100644 --- a/contrib/pg_stat_statements/pg_stat_statements.c +++ b/contrib/pg_stat_statements/pg_stat_statements.c @@ -380,6 +380,7 @@ _PG_init(void) 100, INT_MAX, PGC_POSTMASTER, + GUC_STATS_SETTINGS | GUC_RESOURCE_USAGE, 0, NULL, NULL, @@ -392,6 +393,7 @@ _PG_init(void) PGSS_TRACK_TOP, track_options, PGC_SUSET, + GUC_STATS_SETTINGS, 0, NULL, NULL, @@ -403,6 +405,7 @@ _PG_init(void) &pgss_track_utility, true, PGC_SUSET, + GUC_STATS_SETTINGS, 0, NULL, NULL, @@ -414,6 +417,7 @@ _PG_init(void) &pgss_track_planning, false, PGC_SUSET, + GUC_STATS_SETTINGS, 0, NULL, NULL, @@ -425,6 +429,7 @@ _PG_init(void) &pgss_save, true, PGC_SIGHUP, + GUC_STATS_SETTINGS, 0, NULL, NULL, diff --git a/contrib/pg_trgm/trgm_op.c b/contrib/pg_trgm/trgm_op.c index fb38135f7a..33c93084ee 100644 --- a/contrib/pg_trgm/trgm_op.c +++ b/contrib/pg_trgm/trgm_op.c @@ -72,6 +72,7 @@ _PG_init(void) 0.0, 1.0, PGC_USERSET, + GUC_INTERNAL_SETTINGS, 0, NULL, NULL, @@ -84,6 +85,7 @@ _PG_init(void) 0.0, 1.0, PGC_USERSET, + GUC_INTERNAL_SETTINGS, 0, NULL, NULL, @@ -96,6 +98,7 @@ _PG_init(void) 0.0, 1.0, PGC_USERSET, + GUC_INTERNAL_SETTINGS, 0, NULL, NULL, diff --git a/contrib/sepgsql/hooks.c b/contrib/sepgsql/hooks.c index 34de6158d6..4ba78767cd 100644 --- a/contrib/sepgsql/hooks.c +++ b/contrib/sepgsql/hooks.c @@ -431,6 +431,7 @@ _PG_init(void) &sepgsql_permissive, false, PGC_SIGHUP, + GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE, NULL, NULL, @@ -449,6 +450,7 @@ _PG_init(void) &sepgsql_debug_audit, false, PGC_USERSET, + GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE, NULL, NULL, diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 0a180341c2..a5b0ec7f66 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -939,6 +939,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_seqscan", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of sequential-scan plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_seqscan, @@ -949,6 +950,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_indexscan", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of index-scan plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_indexscan, @@ -959,6 +961,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_indexonlyscan", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of index-only-scan plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_indexonlyscan, @@ -969,6 +972,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_bitmapscan", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of bitmap-scan plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_bitmapscan, @@ -979,6 +983,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_tidscan", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of TID scan plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_tidscan, @@ -989,6 +994,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_sort", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of explicit sort steps."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_sort, @@ -998,7 +1004,8 @@ static struct config_bool ConfigureNamesBool[] = { {"enable_incremental_sort", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of incremental sort steps."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &enable_incremental_sort, true, @@ -1008,6 +1015,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_hashagg", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of hashed aggregation plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_hashagg, @@ -1018,6 +1026,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_material", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of materialization."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_material, @@ -1028,6 +1037,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_resultcache", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of result caching."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_resultcache, @@ -1038,6 +1048,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_nestloop", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of nested-loop join plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_nestloop, @@ -1048,6 +1059,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_mergejoin", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of merge join plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_mergejoin, @@ -1058,6 +1070,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_hashjoin", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of hash join plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_hashjoin, @@ -1068,6 +1081,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_gathermerge", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of gather merge plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_gathermerge, @@ -1078,6 +1092,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_partitionwise_join", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables partitionwise join."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_partitionwise_join, @@ -1088,6 +1103,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_partitionwise_aggregate", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables partitionwise aggregation and grouping."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_partitionwise_aggregate, @@ -1098,6 +1114,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_parallel_append", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of parallel append plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_parallel_append, @@ -1108,6 +1125,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_parallel_hash", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of parallel hash plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_parallel_hash, @@ -1120,6 +1138,7 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Allows the query planner and executor to compare partition " "bounds to conditions in the query to determine which " "partitions must be scanned."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_partition_pruning, @@ -1130,6 +1149,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_async_append", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of async append plans."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_async_append, @@ -1141,6 +1161,7 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Enables genetic query optimization."), gettext_noop("This algorithm attempts to do planning without " "exhaustive searching."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &enable_geqo, @@ -1152,6 +1173,7 @@ static struct config_bool ConfigureNamesBool[] = {"is_superuser", PGC_INTERNAL, UNGROUPED, gettext_noop("Shows whether the current user is a superuser."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT | GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &session_auth_is_superuser, @@ -1161,7 +1183,8 @@ static struct config_bool ConfigureNamesBool[] = { {"bonjour", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Enables advertising the server via Bonjour."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &enable_bonjour, false, @@ -1170,7 +1193,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_commit_timestamp", PGC_POSTMASTER, REPLICATION_SENDING, gettext_noop("Collects transaction commit time."), - NULL + NULL, + GUC_WAL_SETTINGS }, &track_commit_timestamp, false, @@ -1179,7 +1203,8 @@ static struct config_bool ConfigureNamesBool[] = { {"ssl", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Enables SSL connections."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &EnableSSL, false, @@ -1188,7 +1213,8 @@ static struct config_bool ConfigureNamesBool[] = { {"ssl_passphrase_command_supports_reload", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Also use ssl_passphrase_command during server reload."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &ssl_passphrase_command_supports_reload, false, @@ -1197,7 +1223,8 @@ static struct config_bool ConfigureNamesBool[] = { {"ssl_prefer_server_ciphers", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Give priority to server ciphersuite order."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &SSLPreferServerCiphers, true, @@ -1209,7 +1236,8 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("The server will use the fsync() system call in several places to make " "sure that updates are physically written to disk. This insures " "that a database cluster will recover to a consistent state after " - "an operating system or hardware crash.") + "an operating system or hardware crash."), + GUC_WAL_SETTINGS }, &enableFsync, true, @@ -1224,6 +1252,7 @@ static struct config_bool ConfigureNamesBool[] = "(but still report a warning), and continue processing. This " "behavior could cause crashes or other serious problems. Only " "has an effect if checksums are enabled."), + GUC_STORAGE_SETTINGS, GUC_NOT_IN_SAMPLE }, &ignore_checksum_failure, @@ -1238,6 +1267,7 @@ static struct config_bool ConfigureNamesBool[] = "zero_damaged_pages to true causes the system to instead report a " "warning, zero out the damaged page, and continue processing. This " "behavior will destroy data, namely all the rows on the damaged page."), + GUC_STORAGE_SETTINGS, GUC_NOT_IN_SAMPLE }, &zero_damaged_pages, @@ -1257,6 +1287,7 @@ static struct config_bool ConfigureNamesBool[] = "crashes, data loss, propagate or hide corruption, " "or other serious problems. Only has an effect " "during recovery or in standby mode."), + GUC_STORAGE_SETTINGS, GUC_NOT_IN_SAMPLE }, &ignore_invalid_pages, @@ -1270,7 +1301,8 @@ static struct config_bool ConfigureNamesBool[] = "only partially written to disk. During recovery, the row changes " "stored in WAL are not enough to recover. This option writes " "pages when first modified after a checkpoint to WAL so full recovery " - "is possible.") + "is possible."), + GUC_WAL_SETTINGS }, &fullPageWrites, true, @@ -1280,7 +1312,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_log_hints", PGC_POSTMASTER, WAL_SETTINGS, gettext_noop("Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification."), - NULL + NULL, + GUC_WAL_SETTINGS }, &wal_log_hints, false, @@ -1290,7 +1323,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_compression", PGC_SUSET, WAL_SETTINGS, gettext_noop("Compresses full-page writes written in WAL file."), - NULL + NULL, + GUC_WAL_SETTINGS }, &wal_compression, false, @@ -1300,7 +1334,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_init_zero", PGC_SUSET, WAL_SETTINGS, gettext_noop("Writes zeroes to new WAL files before first use."), - NULL + NULL, + GUC_WAL_SETTINGS }, &wal_init_zero, true, @@ -1310,7 +1345,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_recycle", PGC_SUSET, WAL_SETTINGS, gettext_noop("Recycles WAL files by renaming them."), - NULL + NULL, + GUC_WAL_SETTINGS }, &wal_recycle, true, @@ -1320,7 +1356,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_checkpoints", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Logs each checkpoint."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_checkpoints, false, @@ -1329,7 +1366,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_connections", PGC_SU_BACKEND, LOGGING_WHAT, gettext_noop("Logs each successful connection."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &Log_connections, false, @@ -1338,7 +1376,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_disconnections", PGC_SU_BACKEND, LOGGING_WHAT, gettext_noop("Logs end of a session, including duration."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &Log_disconnections, false, @@ -1347,7 +1386,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_replication_commands", PGC_SUSET, LOGGING_WHAT, gettext_noop("Logs each replication command."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_replication_commands, false, @@ -1357,6 +1397,7 @@ static struct config_bool ConfigureNamesBool[] = {"debug_assertions", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether the running server has assertion checks enabled."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &assert_enabled, @@ -1371,7 +1412,8 @@ static struct config_bool ConfigureNamesBool[] = { {"exit_on_error", PGC_USERSET, ERROR_HANDLING_OPTIONS, gettext_noop("Terminate session on any error."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &ExitOnAnyError, false, @@ -1380,7 +1422,8 @@ static struct config_bool ConfigureNamesBool[] = { {"restart_after_crash", PGC_SIGHUP, ERROR_HANDLING_OPTIONS, gettext_noop("Reinitialize server after backend crash."), - NULL + NULL, + GUC_WAL_SETTINGS }, &restart_after_crash, true, @@ -1389,7 +1432,8 @@ static struct config_bool ConfigureNamesBool[] = { {"remove_temp_files_after_crash", PGC_SIGHUP, ERROR_HANDLING_OPTIONS, gettext_noop("Remove temporary files after backend crash."), - NULL + NULL, + GUC_WAL_SETTINGS }, &remove_temp_files_after_crash, true, @@ -1399,7 +1443,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_duration", PGC_SUSET, LOGGING_WHAT, gettext_noop("Logs the duration of each completed SQL statement."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_duration, false, @@ -1408,7 +1453,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_print_parse", PGC_USERSET, LOGGING_WHAT, gettext_noop("Logs each query's parse tree."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &Debug_print_parse, false, @@ -1417,7 +1463,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_print_rewritten", PGC_USERSET, LOGGING_WHAT, gettext_noop("Logs each query's rewritten parse tree."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &Debug_print_rewritten, false, @@ -1426,7 +1473,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_print_plan", PGC_USERSET, LOGGING_WHAT, gettext_noop("Logs each query's execution plan."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &Debug_print_plan, false, @@ -1435,7 +1483,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_pretty_print", PGC_USERSET, LOGGING_WHAT, gettext_noop("Indents parse and plan tree displays."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &Debug_pretty_print, true, @@ -1444,7 +1493,8 @@ static struct config_bool ConfigureNamesBool[] = { {"compute_query_id", PGC_SUSET, STATS_MONITORING, gettext_noop("Compute query identifiers."), - NULL + NULL, + GUC_STATS_SETTINGS }, &compute_query_id, false, @@ -1453,7 +1503,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_parser_stats", PGC_SUSET, STATS_MONITORING, gettext_noop("Writes parser performance statistics to the server log."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_parser_stats, false, @@ -1462,7 +1513,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_planner_stats", PGC_SUSET, STATS_MONITORING, gettext_noop("Writes planner performance statistics to the server log."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_planner_stats, false, @@ -1471,7 +1523,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_executor_stats", PGC_SUSET, STATS_MONITORING, gettext_noop("Writes executor performance statistics to the server log."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_executor_stats, false, @@ -1480,7 +1533,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_statement_stats", PGC_SUSET, STATS_MONITORING, gettext_noop("Writes cumulative performance statistics to the server log."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_statement_stats, false, @@ -1491,6 +1545,7 @@ static struct config_bool ConfigureNamesBool[] = {"log_btree_build_stats", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Logs system resource usage statistics (memory and CPU) on various B-tree operations."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &log_btree_build_stats, @@ -1504,7 +1559,8 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Collects information about executing commands."), gettext_noop("Enables the collection of information on the currently " "executing command of each session, along with " - "the time at which that command began execution.") + "the time at which that command began execution."), + GUC_STATS_SETTINGS }, &pgstat_track_activities, true, @@ -1513,7 +1569,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_counts", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects statistics on database activity."), - NULL + NULL, + GUC_STATS_SETTINGS }, &pgstat_track_counts, true, @@ -1522,7 +1579,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_io_timing", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects timing statistics for database I/O activity."), - NULL + NULL, + GUC_STATS_SETTINGS }, &track_io_timing, false, @@ -1531,7 +1589,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_wal_io_timing", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects timing statistics for WAL I/O activity."), - NULL + NULL, + GUC_STATS_SETTINGS }, &track_wal_io_timing, false, @@ -1541,7 +1600,8 @@ static struct config_bool ConfigureNamesBool[] = { {"update_process_title", PGC_SUSET, PROCESS_TITLE, gettext_noop("Updates the process title to show the active SQL command."), - gettext_noop("Enables updating of the process title every time a new SQL command is received by the server.") + gettext_noop("Enables updating of the process title every time a new SQL command is received by the server."), + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &update_process_title, #ifdef WIN32 @@ -1555,7 +1615,8 @@ static struct config_bool ConfigureNamesBool[] = { {"autovacuum", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Starts the autovacuum subprocess."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE }, &autovacuum_start_daemon, true, @@ -1566,6 +1627,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_notify", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Generates debugging output for LISTEN and NOTIFY."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_notify, @@ -1578,6 +1640,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_locks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about lock usage."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_locks, @@ -1588,6 +1651,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_userlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about user lock usage."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_userlocks, @@ -1598,6 +1662,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_lwlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about lightweight lock usage."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_lwlocks, @@ -1608,6 +1673,7 @@ static struct config_bool ConfigureNamesBool[] = {"debug_deadlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Dumps information about all current locks when a deadlock timeout occurs."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Debug_deadlocks, @@ -1619,7 +1685,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_lock_waits", PGC_SUSET, LOGGING_WHAT, gettext_noop("Logs long lock waits."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_lock_waits, false, @@ -1628,7 +1695,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_recovery_conflict_waits", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Logs standby recovery conflict waits."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_recovery_conflict_waits, false, @@ -1640,7 +1708,8 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("By default, connection logs only show the IP address " "of the connecting host. If you want them to show the host name you " "can turn this on, but depending on your host name resolution " - "setup it might impose a non-negligible performance penalty.") + "setup it might impose a non-negligible performance penalty."), + GUC_INTERFACE_SETTINGS | GUC_LOGGING_SETTINGS }, &log_hostname, false, @@ -1653,7 +1722,8 @@ static struct config_bool ConfigureNamesBool[] = "(or NULL = expr) are treated as expr IS NULL, that is, they " "return true if expr evaluates to the null value, and false " "otherwise. The correct behavior of expr = NULL is to always " - "return null (unknown).") + "return null (unknown)."), + GUC_INTERNAL_SETTINGS }, &Transform_null_equals, false, @@ -1662,7 +1732,8 @@ static struct config_bool ConfigureNamesBool[] = { {"db_user_namespace", PGC_SIGHUP, CONN_AUTH_AUTH, gettext_noop("Enables per-database user names."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &Db_user_namespace, false, @@ -1672,6 +1743,7 @@ static struct config_bool ConfigureNamesBool[] = {"default_transaction_read_only", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the default read-only status of new transactions."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT }, &DefaultXactReadOnly, @@ -1682,6 +1754,7 @@ static struct config_bool ConfigureNamesBool[] = {"transaction_read_only", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the current transaction's read-only status."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactReadOnly, @@ -1691,7 +1764,8 @@ static struct config_bool ConfigureNamesBool[] = { {"default_transaction_deferrable", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the default deferrable status of new transactions."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &DefaultXactDeferrable, false, @@ -1701,6 +1775,7 @@ static struct config_bool ConfigureNamesBool[] = {"transaction_deferrable", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactDeferrable, @@ -1710,7 +1785,8 @@ static struct config_bool ConfigureNamesBool[] = { {"row_security", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Enable row security."), - gettext_noop("When enabled, row security will be applied to all users.") + gettext_noop("When enabled, row security will be applied to all users."), + GUC_INTERNAL_SETTINGS }, &row_security, true, @@ -1719,7 +1795,8 @@ static struct config_bool ConfigureNamesBool[] = { {"check_function_bodies", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &check_function_bodies, true, @@ -1730,7 +1807,8 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Enable input of NULL elements in arrays."), gettext_noop("When turned on, unquoted NULL in an array input " "value means a null value; " - "otherwise it is taken literally.") + "otherwise it is taken literally."), + GUC_INTERNAL_SETTINGS }, &Array_nulls, true, @@ -1746,6 +1824,7 @@ static struct config_bool ConfigureNamesBool[] = {"default_with_oids", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("WITH OIDS is no longer supported; this can only be false."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE }, &default_with_oids, @@ -1755,7 +1834,8 @@ static struct config_bool ConfigureNamesBool[] = { {"logging_collector", PGC_POSTMASTER, LOGGING_WHERE, gettext_noop("Start a subprocess to capture stderr output and/or csvlogs into log files."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS }, &Logging_collector, false, @@ -1764,7 +1844,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_truncate_on_rotation", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Truncate existing log files of same name during log rotation."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS }, &Log_truncate_on_rotation, false, @@ -1776,6 +1857,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_sort", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Emit information about resource usage in sorting."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &trace_sort, @@ -1790,6 +1872,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_syncscan", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Generate debugging output for synchronized scanning."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &trace_syncscan, @@ -1805,6 +1888,7 @@ static struct config_bool ConfigureNamesBool[] = "optimize_bounded_sort", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enable bounded sorting using heap sort."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_EXPLAIN }, &optimize_bounded_sort, @@ -1818,6 +1902,7 @@ static struct config_bool ConfigureNamesBool[] = {"wal_debug", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emit WAL-related debugging output."), NULL, + GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &XLOG_DEBUG, @@ -1830,6 +1915,7 @@ static struct config_bool ConfigureNamesBool[] = {"integer_datetimes", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether datetimes are integer based."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &integer_datetimes, @@ -1840,7 +1926,8 @@ static struct config_bool ConfigureNamesBool[] = { {"krb_caseins_users", PGC_SIGHUP, CONN_AUTH_AUTH, gettext_noop("Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &pg_krb_caseins_users, false, @@ -1850,7 +1937,8 @@ static struct config_bool ConfigureNamesBool[] = { {"escape_string_warning", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Warn about backslash escapes in ordinary string literals."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &escape_string_warning, true, @@ -1861,6 +1949,7 @@ static struct config_bool ConfigureNamesBool[] = {"standard_conforming_strings", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Causes '...' strings to treat backslashes literally."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT }, &standard_conforming_strings, @@ -1871,7 +1960,8 @@ static struct config_bool ConfigureNamesBool[] = { {"synchronize_seqscans", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Enable synchronized sequential scans."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &synchronize_seqscans, true, @@ -1881,7 +1971,8 @@ static struct config_bool ConfigureNamesBool[] = { {"recovery_target_inclusive", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets whether to include or exclude transaction with recovery target."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recoveryTargetInclusive, true, @@ -1891,7 +1982,8 @@ static struct config_bool ConfigureNamesBool[] = { {"hot_standby", PGC_POSTMASTER, REPLICATION_STANDBY, gettext_noop("Allows connections and queries during recovery."), - NULL + NULL, + GUC_WAL_SETTINGS }, &EnableHotStandby, true, @@ -1901,7 +1993,8 @@ static struct config_bool ConfigureNamesBool[] = { {"hot_standby_feedback", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Allows feedback from a hot standby to the primary that will avoid query conflicts."), - NULL + NULL, + GUC_WAL_SETTINGS }, &hot_standby_feedback, false, @@ -1912,6 +2005,7 @@ static struct config_bool ConfigureNamesBool[] = {"in_hot_standby", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether hot standby is currently active."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &in_hot_standby, @@ -1923,6 +2017,7 @@ static struct config_bool ConfigureNamesBool[] = {"allow_system_table_mods", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Allows modifications of the structure of system tables."), NULL, + GUC_ALL_PRIVILEGES, GUC_NOT_IN_SAMPLE }, &allowSystemTableMods, @@ -1935,6 +2030,7 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Disables reading from system indexes."), gettext_noop("It does not prevent updating the indexes, so it is safe " "to use. The worst consequence is slowness."), + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &IgnoreSystemIndexes, @@ -1946,7 +2042,8 @@ static struct config_bool ConfigureNamesBool[] = {"lo_compat_privileges", PGC_SUSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Enables backward compatibility mode for privilege checks on large objects."), gettext_noop("Skips privilege checks when reading or modifying large objects, " - "for compatibility with PostgreSQL releases prior to 9.0.") + "for compatibility with PostgreSQL releases prior to 9.0."), + GUC_SECURITY_SETTINGS }, &lo_compat_privileges, false, @@ -1957,6 +2054,7 @@ static struct config_bool ConfigureNamesBool[] = {"quote_all_identifiers", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("When generating SQL fragments, quote all identifiers."), NULL, + GUC_INTERNAL_SETTINGS, }, "e_all_identifiers, false, @@ -1967,6 +2065,7 @@ static struct config_bool ConfigureNamesBool[] = {"data_checksums", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether data checksums are turned on for this cluster."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &data_checksums, @@ -1977,7 +2076,8 @@ static struct config_bool ConfigureNamesBool[] = { {"syslog_sequence_numbers", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Add sequence number to syslog messages to avoid duplicate suppression."), - NULL + NULL, + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &syslog_sequence_numbers, true, @@ -1987,7 +2087,8 @@ static struct config_bool ConfigureNamesBool[] = { {"syslog_split_messages", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Split messages sent to syslog by lines and to fit into 1024 bytes."), - NULL + NULL, + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &syslog_split_messages, true, @@ -1998,6 +2099,7 @@ static struct config_bool ConfigureNamesBool[] = {"parallel_leader_participation", PGC_USERSET, RESOURCES_ASYNCHRONOUS, gettext_noop("Controls whether Gather and Gather Merge also run subplans."), gettext_noop("Should gather nodes also run subplans or just gather tuples?"), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, ¶llel_leader_participation, @@ -2009,6 +2111,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit", PGC_USERSET, QUERY_TUNING_OTHER, gettext_noop("Allow JIT compilation."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &jit_enabled, @@ -2020,6 +2123,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_debugging_support", PGC_SU_BACKEND, DEVELOPER_OPTIONS, gettext_noop("Register JIT-compiled functions with debugger."), NULL, + GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE }, &jit_debugging_support, @@ -2037,6 +2141,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_dump_bitcode", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Write out LLVM bitcode to facilitate JIT debugging."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE }, &jit_dump_bitcode, @@ -2048,6 +2153,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_expressions", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Allow JIT compilation of expressions."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &jit_expressions, @@ -2059,6 +2165,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_profiling_support", PGC_SU_BACKEND, DEVELOPER_OPTIONS, gettext_noop("Register JIT-compiled functions with perf profiler."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE }, &jit_profiling_support, @@ -2076,6 +2183,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_tuple_deforming", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Allow JIT compilation of tuple deforming."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE }, &jit_tuple_deforming, @@ -2086,6 +2194,8 @@ static struct config_bool ConfigureNamesBool[] = { {"data_sync_retry", PGC_POSTMASTER, ERROR_HANDLING_OPTIONS, gettext_noop("Whether to continue running after a failure to sync data files."), + NULL, + GUC_STORAGE_SETTINGS }, &data_sync_retry, false, @@ -2095,6 +2205,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_receiver_create_temp_slot", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured."), + NULL, + GUC_WAL_SETTINGS, }, &wal_receiver_create_temp_slot, false, @@ -2115,6 +2227,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Forces a switch to the next WAL file if a " "new file has not been started within N seconds."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_S }, &XLogArchiveTimeout, @@ -2125,6 +2238,7 @@ static struct config_int ConfigureNamesInt[] = {"post_auth_delay", PGC_BACKEND, DEVELOPER_OPTIONS, gettext_noop("Waits N seconds on connection startup after authentication."), gettext_noop("This allows attaching a debugger to the process."), + GUC_INTERFACE_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_UNIT_S }, &PostAuthDelay, @@ -2135,7 +2249,8 @@ static struct config_int ConfigureNamesInt[] = {"default_statistics_target", PGC_USERSET, QUERY_TUNING_OTHER, gettext_noop("Sets the default statistics target."), gettext_noop("This applies to table columns that have not had a " - "column-specific target set via ALTER TABLE SET STATISTICS.") + "column-specific target set via ALTER TABLE SET STATISTICS."), + GUC_INTERNAL_SETTINGS }, &default_statistics_target, 100, 1, 10000, @@ -2148,6 +2263,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("The planner will merge subqueries into upper " "queries if the resulting FROM list would have no more than " "this many items."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &from_collapse_limit, @@ -2161,6 +2277,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("The planner will flatten explicit JOIN " "constructs into lists of FROM items whenever a " "list of no more than this many items would result."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &join_collapse_limit, @@ -2171,6 +2288,7 @@ static struct config_int ConfigureNamesInt[] = {"geqo_threshold", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("Sets the threshold of FROM items beyond which GEQO is used."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &geqo_threshold, @@ -2181,6 +2299,7 @@ static struct config_int ConfigureNamesInt[] = {"geqo_effort", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: effort is used to set the default for other GEQO parameters."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &Geqo_effort, @@ -2191,6 +2310,7 @@ static struct config_int ConfigureNamesInt[] = {"geqo_pool_size", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: number of individuals in the population."), gettext_noop("Zero selects a suitable default value."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &Geqo_pool_size, @@ -2201,6 +2321,7 @@ static struct config_int ConfigureNamesInt[] = {"geqo_generations", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: number of iterations of the algorithm."), gettext_noop("Zero selects a suitable default value."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &Geqo_generations, @@ -2213,6 +2334,7 @@ static struct config_int ConfigureNamesInt[] = {"deadlock_timeout", PGC_SUSET, LOCK_MANAGEMENT, gettext_noop("Sets the time to wait on a lock before checking for deadlock."), NULL, + GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS, GUC_UNIT_MS }, &DeadlockTimeout, @@ -2224,6 +2346,7 @@ static struct config_int ConfigureNamesInt[] = {"max_standby_archive_delay", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &max_standby_archive_delay, @@ -2235,6 +2358,7 @@ static struct config_int ConfigureNamesInt[] = {"max_standby_streaming_delay", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &max_standby_streaming_delay, @@ -2246,6 +2370,7 @@ static struct config_int ConfigureNamesInt[] = {"recovery_min_apply_delay", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the minimum delay for applying changes during recovery."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &recovery_min_apply_delay, @@ -2257,6 +2382,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_receiver_status_interval", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the maximum interval between WAL receiver status reports to the sending server."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_S }, &wal_receiver_status_interval, @@ -2268,6 +2394,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_receiver_timeout", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the maximum wait time to receive data from the sending server."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &wal_receiver_timeout, @@ -2278,7 +2405,8 @@ static struct config_int ConfigureNamesInt[] = { {"max_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the maximum number of concurrent connections."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &MaxConnections, 100, 1, MAX_BACKENDS, @@ -2289,7 +2417,8 @@ static struct config_int ConfigureNamesInt[] = /* see max_connections */ {"superuser_reserved_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the number of connection slots reserved for superusers."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &ReservedBackends, 3, 0, MAX_BACKENDS, @@ -2300,6 +2429,7 @@ static struct config_int ConfigureNamesInt[] = {"min_dynamic_shared_memory", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Amount of dynamic shared memory reserved at startup."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_MB }, &min_dynamic_shared_memory, @@ -2315,6 +2445,7 @@ static struct config_int ConfigureNamesInt[] = {"shared_buffers", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Sets the number of shared memory buffers used by the server."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_BLOCKS }, &NBuffers, @@ -2326,6 +2457,7 @@ static struct config_int ConfigureNamesInt[] = {"temp_buffers", PGC_USERSET, RESOURCES_MEM, gettext_noop("Sets the maximum number of temporary buffers used by each session."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS | GUC_EXPLAIN }, &num_temp_buffers, @@ -2336,7 +2468,8 @@ static struct config_int ConfigureNamesInt[] = { {"port", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the TCP port the server listens on."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &PostPortNumber, DEF_PGPORT, 1, 65535, @@ -2351,7 +2484,8 @@ static struct config_int ConfigureNamesInt[] = "to be a numeric mode specification in the form " "accepted by the chmod and umask system calls. " "(To use the customary octal format the number must " - "start with a 0 (zero).)") + "start with a 0 (zero).)"), + GUC_INTERFACE_SETTINGS }, &Unix_socket_permissions, 0777, 0000, 0777, @@ -2365,7 +2499,8 @@ static struct config_int ConfigureNamesInt[] = "to be a numeric mode specification in the form " "accepted by the chmod and umask system calls. " "(To use the customary octal format the number must " - "start with a 0 (zero).)") + "start with a 0 (zero).)"), + GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS }, &Log_file_mode, 0600, 0000, 0777, @@ -2380,6 +2515,7 @@ static struct config_int ConfigureNamesInt[] = "in the form accepted by the chmod and umask system " "calls. (To use the customary octal format the number " "must start with a 0 (zero).)"), + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &data_directory_mode, @@ -2393,6 +2529,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("This much memory can be used by each internal " "sort operation and hash table before switching to " "temporary disk files."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_KB | GUC_EXPLAIN }, &work_mem, @@ -2404,6 +2541,7 @@ static struct config_int ConfigureNamesInt[] = {"maintenance_work_mem", PGC_USERSET, RESOURCES_MEM, gettext_noop("Sets the maximum memory to be used for maintenance operations."), gettext_noop("This includes operations such as VACUUM and CREATE INDEX."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_KB }, &maintenance_work_mem, @@ -2416,6 +2554,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the maximum memory to be used for logical decoding."), gettext_noop("This much memory can be used by each internal " "reorder buffer before spilling to disk."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_KB }, &logical_decoding_work_mem, @@ -2432,6 +2571,7 @@ static struct config_int ConfigureNamesInt[] = {"max_stack_depth", PGC_SUSET, RESOURCES_MEM, gettext_noop("Sets the maximum stack depth, in kilobytes."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_KB }, &max_stack_depth, @@ -2443,6 +2583,7 @@ static struct config_int ConfigureNamesInt[] = {"temp_file_limit", PGC_SUSET, RESOURCES_DISK, gettext_noop("Limits the total size of all temporary files used by each process."), gettext_noop("-1 means no limit."), + GUC_RESOURCE_USAGE, GUC_UNIT_KB }, &temp_file_limit, @@ -2453,7 +2594,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_cost_page_hit", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost for a page found in the buffer cache."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &VacuumCostPageHit, 1, 0, 10000, @@ -2463,7 +2605,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_cost_page_miss", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost for a page not found in the buffer cache."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &VacuumCostPageMiss, 2, 0, 10000, @@ -2473,7 +2616,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_cost_page_dirty", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost for a page dirtied by vacuum."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &VacuumCostPageDirty, 20, 0, 10000, @@ -2483,7 +2627,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_cost_limit", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost amount available before napping."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &VacuumCostLimit, 200, 1, 10000, @@ -2493,7 +2638,8 @@ static struct config_int ConfigureNamesInt[] = { {"autovacuum_vacuum_cost_limit", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Vacuum cost amount available before napping, for autovacuum."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_vac_cost_limit, -1, -1, 10000, @@ -2503,7 +2649,8 @@ static struct config_int ConfigureNamesInt[] = { {"max_files_per_process", PGC_POSTMASTER, RESOURCES_KERNEL, gettext_noop("Sets the maximum number of simultaneously open files for each server process."), - NULL + NULL, + GUC_RESOURCE_USAGE }, &max_files_per_process, 1000, 64, INT_MAX, @@ -2516,7 +2663,8 @@ static struct config_int ConfigureNamesInt[] = { {"max_prepared_transactions", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Sets the maximum number of simultaneously prepared transactions."), - NULL + NULL, + GUC_RESOURCE_USAGE }, &max_prepared_xacts, 0, 0, MAX_BACKENDS, @@ -2528,6 +2676,7 @@ static struct config_int ConfigureNamesInt[] = {"trace_lock_oidmin", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Sets the minimum OID of tables for tracking locks."), gettext_noop("Is used to avoid output on system tables."), + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_lock_oidmin, @@ -2538,6 +2687,7 @@ static struct config_int ConfigureNamesInt[] = {"trace_lock_table", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Sets the OID of the table with unconditionally lock tracing."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &Trace_lock_table, @@ -2550,6 +2700,7 @@ static struct config_int ConfigureNamesInt[] = {"statement_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the maximum allowed duration of any statement."), gettext_noop("A value of 0 turns off the timeout."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &StatementTimeout, @@ -2561,6 +2712,7 @@ static struct config_int ConfigureNamesInt[] = {"lock_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the maximum allowed duration of any wait for a lock."), gettext_noop("A value of 0 turns off the timeout."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &LockTimeout, @@ -2572,6 +2724,7 @@ static struct config_int ConfigureNamesInt[] = {"idle_in_transaction_session_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the maximum allowed idle time between queries, when in a transaction."), gettext_noop("A value of 0 turns off the timeout."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &IdleInTransactionSessionTimeout, @@ -2583,6 +2736,7 @@ static struct config_int ConfigureNamesInt[] = {"idle_session_timeout", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the maximum allowed idle time between queries, when not in a transaction."), gettext_noop("A value of 0 turns off the timeout."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &IdleSessionTimeout, @@ -2593,7 +2747,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Minimum age at which VACUUM should freeze a table row."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_freeze_min_age, 50000000, 0, 1000000000, @@ -2603,7 +2758,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Age at which VACUUM should scan whole table to freeze tuples."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_freeze_table_age, 150000000, 0, 2000000000, @@ -2613,7 +2769,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_multixact_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Minimum age at which VACUUM should freeze a MultiXactId in a table row."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_multixact_freeze_min_age, 5000000, 0, 1000000000, @@ -2623,7 +2780,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_multixact_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Multixact age at which VACUUM should scan whole table to freeze tuples."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_multixact_freeze_table_age, 150000000, 0, 2000000000, @@ -2633,7 +2791,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_defer_cleanup_age", PGC_SIGHUP, REPLICATION_PRIMARY, gettext_noop("Number of transactions by which VACUUM and HOT cleanup should be deferred, if any."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &vacuum_defer_cleanup_age, 0, 0, 1000000, /* see ComputeXidHorizons */ @@ -2642,7 +2801,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Age at which VACUUM should trigger failsafe to avoid a wraparound outage."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_failsafe_age, 1600000000, 0, 2100000000, @@ -2651,7 +2811,8 @@ static struct config_int ConfigureNamesInt[] = { {"vacuum_multixact_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &vacuum_multixact_failsafe_age, 1600000000, 0, 2100000000, @@ -2666,7 +2827,8 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the maximum number of locks per transaction."), gettext_noop("The shared lock table is sized on the assumption that " "at most max_locks_per_transaction * max_connections distinct " - "objects will need to be locked at any one time.") + "objects will need to be locked at any one time."), + GUC_RESOURCE_USAGE }, &max_locks_per_xact, 64, 10, INT_MAX, @@ -2678,7 +2840,8 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the maximum number of predicate locks per transaction."), gettext_noop("The shared predicate lock table is sized on the assumption that " "at most max_pred_locks_per_transaction * max_connections distinct " - "objects will need to be locked at any one time.") + "objects will need to be locked at any one time."), + GUC_RESOURCE_USAGE }, &max_predicate_locks_per_xact, 64, 10, INT_MAX, @@ -2689,7 +2852,8 @@ static struct config_int ConfigureNamesInt[] = {"max_pred_locks_per_relation", PGC_SIGHUP, LOCK_MANAGEMENT, gettext_noop("Sets the maximum number of predicate-locked pages and tuples per relation."), gettext_noop("If more than this total of pages and tuples in the same relation are locked " - "by a connection, those locks are replaced by a relation-level lock.") + "by a connection, those locks are replaced by a relation-level lock."), + GUC_RESOURCE_USAGE }, &max_predicate_locks_per_relation, -2, INT_MIN, INT_MAX, @@ -2700,7 +2864,8 @@ static struct config_int ConfigureNamesInt[] = {"max_pred_locks_per_page", PGC_SIGHUP, LOCK_MANAGEMENT, gettext_noop("Sets the maximum number of predicate-locked tuples per page."), gettext_noop("If more than this number of tuples on the same page are locked " - "by a connection, those locks are replaced by a page-level lock.") + "by a connection, those locks are replaced by a page-level lock."), + GUC_RESOURCE_USAGE }, &max_predicate_locks_per_page, 2, 0, INT_MAX, @@ -2711,6 +2876,7 @@ static struct config_int ConfigureNamesInt[] = {"authentication_timeout", PGC_SIGHUP, CONN_AUTH_AUTH, gettext_noop("Sets the maximum allowed time to complete client authentication."), NULL, + GUC_INTERFACE_SETTINGS, GUC_UNIT_S }, &AuthenticationTimeout, @@ -2723,6 +2889,7 @@ static struct config_int ConfigureNamesInt[] = {"pre_auth_delay", PGC_SIGHUP, DEVELOPER_OPTIONS, gettext_noop("Waits N seconds on connection startup before authentication."), gettext_noop("This allows attaching a debugger to the process."), + GUC_INTERFACE_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_UNIT_S }, &PreAuthDelay, @@ -2734,6 +2901,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_keep_size", PGC_SIGHUP, REPLICATION_SENDING, gettext_noop("Sets the size of WAL files held for standby servers."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MB }, &wal_keep_size_mb, @@ -2745,6 +2913,7 @@ static struct config_int ConfigureNamesInt[] = {"min_wal_size", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Sets the minimum size to shrink the WAL to."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MB }, &min_wal_size_mb, @@ -2757,6 +2926,7 @@ static struct config_int ConfigureNamesInt[] = {"max_wal_size", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Sets the WAL size that triggers a checkpoint."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MB }, &max_wal_size_mb, @@ -2769,6 +2939,7 @@ static struct config_int ConfigureNamesInt[] = {"checkpoint_timeout", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Sets the maximum time between automatic WAL checkpoints."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_S }, &CheckPointTimeout, @@ -2783,6 +2954,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Write a message to the server log if checkpoints " "caused by the filling of checkpoint segment files happens more " "frequently than this number of seconds. Zero turns off the warning."), + GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS, GUC_UNIT_S }, &CheckPointWarning, @@ -2794,6 +2966,7 @@ static struct config_int ConfigureNamesInt[] = {"checkpoint_flush_after", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Number of pages after which previously performed writes are flushed to disk."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_BLOCKS }, &checkpoint_flush_after, @@ -2805,6 +2978,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_buffers", PGC_POSTMASTER, WAL_SETTINGS, gettext_noop("Sets the number of disk-page buffers in shared memory for WAL."), NULL, + GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS, GUC_UNIT_XBLOCKS }, &XLOGbuffers, @@ -2816,6 +2990,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_writer_delay", PGC_SIGHUP, WAL_SETTINGS, gettext_noop("Time between WAL flushes performed in the WAL writer."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &WalWriterDelay, @@ -2827,6 +3002,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_writer_flush_after", PGC_SIGHUP, WAL_SETTINGS, gettext_noop("Amount of WAL written out by WAL writer that triggers a flush."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_XBLOCKS }, &WalWriterFlushAfter, @@ -2838,6 +3014,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_skip_threshold", PGC_USERSET, WAL_SETTINGS, gettext_noop("Minimum size of new file to fsync instead of writing WAL."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_KB }, &wal_skip_threshold, @@ -2848,7 +3025,8 @@ static struct config_int ConfigureNamesInt[] = { {"max_wal_senders", PGC_POSTMASTER, REPLICATION_SENDING, gettext_noop("Sets the maximum number of simultaneously running WAL sender processes."), - NULL + NULL, + GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS }, &max_wal_senders, 10, 0, MAX_BACKENDS, @@ -2859,7 +3037,8 @@ static struct config_int ConfigureNamesInt[] = /* see max_wal_senders */ {"max_replication_slots", PGC_POSTMASTER, REPLICATION_SENDING, gettext_noop("Sets the maximum number of simultaneously defined replication slots."), - NULL + NULL, + GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS }, &max_replication_slots, 10, 0, MAX_BACKENDS /* XXX? */ , @@ -2872,6 +3051,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Replication slots will be marked as failed, and segments released " "for deletion or recycling, if this much space is occupied by WAL " "on disk."), + GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS, GUC_UNIT_MB }, &max_slot_wal_keep_size_mb, @@ -2883,6 +3063,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_sender_timeout", PGC_USERSET, REPLICATION_SENDING, gettext_noop("Sets the maximum time to wait for WAL replication."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &wal_sender_timeout, @@ -2894,7 +3075,8 @@ static struct config_int ConfigureNamesInt[] = {"commit_delay", PGC_SUSET, WAL_SETTINGS, gettext_noop("Sets the delay in microseconds between transaction commit and " "flushing WAL to disk."), - NULL + NULL, + GUC_WAL_SETTINGS /* we have no microseconds designation, so can't supply units here */ }, &CommitDelay, @@ -2906,7 +3088,8 @@ static struct config_int ConfigureNamesInt[] = {"commit_siblings", PGC_USERSET, WAL_SETTINGS, gettext_noop("Sets the minimum concurrent open transactions before performing " "commit_delay."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &CommitSiblings, 5, 0, 1000, @@ -2919,7 +3102,8 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("This affects real, double precision, and geometric data types. " "A zero or negative parameter value is added to the standard " "number of digits (FLT_DIG or DBL_DIG as appropriate). " - "Any value greater than zero selects precise output mode.") + "Any value greater than zero selects precise output mode."), + GUC_INTERNAL_SETTINGS }, &extra_float_digits, 1, -15, 3, @@ -2932,6 +3116,7 @@ static struct config_int ConfigureNamesInt[] = "a sample of statements will be logged." " Sampling is determined by log_statement_sample_rate."), gettext_noop("Zero logs a sample of all queries. -1 turns this feature off."), + GUC_LOGGING_SETTINGS, GUC_UNIT_MS }, &log_min_duration_sample, @@ -2944,6 +3129,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the minimum execution time above which " "all statements will be logged."), gettext_noop("Zero prints all queries. -1 turns this feature off."), + GUC_LOGGING_SETTINGS, GUC_UNIT_MS }, &log_min_duration_statement, @@ -2956,6 +3142,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the minimum execution time above which " "autovacuum actions will be logged."), gettext_noop("Zero prints all actions. -1 turns autovacuum logging off."), + GUC_LOGGING_SETTINGS, GUC_UNIT_MS }, &Log_autovacuum_min_duration, @@ -2967,6 +3154,7 @@ static struct config_int ConfigureNamesInt[] = {"log_parameter_max_length", PGC_SUSET, LOGGING_WHAT, gettext_noop("When logging statements, limit logged parameter values to first N bytes."), gettext_noop("-1 to print values in full."), + GUC_LOGGING_SETTINGS, GUC_UNIT_BYTE }, &log_parameter_max_length, @@ -2978,6 +3166,7 @@ static struct config_int ConfigureNamesInt[] = {"log_parameter_max_length_on_error", PGC_USERSET, LOGGING_WHAT, gettext_noop("When reporting an error, limit logged parameter values to first N bytes."), gettext_noop("-1 to print values in full."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_BYTE }, &log_parameter_max_length_on_error, @@ -2989,6 +3178,7 @@ static struct config_int ConfigureNamesInt[] = {"bgwriter_delay", PGC_SIGHUP, RESOURCES_BGWRITER, gettext_noop("Background writer sleep time between rounds."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_MS }, &BgWriterDelay, @@ -2999,7 +3189,8 @@ static struct config_int ConfigureNamesInt[] = { {"bgwriter_lru_maxpages", PGC_SIGHUP, RESOURCES_BGWRITER, gettext_noop("Background writer maximum number of LRU pages to flush per round."), - NULL + NULL, + GUC_RESOURCE_USAGE }, &bgwriter_lru_maxpages, 100, 0, INT_MAX / 2, /* Same upper limit as shared_buffers */ @@ -3010,6 +3201,7 @@ static struct config_int ConfigureNamesInt[] = {"bgwriter_flush_after", PGC_SIGHUP, RESOURCES_BGWRITER, gettext_noop("Number of pages after which previously performed writes are flushed to disk."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_BLOCKS }, &bgwriter_flush_after, @@ -3023,6 +3215,7 @@ static struct config_int ConfigureNamesInt[] = RESOURCES_ASYNCHRONOUS, gettext_noop("Number of simultaneous requests that can be handled efficiently by the disk subsystem."), NULL, + GUC_RESOURCE_USAGE, GUC_EXPLAIN }, &effective_io_concurrency, @@ -3041,6 +3234,7 @@ static struct config_int ConfigureNamesInt[] = RESOURCES_ASYNCHRONOUS, gettext_noop("A variant of effective_io_concurrency that is used for maintenance work."), NULL, + GUC_RESOURCE_USAGE, GUC_EXPLAIN }, &maintenance_io_concurrency, @@ -3057,6 +3251,7 @@ static struct config_int ConfigureNamesInt[] = {"backend_flush_after", PGC_USERSET, RESOURCES_ASYNCHRONOUS, gettext_noop("Number of pages after which previously performed writes are flushed to disk."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS }, &backend_flush_after, @@ -3070,6 +3265,7 @@ static struct config_int ConfigureNamesInt[] = RESOURCES_ASYNCHRONOUS, gettext_noop("Maximum number of concurrent worker processes."), NULL, + GUC_RESOURCE_USAGE, }, &max_worker_processes, 8, 0, MAX_BACKENDS, @@ -3082,6 +3278,7 @@ static struct config_int ConfigureNamesInt[] = REPLICATION_SUBSCRIBERS, gettext_noop("Maximum number of logical replication worker processes."), NULL, + GUC_RESOURCE_USAGE, }, &max_logical_replication_workers, 4, 0, MAX_BACKENDS, @@ -3094,6 +3291,7 @@ static struct config_int ConfigureNamesInt[] = REPLICATION_SUBSCRIBERS, gettext_noop("Maximum number of table synchronization workers per subscription."), NULL, + GUC_RESOURCE_USAGE, }, &max_sync_workers_per_subscription, 2, 0, MAX_BACKENDS, @@ -3104,6 +3302,7 @@ static struct config_int ConfigureNamesInt[] = {"log_rotation_age", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Automatic log file rotation will occur after N minutes."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS, GUC_UNIT_MIN }, &Log_RotationAge, @@ -3115,6 +3314,7 @@ static struct config_int ConfigureNamesInt[] = {"log_rotation_size", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Automatic log file rotation will occur after N kilobytes."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS, GUC_UNIT_KB }, &Log_RotationSize, @@ -3126,6 +3326,7 @@ static struct config_int ConfigureNamesInt[] = {"max_function_args", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum number of function arguments."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_function_args, @@ -3137,6 +3338,7 @@ static struct config_int ConfigureNamesInt[] = {"max_index_keys", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum number of index keys."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_index_keys, @@ -3148,6 +3350,7 @@ static struct config_int ConfigureNamesInt[] = {"max_identifier_length", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum identifier length."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_identifier_length, @@ -3159,6 +3362,7 @@ static struct config_int ConfigureNamesInt[] = {"block_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the size of a disk block."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &block_size, @@ -3170,6 +3374,7 @@ static struct config_int ConfigureNamesInt[] = {"segment_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the number of pages per disk file."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &segment_size, @@ -3181,6 +3386,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_block_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the block size in the write ahead log."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &wal_block_size, @@ -3193,6 +3399,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the time to wait before retrying to retrieve WAL " "after a failed attempt."), NULL, + GUC_WAL_SETTINGS, GUC_UNIT_MS }, &wal_retrieve_retry_interval, @@ -3204,6 +3411,7 @@ static struct config_int ConfigureNamesInt[] = {"wal_segment_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the size of write ahead log segments."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_BYTE | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &wal_segment_size, @@ -3217,6 +3425,7 @@ static struct config_int ConfigureNamesInt[] = {"autovacuum_naptime", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Time to sleep between autovacuum runs."), NULL, + GUC_MAINTENANCE_SETTINGS, GUC_UNIT_S }, &autovacuum_naptime, @@ -3226,7 +3435,8 @@ static struct config_int ConfigureNamesInt[] = { {"autovacuum_vacuum_threshold", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Minimum number of tuple updates or deletes prior to vacuum."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_vac_thresh, 50, 0, INT_MAX, @@ -3235,7 +3445,8 @@ static struct config_int ConfigureNamesInt[] = { {"autovacuum_vacuum_insert_threshold", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_vac_ins_thresh, 1000, -1, INT_MAX, @@ -3244,7 +3455,8 @@ static struct config_int ConfigureNamesInt[] = { {"autovacuum_analyze_threshold", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Minimum number of tuple inserts, updates, or deletes prior to analyze."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_anl_thresh, 50, 0, INT_MAX, @@ -3254,7 +3466,8 @@ static struct config_int ConfigureNamesInt[] = /* see varsup.c for why this is PGC_POSTMASTER not PGC_SIGHUP */ {"autovacuum_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM, gettext_noop("Age at which to autovacuum a table to prevent transaction ID wraparound."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_freeze_max_age, /* @@ -3268,7 +3481,8 @@ static struct config_int ConfigureNamesInt[] = /* see multixact.c for why this is PGC_POSTMASTER not PGC_SIGHUP */ {"autovacuum_multixact_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM, gettext_noop("Multixact age at which to autovacuum a table to prevent multixact wraparound."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_multixact_freeze_max_age, 400000000, 10000, 2000000000, @@ -3278,7 +3492,8 @@ static struct config_int ConfigureNamesInt[] = /* see max_connections */ {"autovacuum_max_workers", PGC_POSTMASTER, AUTOVACUUM, gettext_noop("Sets the maximum number of simultaneously running autovacuum worker processes."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE }, &autovacuum_max_workers, 3, 1, MAX_BACKENDS, @@ -3288,7 +3503,8 @@ static struct config_int ConfigureNamesInt[] = { {"max_parallel_maintenance_workers", PGC_USERSET, RESOURCES_ASYNCHRONOUS, gettext_noop("Sets the maximum number of parallel processes per maintenance operation."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &max_parallel_maintenance_workers, 2, 0, 1024, @@ -3299,6 +3515,7 @@ static struct config_int ConfigureNamesInt[] = {"max_parallel_workers_per_gather", PGC_USERSET, RESOURCES_ASYNCHRONOUS, gettext_noop("Sets the maximum number of parallel processes per executor node."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &max_parallel_workers_per_gather, @@ -3310,6 +3527,7 @@ static struct config_int ConfigureNamesInt[] = {"max_parallel_workers", PGC_USERSET, RESOURCES_ASYNCHRONOUS, gettext_noop("Sets the maximum number of parallel workers that can be active at one time."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &max_parallel_workers, @@ -3321,6 +3539,7 @@ static struct config_int ConfigureNamesInt[] = {"autovacuum_work_mem", PGC_SIGHUP, RESOURCES_MEM, gettext_noop("Sets the maximum memory to be used by each autovacuum worker process."), NULL, + GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE, GUC_UNIT_KB }, &autovacuum_work_mem, @@ -3332,6 +3551,7 @@ static struct config_int ConfigureNamesInt[] = {"old_snapshot_threshold", PGC_POSTMASTER, RESOURCES_ASYNCHRONOUS, gettext_noop("Time before a snapshot is too old to read pages changed after the snapshot was taken."), gettext_noop("A value of -1 disables this feature."), + GUC_RESOURCE_USAGE, GUC_UNIT_MIN }, &old_snapshot_threshold, @@ -3343,6 +3563,7 @@ static struct config_int ConfigureNamesInt[] = {"tcp_keepalives_idle", PGC_USERSET, CONN_AUTH_SETTINGS, gettext_noop("Time between issuing TCP keepalives."), gettext_noop("A value of 0 uses the system default."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_S }, &tcp_keepalives_idle, @@ -3354,6 +3575,7 @@ static struct config_int ConfigureNamesInt[] = {"tcp_keepalives_interval", PGC_USERSET, CONN_AUTH_SETTINGS, gettext_noop("Time between TCP keepalive retransmits."), gettext_noop("A value of 0 uses the system default."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_S }, &tcp_keepalives_interval, @@ -3365,6 +3587,7 @@ static struct config_int ConfigureNamesInt[] = {"ssl_renegotiation_limit", PGC_USERSET, CONN_AUTH_SSL, gettext_noop("SSL renegotiation is no longer supported; this can only be 0."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE, }, &ssl_renegotiation_limit, @@ -3378,6 +3601,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("This controls the number of consecutive keepalive retransmits that can be " "lost before a connection is considered dead. A value of 0 uses the " "system default."), + GUC_INTERNAL_SETTINGS, }, &tcp_keepalives_count, 0, 0, INT_MAX, @@ -3388,6 +3612,7 @@ static struct config_int ConfigureNamesInt[] = {"gin_fuzzy_search_limit", PGC_USERSET, CLIENT_CONN_OTHER, gettext_noop("Sets the maximum allowed result for exact search by GIN."), NULL, + GUC_INTERNAL_SETTINGS, 0 }, &GinFuzzySearchLimit, @@ -3400,6 +3625,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the planner's assumption about the total size of the data caches."), gettext_noop("That is, the total size of the caches (kernel cache and shared buffers) used for PostgreSQL data files. " "This is measured in disk pages, which are normally 8 kB each."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &effective_cache_size, @@ -3411,6 +3637,7 @@ static struct config_int ConfigureNamesInt[] = {"min_parallel_table_scan_size", PGC_USERSET, QUERY_TUNING_COST, gettext_noop("Sets the minimum amount of table data for a parallel scan."), gettext_noop("If the planner estimates that it will read a number of table pages too small to reach this limit, a parallel scan will not be considered."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &min_parallel_table_scan_size, @@ -3422,6 +3649,7 @@ static struct config_int ConfigureNamesInt[] = {"min_parallel_index_scan_size", PGC_USERSET, QUERY_TUNING_COST, gettext_noop("Sets the minimum amount of index data for a parallel scan."), gettext_noop("If the planner estimates that it will read a number of index pages too small to reach this limit, a parallel scan will not be considered."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &min_parallel_index_scan_size, @@ -3434,6 +3662,7 @@ static struct config_int ConfigureNamesInt[] = {"server_version_num", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server version as an integer."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_version_num, @@ -3445,6 +3674,7 @@ static struct config_int ConfigureNamesInt[] = {"log_temp_files", PGC_SUSET, LOGGING_WHAT, gettext_noop("Log the use of temporary files larger than this number of kilobytes."), gettext_noop("Zero logs all files. The default is -1 (turning this feature off)."), + GUC_LOGGING_SETTINGS, GUC_UNIT_KB }, &log_temp_files, @@ -3456,6 +3686,7 @@ static struct config_int ConfigureNamesInt[] = {"track_activity_query_size", PGC_POSTMASTER, STATS_COLLECTOR, gettext_noop("Sets the size reserved for pg_stat_activity.query, in bytes."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_BYTE }, &pgstat_track_activity_query_size, @@ -3467,6 +3698,7 @@ static struct config_int ConfigureNamesInt[] = {"gin_pending_list_limit", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the maximum size of the pending list for GIN index."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_KB }, &gin_pending_list_limit, @@ -3478,6 +3710,7 @@ static struct config_int ConfigureNamesInt[] = {"tcp_user_timeout", PGC_USERSET, CONN_AUTH_SETTINGS, gettext_noop("TCP user timeout."), gettext_noop("A value of 0 uses the system default."), + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &tcp_user_timeout, @@ -3489,6 +3722,7 @@ static struct config_int ConfigureNamesInt[] = {"huge_page_size", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("The size of huge page that should be requested."), NULL, + GUC_RESOURCE_USAGE, GUC_UNIT_KB }, &huge_page_size, @@ -3500,6 +3734,8 @@ static struct config_int ConfigureNamesInt[] = {"debug_invalidate_system_caches_always", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Aggressively invalidate system caches for debugging purposes."), NULL, + /* Treat this option as a ready-made denial of service attack */ + GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS, GUC_NOT_IN_SAMPLE }, &debug_invalidate_system_caches_always, @@ -3523,6 +3759,7 @@ static struct config_int ConfigureNamesInt[] = {"client_connection_check_interval", PGC_USERSET, CONN_AUTH_SETTINGS, gettext_noop("Sets the time interval between checks for disconnection while running queries."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &client_connection_check_interval, @@ -3544,6 +3781,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of a " "sequentially fetched disk page."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &seq_page_cost, @@ -3555,6 +3793,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of a " "nonsequentially fetched disk page."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &random_page_cost, @@ -3566,6 +3805,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "processing each tuple (row)."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &cpu_tuple_cost, @@ -3577,6 +3817,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "processing each index entry during an index scan."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &cpu_index_tuple_cost, @@ -3588,6 +3829,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "processing each operator or function call."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &cpu_operator_cost, @@ -3599,6 +3841,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "passing each tuple (row) from worker to leader backend."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, ¶llel_tuple_cost, @@ -3610,6 +3853,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "starting up worker processes for parallel query."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, ¶llel_setup_cost, @@ -3621,6 +3865,7 @@ static struct config_real ConfigureNamesReal[] = {"jit_above_cost", PGC_USERSET, QUERY_TUNING_COST, gettext_noop("Perform JIT compilation if query is more expensive."), gettext_noop("-1 disables JIT compilation."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &jit_above_cost, @@ -3632,6 +3877,7 @@ static struct config_real ConfigureNamesReal[] = {"jit_optimize_above_cost", PGC_USERSET, QUERY_TUNING_COST, gettext_noop("Optimize JIT-compiled functions if query is more expensive."), gettext_noop("-1 disables optimization."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &jit_optimize_above_cost, @@ -3643,6 +3889,7 @@ static struct config_real ConfigureNamesReal[] = {"jit_inline_above_cost", PGC_USERSET, QUERY_TUNING_COST, gettext_noop("Perform JIT inlining if query is more expensive."), gettext_noop("-1 disables inlining."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &jit_inline_above_cost, @@ -3655,6 +3902,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the fraction of " "a cursor's rows that will be retrieved."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &cursor_tuple_fraction, @@ -3666,6 +3914,7 @@ static struct config_real ConfigureNamesReal[] = {"geqo_selection_bias", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: selective pressure within the population."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &Geqo_selection_bias, @@ -3677,6 +3926,7 @@ static struct config_real ConfigureNamesReal[] = {"geqo_seed", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: seed for random path selection."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &Geqo_seed, @@ -3688,6 +3938,7 @@ static struct config_real ConfigureNamesReal[] = {"hash_mem_multiplier", PGC_USERSET, RESOURCES_MEM, gettext_noop("Multiple of work_mem to use for hash tables."), NULL, + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &hash_mem_multiplier, @@ -3698,7 +3949,8 @@ static struct config_real ConfigureNamesReal[] = { {"bgwriter_lru_multiplier", PGC_SIGHUP, RESOURCES_BGWRITER, gettext_noop("Multiple of the average buffer usage to free per round."), - NULL + NULL, + GUC_RESOURCE_USAGE }, &bgwriter_lru_multiplier, 2.0, 0.0, 10.0, @@ -3709,6 +3961,7 @@ static struct config_real ConfigureNamesReal[] = {"seed", PGC_USERSET, UNGROUPED, gettext_noop("Sets the seed for random-number generation."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &phony_random_seed, @@ -3720,6 +3973,7 @@ static struct config_real ConfigureNamesReal[] = {"vacuum_cost_delay", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost delay in milliseconds."), NULL, + GUC_INTERNAL_SETTINGS, GUC_UNIT_MS }, &VacuumCostDelay, @@ -3731,6 +3985,7 @@ static struct config_real ConfigureNamesReal[] = {"autovacuum_vacuum_cost_delay", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Vacuum cost delay in milliseconds, for autovacuum."), NULL, + GUC_MAINTENANCE_SETTINGS, GUC_UNIT_MS }, &autovacuum_vac_cost_delay, @@ -3741,7 +3996,8 @@ static struct config_real ConfigureNamesReal[] = { {"autovacuum_vacuum_scale_factor", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_vac_scale, 0.2, 0.0, 100.0, @@ -3751,7 +4007,8 @@ static struct config_real ConfigureNamesReal[] = { {"autovacuum_vacuum_insert_scale_factor", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Number of tuple inserts prior to vacuum as a fraction of reltuples."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_vac_ins_scale, 0.2, 0.0, 100.0, @@ -3761,7 +4018,8 @@ static struct config_real ConfigureNamesReal[] = { {"autovacuum_analyze_scale_factor", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."), - NULL + NULL, + GUC_MAINTENANCE_SETTINGS }, &autovacuum_anl_scale, 0.1, 0.0, 100.0, @@ -3771,7 +4029,8 @@ static struct config_real ConfigureNamesReal[] = { {"checkpoint_completion_target", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval."), - NULL + NULL, + GUC_WAL_SETTINGS }, &CheckPointCompletionTarget, 0.9, 0.0, 1.0, @@ -3781,7 +4040,8 @@ static struct config_real ConfigureNamesReal[] = { {"log_statement_sample_rate", PGC_SUSET, LOGGING_WHEN, gettext_noop("Fraction of statements exceeding log_min_duration_sample to be logged."), - gettext_noop("Use a value between 0.0 (never log) and 1.0 (always log).") + gettext_noop("Use a value between 0.0 (never log) and 1.0 (always log)."), + GUC_LOGGING_SETTINGS }, &log_statement_sample_rate, 1.0, 0.0, 1.0, @@ -3792,7 +4052,8 @@ static struct config_real ConfigureNamesReal[] = {"log_transaction_sample_rate", PGC_SUSET, LOGGING_WHEN, gettext_noop("Sets the fraction of transactions from which to log all statements."), gettext_noop("Use a value between 0.0 (never log) and 1.0 (log all " - "statements for all transactions).") + "statements for all transactions)."), + GUC_LOGGING_SETTINGS }, &log_xact_sample_rate, 0.0, 0.0, 1.0, @@ -3811,7 +4072,8 @@ static struct config_string ConfigureNamesString[] = { {"archive_command", PGC_SIGHUP, WAL_ARCHIVING, gettext_noop("Sets the shell command that will be called to archive a WAL file."), - NULL + NULL, + GUC_EXEC_COMMAND }, &XLogArchiveCommand, "", @@ -3821,7 +4083,8 @@ static struct config_string ConfigureNamesString[] = { {"restore_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY, gettext_noop("Sets the shell command that will be called to retrieve an archived WAL file."), - NULL + NULL, + GUC_EXEC_COMMAND }, &recoveryRestoreCommand, "", @@ -3831,7 +4094,8 @@ static struct config_string ConfigureNamesString[] = { {"archive_cleanup_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY, gettext_noop("Sets the shell command that will be executed at every restart point."), - NULL + NULL, + GUC_EXEC_COMMAND }, &archiveCleanupCommand, "", @@ -3841,7 +4105,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_end_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY, gettext_noop("Sets the shell command that will be executed once at the end of recovery."), - NULL + NULL, + GUC_EXEC_COMMAND }, &recoveryEndCommand, "", @@ -3851,7 +4116,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target_timeline", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Specifies the timeline to recover into."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_timeline_string, "latest", @@ -3861,7 +4127,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Set to \"immediate\" to end recovery as soon as a consistent state is reached."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_string, "", @@ -3870,7 +4137,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target_xid", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets the transaction ID up to which recovery will proceed."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_xid_string, "", @@ -3879,7 +4147,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets the time stamp up to which recovery will proceed."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_time_string, "", @@ -3888,7 +4157,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target_name", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets the named restore point up to which recovery will proceed."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_name_string, "", @@ -3897,7 +4167,8 @@ static struct config_string ConfigureNamesString[] = { {"recovery_target_lsn", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets the LSN of the write-ahead log location up to which recovery will proceed."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recovery_target_lsn_string, "", @@ -3907,7 +4178,8 @@ static struct config_string ConfigureNamesString[] = { {"promote_trigger_file", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Specifies a file name whose presence ends recovery in the standby."), - NULL + NULL, + GUC_WAL_SETTINGS }, &PromoteTriggerFile, "", @@ -3918,6 +4190,7 @@ static struct config_string ConfigureNamesString[] = {"primary_conninfo", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the connection string to be used to connect to the sending server."), NULL, + GUC_WAL_SETTINGS, GUC_SUPERUSER_ONLY }, &PrimaryConnInfo, @@ -3928,7 +4201,8 @@ static struct config_string ConfigureNamesString[] = { {"primary_slot_name", PGC_SIGHUP, REPLICATION_STANDBY, gettext_noop("Sets the name of the replication slot to use on the sending server."), - NULL + NULL, + GUC_WAL_SETTINGS }, &PrimarySlotName, "", @@ -3939,6 +4213,7 @@ static struct config_string ConfigureNamesString[] = {"client_encoding", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the client's character set encoding."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME | GUC_REPORT }, &client_encoding_string, @@ -3949,7 +4224,8 @@ static struct config_string ConfigureNamesString[] = { {"log_line_prefix", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Controls information prefixed to each log line."), - gettext_noop("If blank, no prefix is used.") + gettext_noop("If blank, no prefix is used."), + GUC_LOGGING_SETTINGS }, &Log_line_prefix, "%m [%p] ", @@ -3959,7 +4235,8 @@ static struct config_string ConfigureNamesString[] = { {"log_timezone", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Sets the time zone to use in log messages."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_timezone_string, "GMT", @@ -3971,6 +4248,7 @@ static struct config_string ConfigureNamesString[] = gettext_noop("Sets the display format for date and time values."), gettext_noop("Also controls interpretation of ambiguous " "date inputs."), + GUC_INTERNAL_SETTINGS, GUC_LIST_INPUT | GUC_REPORT }, &datestyle_string, @@ -3982,6 +4260,7 @@ static struct config_string ConfigureNamesString[] = {"default_table_access_method", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the default table access method for new tables."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME }, &default_table_access_method, @@ -3993,6 +4272,7 @@ static struct config_string ConfigureNamesString[] = {"default_tablespace", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the default tablespace to create tables and indexes in."), gettext_noop("An empty string selects the database's default tablespace."), + GUC_INTERNAL_SETTINGS, GUC_IS_NAME }, &default_tablespace, @@ -4004,6 +4284,7 @@ static struct config_string ConfigureNamesString[] = {"temp_tablespaces", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the tablespace(s) to use for temporary tables and sort files."), NULL, + GUC_INTERNAL_SETTINGS, GUC_LIST_INPUT | GUC_LIST_QUOTE }, &temp_tablespaces, @@ -4018,6 +4299,7 @@ static struct config_string ConfigureNamesString[] = "the specified name does not have a directory component (i.e., the " "name does not contain a slash), the system will search this path for " "the specified file."), + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY }, &Dynamic_library_path, @@ -4029,6 +4311,7 @@ static struct config_string ConfigureNamesString[] = {"krb_server_keyfile", PGC_SIGHUP, CONN_AUTH_AUTH, gettext_noop("Sets the location of the Kerberos server key file."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &pg_krb_server_keyfile, @@ -4039,7 +4322,8 @@ static struct config_string ConfigureNamesString[] = { {"bonjour_name", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the Bonjour service name."), - NULL + NULL, + GUC_INTERFACE_SETTINGS }, &bonjour_name, "", @@ -4052,6 +4336,7 @@ static struct config_string ConfigureNamesString[] = {"lc_collate", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the collation order locale."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &locale_collate, @@ -4063,6 +4348,7 @@ static struct config_string ConfigureNamesString[] = {"lc_ctype", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the character classification and case conversion locale."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &locale_ctype, @@ -4073,7 +4359,8 @@ static struct config_string ConfigureNamesString[] = { {"lc_messages", PGC_SUSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the language in which messages are displayed."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &locale_messages, "", @@ -4083,7 +4370,8 @@ static struct config_string ConfigureNamesString[] = { {"lc_monetary", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the locale for formatting monetary amounts."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &locale_monetary, "C", @@ -4093,7 +4381,8 @@ static struct config_string ConfigureNamesString[] = { {"lc_numeric", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the locale for formatting numbers."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &locale_numeric, "C", @@ -4103,7 +4392,8 @@ static struct config_string ConfigureNamesString[] = { {"lc_time", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the locale for formatting date and time values."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &locale_time, "C", @@ -4114,6 +4404,7 @@ static struct config_string ConfigureNamesString[] = {"session_preload_libraries", PGC_SUSET, CLIENT_CONN_PRELOAD, gettext_noop("Lists shared libraries to preload into each backend."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &session_preload_libraries_string, @@ -4125,6 +4416,7 @@ static struct config_string ConfigureNamesString[] = {"shared_preload_libraries", PGC_POSTMASTER, CLIENT_CONN_PRELOAD, gettext_noop("Lists shared libraries to preload into server."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &shared_preload_libraries_string, @@ -4136,6 +4428,7 @@ static struct config_string ConfigureNamesString[] = {"local_preload_libraries", PGC_USERSET, CLIENT_CONN_PRELOAD, gettext_noop("Lists unprivileged shared libraries to preload into each backend."), NULL, + GUC_INTERNAL_SETTINGS, GUC_LIST_INPUT | GUC_LIST_QUOTE }, &local_preload_libraries_string, @@ -4147,6 +4440,7 @@ static struct config_string ConfigureNamesString[] = {"search_path", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the schema search order for names that are not schema-qualified."), NULL, + GUC_INTERNAL_SETTINGS, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_EXPLAIN }, &namespace_search_path, @@ -4159,6 +4453,7 @@ static struct config_string ConfigureNamesString[] = {"server_encoding", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server (database) character set encoding."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME | GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_encoding_string, @@ -4171,6 +4466,7 @@ static struct config_string ConfigureNamesString[] = {"server_version", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server version."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_version_string, @@ -4183,6 +4479,7 @@ static struct config_string ConfigureNamesString[] = {"role", PGC_USERSET, UNGROUPED, gettext_noop("Sets the current role."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME | GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE | GUC_NOT_WHILE_SEC_REST }, &role_string, @@ -4195,6 +4492,7 @@ static struct config_string ConfigureNamesString[] = {"session_authorization", PGC_USERSET, UNGROUPED, gettext_noop("Sets the session user name."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME | GUC_REPORT | GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE | GUC_NOT_WHILE_SEC_REST }, &session_authorization_string, @@ -4208,6 +4506,7 @@ static struct config_string ConfigureNamesString[] = gettext_noop("Valid values are combinations of \"stderr\", " "\"syslog\", \"csvlog\", and \"eventlog\", " "depending on the platform."), + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS, GUC_LIST_INPUT }, &Log_destination_string, @@ -4219,6 +4518,7 @@ static struct config_string ConfigureNamesString[] = gettext_noop("Sets the destination directory for log files."), gettext_noop("Can be specified as relative to the data directory " "or as absolute path."), + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS, GUC_SUPERUSER_ONLY }, &Log_directory, @@ -4229,6 +4529,7 @@ static struct config_string ConfigureNamesString[] = {"log_filename", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Sets the file name pattern for log files."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS, GUC_SUPERUSER_ONLY }, &Log_filename, @@ -4240,7 +4541,8 @@ static struct config_string ConfigureNamesString[] = {"syslog_ident", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Sets the program name used to identify PostgreSQL " "messages in syslog."), - NULL + NULL, + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &syslog_ident_str, "postgres", @@ -4251,7 +4553,8 @@ static struct config_string ConfigureNamesString[] = {"event_source", PGC_POSTMASTER, LOGGING_WHERE, gettext_noop("Sets the application name used to identify " "PostgreSQL messages in the event log."), - NULL + NULL, + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &event_source, DEFAULT_EVENT_SOURCE, @@ -4262,6 +4565,7 @@ static struct config_string ConfigureNamesString[] = {"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the time zone for displaying and interpreting time stamps."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT }, &timezone_string, @@ -4271,7 +4575,8 @@ static struct config_string ConfigureNamesString[] = { {"timezone_abbreviations", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Selects a file of time zone abbreviations."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &timezone_abbreviations_string, NULL, @@ -4282,7 +4587,8 @@ static struct config_string ConfigureNamesString[] = {"unix_socket_group", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the owning group of the Unix-domain socket."), gettext_noop("The owning user of the socket is always the user " - "that starts the server.") + "that starts the server."), + GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS }, &Unix_socket_group, "", @@ -4293,6 +4599,7 @@ static struct config_string ConfigureNamesString[] = {"unix_socket_directories", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the directories where Unix-domain sockets will be created."), NULL, + GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &Unix_socket_directories, @@ -4308,6 +4615,7 @@ static struct config_string ConfigureNamesString[] = {"listen_addresses", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the host name or IP address(es) to listen to."), NULL, + GUC_INTERFACE_SETTINGS, GUC_LIST_INPUT }, &ListenAddresses, @@ -4323,6 +4631,7 @@ static struct config_string ConfigureNamesString[] = {"data_directory", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's data directory."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY | GUC_DISALLOW_IN_AUTO_FILE }, &data_directory, @@ -4334,6 +4643,7 @@ static struct config_string ConfigureNamesString[] = {"config_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's main configuration file."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_DISALLOW_IN_FILE | GUC_SUPERUSER_ONLY }, &ConfigFileName, @@ -4345,6 +4655,7 @@ static struct config_string ConfigureNamesString[] = {"hba_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's \"hba\" configuration file."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY }, &HbaFileName, @@ -4356,6 +4667,7 @@ static struct config_string ConfigureNamesString[] = {"ident_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's \"ident\" configuration file."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY }, &IdentFileName, @@ -4367,6 +4679,7 @@ static struct config_string ConfigureNamesString[] = {"external_pid_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Writes the postmaster PID to the specified file."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY }, &external_pid_file, @@ -4378,6 +4691,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_library", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the name of the SSL library."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &ssl_library, @@ -4392,7 +4706,8 @@ static struct config_string ConfigureNamesString[] = { {"ssl_cert_file", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL server certificate file."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY }, &ssl_cert_file, "server.crt", @@ -4402,7 +4717,8 @@ static struct config_string ConfigureNamesString[] = { {"ssl_key_file", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL server private key file."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY }, &ssl_key_file, "server.key", @@ -4412,7 +4728,8 @@ static struct config_string ConfigureNamesString[] = { {"ssl_ca_file", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL certificate authority file."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY }, &ssl_ca_file, "", @@ -4422,7 +4739,8 @@ static struct config_string ConfigureNamesString[] = { {"ssl_crl_file", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL certificate revocation list file."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY }, &ssl_crl_file, "", @@ -4432,7 +4750,8 @@ static struct config_string ConfigureNamesString[] = { {"ssl_crl_dir", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL certificate revocation list directory."), - NULL + NULL, + GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS }, &ssl_crl_dir, "", @@ -4443,6 +4762,7 @@ static struct config_string ConfigureNamesString[] = {"stats_temp_directory", PGC_SIGHUP, STATS_COLLECTOR, gettext_noop("Writes temporary statistics files to the specified directory."), NULL, + GUC_FILESYSTEM_SECURITY, GUC_SUPERUSER_ONLY }, &pgstat_temp_directory, @@ -4454,6 +4774,7 @@ static struct config_string ConfigureNamesString[] = {"synchronous_standby_names", PGC_SIGHUP, REPLICATION_PRIMARY, gettext_noop("Number of synchronous standbys and list of names of potential synchronous ones."), NULL, + GUC_WAL_SETTINGS, GUC_LIST_INPUT }, &SyncRepStandbyNames, @@ -4464,7 +4785,8 @@ static struct config_string ConfigureNamesString[] = { {"default_text_search_config", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets default text search configuration."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &TSCurrentConfig, "pg_catalog.simple", @@ -4475,6 +4797,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_ciphers", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Sets the list of allowed SSL ciphers."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &SSLCipherSuites, @@ -4490,6 +4813,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_ecdh_curve", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Sets the curve to use for ECDH."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &SSLECDHCurve, @@ -4505,6 +4829,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_dh_params_file", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Location of the SSL DH parameters file."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &ssl_dh_params_file, @@ -4516,6 +4841,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_passphrase_command", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Command to obtain passphrases for SSL."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &ssl_passphrase_command, @@ -4527,6 +4853,7 @@ static struct config_string ConfigureNamesString[] = {"application_name", PGC_USERSET, LOGGING_WHAT, gettext_noop("Sets the application name to be reported in statistics and logs."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME | GUC_REPORT | GUC_NOT_IN_SAMPLE }, &application_name, @@ -4538,6 +4865,7 @@ static struct config_string ConfigureNamesString[] = {"cluster_name", PGC_POSTMASTER, PROCESS_TITLE, gettext_noop("Sets the name of the cluster, which is included in the process title."), NULL, + GUC_LOGGING_SETTINGS, GUC_IS_NAME }, &cluster_name, @@ -4549,6 +4877,7 @@ static struct config_string ConfigureNamesString[] = {"wal_consistency_checking", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Sets the WAL resource managers for which WAL consistency checks are done."), gettext_noop("Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay."), + GUC_WAL_SETTINGS, GUC_LIST_INPUT | GUC_NOT_IN_SAMPLE }, &wal_consistency_checking_string, @@ -4560,6 +4889,7 @@ static struct config_string ConfigureNamesString[] = {"jit_provider", PGC_POSTMASTER, CLIENT_CONN_PRELOAD, gettext_noop("JIT provider to use."), NULL, + GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS, GUC_SUPERUSER_ONLY }, &jit_provider, @@ -4571,6 +4901,7 @@ static struct config_string ConfigureNamesString[] = {"backtrace_functions", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Log backtrace for errors in these functions."), NULL, + GUC_LOGGING_SETTINGS, GUC_NOT_IN_SAMPLE }, &backtrace_functions, @@ -4590,7 +4921,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"backslash_quote", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Sets whether \"\\'\" is allowed in string literals."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &backslash_quote, BACKSLASH_QUOTE_SAFE_ENCODING, backslash_quote_options, @@ -4600,7 +4932,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"bytea_output", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the output format for bytea."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &bytea_output, BYTEA_OUTPUT_HEX, bytea_output_options, @@ -4611,7 +4944,8 @@ static struct config_enum ConfigureNamesEnum[] = {"client_min_messages", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the message levels that are sent to the client."), gettext_noop("Each level includes all the levels that follow it. The later" - " the level, the fewer messages are sent.") + " the level, the fewer messages are sent."), + GUC_INTERNAL_SETTINGS }, &client_min_messages, NOTICE, client_message_level_options, @@ -4623,6 +4957,7 @@ static struct config_enum ConfigureNamesEnum[] = gettext_noop("Enables the planner to use constraints to optimize queries."), gettext_noop("Table scans will be skipped if their constraints" " guarantee that no rows match the query."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &constraint_exclusion, @@ -4634,6 +4969,7 @@ static struct config_enum ConfigureNamesEnum[] = {"default_toast_compression", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the default compression for new columns."), NULL, + GUC_INTERNAL_SETTINGS, GUC_IS_NAME }, &default_toast_compression, @@ -4644,7 +4980,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"default_transaction_isolation", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the transaction isolation level of each new transaction."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &DefaultXactIsoLevel, XACT_READ_COMMITTED, isolation_level_options, @@ -4655,6 +4992,7 @@ static struct config_enum ConfigureNamesEnum[] = {"transaction_isolation", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the current transaction's isolation level."), NULL, + GUC_INTERNAL_SETTINGS, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactIsoLevel, @@ -4666,6 +5004,7 @@ static struct config_enum ConfigureNamesEnum[] = {"IntervalStyle", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the display format for interval values."), NULL, + GUC_INTERNAL_SETTINGS, GUC_REPORT }, &IntervalStyle, @@ -4676,7 +5015,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"log_error_verbosity", PGC_SUSET, LOGGING_WHAT, gettext_noop("Sets the verbosity of logged messages."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &Log_error_verbosity, PGERROR_DEFAULT, log_error_verbosity_options, @@ -4687,7 +5027,8 @@ static struct config_enum ConfigureNamesEnum[] = {"log_min_messages", PGC_SUSET, LOGGING_WHEN, gettext_noop("Sets the message levels that are logged."), gettext_noop("Each level includes all the levels that follow it. The later" - " the level, the fewer messages are sent.") + " the level, the fewer messages are sent."), + GUC_LOGGING_SETTINGS }, &log_min_messages, WARNING, server_message_level_options, @@ -4698,7 +5039,8 @@ static struct config_enum ConfigureNamesEnum[] = {"log_min_error_statement", PGC_SUSET, LOGGING_WHEN, gettext_noop("Causes all statements generating error at or above this level to be logged."), gettext_noop("Each level includes all the levels that follow it. The later" - " the level, the fewer messages are sent.") + " the level, the fewer messages are sent."), + GUC_LOGGING_SETTINGS }, &log_min_error_statement, ERROR, server_message_level_options, @@ -4708,7 +5050,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"log_statement", PGC_SUSET, LOGGING_WHAT, gettext_noop("Sets the type of statements logged."), - NULL + NULL, + GUC_LOGGING_SETTINGS }, &log_statement, LOGSTMT_NONE, log_statement_options, @@ -4718,7 +5061,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"syslog_facility", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Sets the syslog \"facility\" to be used when syslog enabled."), - NULL + NULL, + GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS }, &syslog_facility, #ifdef HAVE_SYSLOG @@ -4733,7 +5077,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"session_replication_role", PGC_SUSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the session's behavior for triggers and rewrite rules."), - NULL + NULL, + GUC_WAL_SETTINGS }, &SessionReplicationRole, SESSION_REPLICATION_ROLE_ORIGIN, session_replication_role_options, @@ -4743,7 +5088,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"synchronous_commit", PGC_USERSET, WAL_SETTINGS, gettext_noop("Sets the current transaction's synchronization level."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &synchronous_commit, SYNCHRONOUS_COMMIT_ON, synchronous_commit_options, @@ -4753,7 +5099,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"archive_mode", PGC_POSTMASTER, WAL_ARCHIVING, gettext_noop("Allows archiving of WAL files using archive_command."), - NULL + NULL, + GUC_WAL_SETTINGS }, &XLogArchiveMode, ARCHIVE_MODE_OFF, archive_mode_options, @@ -4763,7 +5110,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"recovery_target_action", PGC_POSTMASTER, WAL_RECOVERY_TARGET, gettext_noop("Sets the action to perform upon reaching the recovery target."), - NULL + NULL, + GUC_WAL_SETTINGS }, &recoveryTargetAction, RECOVERY_TARGET_ACTION_PAUSE, recovery_target_action_options, @@ -4774,7 +5122,8 @@ static struct config_enum ConfigureNamesEnum[] = {"trace_recovery_messages", PGC_SIGHUP, DEVELOPER_OPTIONS, gettext_noop("Enables logging of recovery-related debugging information."), gettext_noop("Each level includes all the levels that follow it. The later" - " the level, the fewer messages are sent.") + " the level, the fewer messages are sent."), + GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS }, &trace_recovery_messages, @@ -4789,7 +5138,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"track_functions", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects function-level statistics on database activity."), - NULL + NULL, + GUC_STATS_SETTINGS }, &pgstat_track_functions, TRACK_FUNC_OFF, track_function_options, @@ -4799,7 +5149,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"wal_level", PGC_POSTMASTER, WAL_SETTINGS, gettext_noop("Sets the level of information written to the WAL."), - NULL + NULL, + GUC_WAL_SETTINGS }, &wal_level, WAL_LEVEL_REPLICA, wal_level_options, @@ -4809,7 +5160,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"dynamic_shared_memory_type", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Selects the dynamic shared memory implementation used."), - NULL + NULL, + GUC_SERVER_CONFIGURATION }, &dynamic_shared_memory_type, DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE, dynamic_shared_memory_options, @@ -4819,7 +5171,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"shared_memory_type", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Selects the shared memory implementation used for the main shared memory region."), - NULL + NULL, + GUC_SERVER_CONFIGURATION }, &shared_memory_type, DEFAULT_SHARED_MEMORY_TYPE, shared_memory_options, @@ -4829,7 +5182,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"wal_sync_method", PGC_SIGHUP, WAL_SETTINGS, gettext_noop("Selects the method used for forcing WAL updates to disk."), - NULL + NULL, + GUC_WAL_SETTINGS }, &sync_method, DEFAULT_SYNC_METHOD, sync_method_options, @@ -4839,7 +5193,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"xmlbinary", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets how binary values are to be encoded in XML."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &xmlbinary, XMLBINARY_BASE64, xmlbinary_options, @@ -4850,7 +5205,8 @@ static struct config_enum ConfigureNamesEnum[] = {"xmloption", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets whether XML data in implicit parsing and serialization " "operations is to be considered as documents or content fragments."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &xmloption, XMLOPTION_CONTENT, xmloption_options, @@ -4860,7 +5216,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"huge_pages", PGC_POSTMASTER, RESOURCES_MEM, gettext_noop("Use of huge pages on Linux or Windows."), - NULL + NULL, + GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE }, &huge_pages, HUGE_PAGES_TRY, huge_pages_options, @@ -4871,6 +5228,7 @@ static struct config_enum ConfigureNamesEnum[] = {"force_parallel_mode", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Forces use of parallel query facilities."), gettext_noop("If possible, run query using a parallel worker and with parallel restrictions."), + GUC_INTERNAL_SETTINGS, GUC_NOT_IN_SAMPLE | GUC_EXPLAIN }, &force_parallel_mode, @@ -4881,7 +5239,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"password_encryption", PGC_USERSET, CONN_AUTH_AUTH, gettext_noop("Chooses the algorithm for encrypting passwords."), - NULL + NULL, + GUC_INTERNAL_SETTINGS }, &Password_encryption, PASSWORD_TYPE_SCRAM_SHA_256, password_encryption_options, @@ -4894,6 +5253,7 @@ static struct config_enum ConfigureNamesEnum[] = gettext_noop("Prepared statements can have custom and generic plans, and the planner " "will attempt to choose which is better. This can be set to override " "the default behavior."), + GUC_INTERNAL_SETTINGS, GUC_EXPLAIN }, &plan_cache_mode, @@ -4905,6 +5265,7 @@ static struct config_enum ConfigureNamesEnum[] = {"ssl_min_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Sets the minimum SSL/TLS protocol version to use."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &ssl_min_protocol_version, @@ -4917,6 +5278,7 @@ static struct config_enum ConfigureNamesEnum[] = {"ssl_max_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Sets the maximum SSL/TLS protocol version to use."), NULL, + GUC_INTERFACE_SETTINGS, GUC_SUPERUSER_ONLY }, &ssl_max_protocol_version, @@ -4928,6 +5290,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"recovery_init_sync_method", PGC_POSTMASTER, ERROR_HANDLING_OPTIONS, gettext_noop("Sets the method for synchronizing the data directory before crash recovery."), + NULL, + GUC_WAL_SETTINGS, }, &recovery_init_sync_method, RECOVERY_INIT_SYNC_METHOD_FSYNC, recovery_init_sync_method_options, @@ -7214,6 +7578,60 @@ parse_and_validate_value(struct config_generic *record, return true; } +static bool +role_has_privileges(Oid roleid, int privileges) +{ + if ((privileges & GUC_INTERNAL_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_INTERNAL_SETTINGS)) + return false; + + if ((privileges & GUC_STORAGE_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_STORAGE_SETTINGS)) + return false; + + if ((privileges & GUC_WAL_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_WAL_SETTINGS)) + return false; + + if ((privileges & GUC_STATS_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_STATS_SETTINGS)) + return false; + + if ((privileges & GUC_MAINTENANCE_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_MAINTENANCE_SETTINGS)) + return false; + + if ((privileges & GUC_LOGGING_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_LOGGING_SETTINGS)) + return false; + + if ((privileges & GUC_INTERFACE_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_INTERFACE_SETTINGS)) + return false; + + if ((privileges & GUC_RESOURCE_USAGE) && + ! has_privs_of_role(roleid, ROLE_PG_RESOURCE_USAGE)) + return false; + + if ((privileges & GUC_FILESYSTEM_SECURITY) && + ! has_privs_of_role(roleid, ROLE_PG_FILESYSTEM_SECURITY)) + return false; + + if ((privileges & GUC_EXEC_COMMAND) && + ! has_privs_of_role(roleid, ROLE_PG_EXEC_COMMAND)) + return false; + + if ((privileges & GUC_SERVER_CONFIGURATION) && + ! has_privs_of_role(roleid, ROLE_PG_SERVER_CONFIGURATION)) + return false; + + if ((privileges & GUC_SECURITY_SETTINGS) && + ! has_privs_of_role(roleid, ROLE_PG_SECURITY_SETTINGS)) + return false; + + return true; +} + /* * Sets option `name' to given value. @@ -7361,7 +7779,8 @@ set_config_option(const char *name, const char *value, break; case PGC_SU_BACKEND: /* Reject if we're connecting but user is not superuser */ - if (context == PGC_BACKEND) + if (context == PGC_BACKEND && + !role_has_privileges(GetUserId(), record->privileges)) { ereport(elevel, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), @@ -7408,7 +7827,8 @@ set_config_option(const char *name, const char *value, } break; case PGC_SUSET: - if (context == PGC_USERSET || context == PGC_BACKEND) + if ((context == PGC_USERSET || context == PGC_BACKEND) && + !role_has_privileges(GetUserId(), record->privileges)) { ereport(elevel, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), @@ -8450,26 +8870,30 @@ replace_auto_config_value(ConfigVariable **head_p, ConfigVariable **tail_p, void AlterSystemSetConfigFile(AlterSystemStmt *altersysstmt) { + VariableSetKind kind; char *name; char *value; bool resetall = false; + bool is_super = false; ConfigVariable *head = NULL; ConfigVariable *tail = NULL; volatile int Tmpfd; char AutoConfFileName[MAXPGPATH]; char AutoConfTmpFileName[MAXPGPATH]; - if (!superuser()) - ereport(ERROR, - (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), - errmsg("must be superuser to execute ALTER SYSTEM command"))); - /* * Extract statement arguments */ name = altersysstmt->setstmt->name; + kind = altersysstmt->setstmt->kind; + is_super = superuser(); + + if (!is_super && kind == VAR_RESET_ALL) + ereport(ERROR, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("must be superuser to execute ALTER SYSTEM RESET ALL command"))); - switch (altersysstmt->setstmt->kind) + switch (kind) { case VAR_SET_VALUE: value = ExtractSetVariableArgs(altersysstmt->setstmt); @@ -8513,6 +8937,15 @@ AlterSystemSetConfigFile(AlterSystemStmt *altersysstmt) errmsg("parameter \"%s\" cannot be changed", name))); + /* + * Deny non-superusers trying to run ALTER SYSTEM SET on variables + * unless they belong to a role intended for the purpose. + */ + if (!is_super && !role_has_privileges(GetUserId(), record->privileges)) + ereport(ERROR, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("permission denied to set parameter \"%s\"", name))); + /* * If a value is specified, verify that it's sane. */ @@ -8874,6 +9307,7 @@ init_custom_variable(const char *name, const char *short_desc, const char *long_desc, GucContext context, + int privileges, int flags, enum config_type type, size_t sz) @@ -8919,6 +9353,7 @@ init_custom_variable(const char *name, gen->group = CUSTOM_OPTIONS; gen->short_desc = short_desc; gen->long_desc = long_desc; + gen->privileges = privileges; gen->flags = flags; gen->vartype = type; @@ -9117,6 +9552,7 @@ DefineCustomBoolVariable(const char *name, bool *valueAddr, bool bootValue, GucContext context, + int privileges, int flags, GucBoolCheckHook check_hook, GucBoolAssignHook assign_hook, @@ -9125,8 +9561,8 @@ DefineCustomBoolVariable(const char *name, struct config_bool *var; var = (struct config_bool *) - init_custom_variable(name, short_desc, long_desc, context, flags, - PGC_BOOL, sizeof(struct config_bool)); + init_custom_variable(name, short_desc, long_desc, context, privileges, + flags, PGC_BOOL, sizeof(struct config_bool)); var->variable = valueAddr; var->boot_val = bootValue; var->reset_val = bootValue; @@ -9145,6 +9581,7 @@ DefineCustomIntVariable(const char *name, int minValue, int maxValue, GucContext context, + int privileges, int flags, GucIntCheckHook check_hook, GucIntAssignHook assign_hook, @@ -9153,8 +9590,8 @@ DefineCustomIntVariable(const char *name, struct config_int *var; var = (struct config_int *) - init_custom_variable(name, short_desc, long_desc, context, flags, - PGC_INT, sizeof(struct config_int)); + init_custom_variable(name, short_desc, long_desc, context, privileges, + flags, PGC_INT, sizeof(struct config_int)); var->variable = valueAddr; var->boot_val = bootValue; var->reset_val = bootValue; @@ -9175,6 +9612,7 @@ DefineCustomRealVariable(const char *name, double minValue, double maxValue, GucContext context, + int privileges, int flags, GucRealCheckHook check_hook, GucRealAssignHook assign_hook, @@ -9183,8 +9621,8 @@ DefineCustomRealVariable(const char *name, struct config_real *var; var = (struct config_real *) - init_custom_variable(name, short_desc, long_desc, context, flags, - PGC_REAL, sizeof(struct config_real)); + init_custom_variable(name, short_desc, long_desc, context, privileges, + flags, PGC_REAL, sizeof(struct config_real)); var->variable = valueAddr; var->boot_val = bootValue; var->reset_val = bootValue; @@ -9203,6 +9641,7 @@ DefineCustomStringVariable(const char *name, char **valueAddr, const char *bootValue, GucContext context, + int privileges, int flags, GucStringCheckHook check_hook, GucStringAssignHook assign_hook, @@ -9211,8 +9650,8 @@ DefineCustomStringVariable(const char *name, struct config_string *var; var = (struct config_string *) - init_custom_variable(name, short_desc, long_desc, context, flags, - PGC_STRING, sizeof(struct config_string)); + init_custom_variable(name, short_desc, long_desc, context, privileges, + flags, PGC_STRING, sizeof(struct config_string)); var->variable = valueAddr; var->boot_val = bootValue; var->check_hook = check_hook; @@ -9229,6 +9668,7 @@ DefineCustomEnumVariable(const char *name, int bootValue, const struct config_enum_entry *options, GucContext context, + int privileges, int flags, GucEnumCheckHook check_hook, GucEnumAssignHook assign_hook, @@ -9237,8 +9677,8 @@ DefineCustomEnumVariable(const char *name, struct config_enum *var; var = (struct config_enum *) - init_custom_variable(name, short_desc, long_desc, context, flags, - PGC_ENUM, sizeof(struct config_enum)); + init_custom_variable(name, short_desc, long_desc, context, privileges, + flags, PGC_ENUM, sizeof(struct config_enum)); var->variable = valueAddr; var->boot_val = bootValue; var->reset_val = bootValue; diff --git a/src/include/catalog/pg_authid.dat b/src/include/catalog/pg_authid.dat index ed5916330c..e409de053b 100644 --- a/src/include/catalog/pg_authid.dat +++ b/src/include/catalog/pg_authid.dat @@ -39,6 +39,66 @@ rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9276', oid_symbol => 'ROLE_PG_INTERNAL_SETTINGS', + rolname => 'pg_internal_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9277', oid_symbol => 'ROLE_PG_STORAGE_SETTINGS', + rolname => 'pg_storage_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9278', oid_symbol => 'ROLE_PG_WAL_SETTINGS', + rolname => 'pg_wal_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9279', oid_symbol => 'ROLE_PG_STATS_SETTINGS', + rolname => 'pg_stats_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9280', oid_symbol => 'ROLE_PG_MAINTENANCE_SETTINGS', + rolname => 'pg_maintenance_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9281', oid_symbol => 'ROLE_PG_LOGGING_SETTINGS', + rolname => 'pg_logging_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9282', oid_symbol => 'ROLE_PG_INTERFACE_SETTINGS', + rolname => 'pg_interface_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9283', oid_symbol => 'ROLE_PG_RESOURCE_USAGE', + rolname => 'pg_resource_usage', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9284', oid_symbol => 'ROLE_PG_FILESYSTEM_SECURITY', + rolname => 'pg_filesystem_security', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9285', oid_symbol => 'ROLE_PG_EXEC_COMMAND', + rolname => 'pg_exec_command', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9286', oid_symbol => 'ROLE_PG_SERVER_CONFIGURATION', + rolname => 'pg_server_configuration', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, +{ oid => '9287', oid_symbol => 'ROLE_PG_SECURITY_SETTINGS', + rolname => 'pg_security_settings', rolsuper => 'f', rolinherit => 't', + rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', + rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1', + rolpassword => '_null_', rolvaliduntil => '_null_' }, { oid => '3373', oid_symbol => 'ROLE_PG_MONITOR', rolname => 'pg_monitor', rolsuper => 'f', rolinherit => 't', rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f', diff --git a/src/include/utils/guc.h b/src/include/utils/guc.h index 24a5d9d3fb..35f42d5908 100644 --- a/src/include/utils/guc.h +++ b/src/include/utils/guc.h @@ -198,6 +198,23 @@ typedef enum #define GUC_QUALIFIER_SEPARATOR '.' +/* + * privilege bits required to modify a GUC variable + */ +#define GUC_INTERNAL_SETTINGS 0x0001 /* internal behavior */ +#define GUC_STORAGE_SETTINGS 0x0002 /* storage error behavior */ +#define GUC_WAL_SETTINGS 0x0004 /* wal, replication and recovery */ +#define GUC_STATS_SETTINGS 0x0008 /* stats collection */ +#define GUC_MAINTENANCE_SETTINGS 0x0010 /* autovacuum */ +#define GUC_LOGGING_SETTINGS 0x0020 /* system log */ +#define GUC_INTERFACE_SETTINGS 0x0040 /* connection and authentication */ +#define GUC_RESOURCE_USAGE 0x0080 /* disk, memory, cpu */ +#define GUC_FILESYSTEM_SECURITY 0x0100 /* filesystem paths and perms */ +#define GUC_EXEC_COMMAND 0x0200 /* exec external programs */ +#define GUC_SERVER_CONFIGURATION 0x0400 /* server OS features usage */ +#define GUC_SECURITY_SETTINGS 0x0800 /* security sensitive settings */ +#define GUC_ALL_PRIVILEGES 0x0FFF /* all of the above */ + /* * bit values in "flags" of a GUC variable */ @@ -295,6 +312,7 @@ extern void DefineCustomBoolVariable(const char *name, bool *valueAddr, bool bootValue, GucContext context, + int privileges, int flags, GucBoolCheckHook check_hook, GucBoolAssignHook assign_hook, @@ -308,6 +326,7 @@ extern void DefineCustomIntVariable(const char *name, int minValue, int maxValue, GucContext context, + int privileges, int flags, GucIntCheckHook check_hook, GucIntAssignHook assign_hook, @@ -321,6 +340,7 @@ extern void DefineCustomRealVariable(const char *name, double minValue, double maxValue, GucContext context, + int privileges, int flags, GucRealCheckHook check_hook, GucRealAssignHook assign_hook, @@ -332,6 +352,7 @@ extern void DefineCustomStringVariable(const char *name, char **valueAddr, const char *bootValue, GucContext context, + int privileges, int flags, GucStringCheckHook check_hook, GucStringAssignHook assign_hook, @@ -344,6 +365,7 @@ extern void DefineCustomEnumVariable(const char *name, int bootValue, const struct config_enum_entry *options, GucContext context, + int privileges, int flags, GucEnumCheckHook check_hook, GucEnumAssignHook assign_hook, diff --git a/src/include/utils/guc_tables.h b/src/include/utils/guc_tables.h index 6b40f1eeb8..27288236ae 100644 --- a/src/include/utils/guc_tables.h +++ b/src/include/utils/guc_tables.h @@ -143,6 +143,7 @@ struct config_generic enum config_group group; /* to help organize variables by function */ const char *short_desc; /* short desc. of this variable's purpose */ const char *long_desc; /* long desc. of this variable's purpose */ + int privileges; /* privileges bits, see guc.h */ int flags; /* flag bits, see guc.h */ /* variable fields, initialized at runtime: */ enum config_type vartype; /* type of variable (set only at startup) */ diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c index 6299adf71a..d24989b9bd 100644 --- a/src/pl/plperl/plperl.c +++ b/src/pl/plperl/plperl.c @@ -406,7 +406,7 @@ _PG_init(void) NULL, &plperl_use_strict, false, - PGC_USERSET, 0, + PGC_USERSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); /* @@ -420,7 +420,7 @@ _PG_init(void) NULL, &plperl_on_init, NULL, - PGC_SIGHUP, 0, + PGC_SIGHUP, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); /* @@ -442,7 +442,7 @@ _PG_init(void) NULL, &plperl_on_plperl_init, NULL, - PGC_SUSET, 0, + PGC_SUSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); DefineCustomStringVariable("plperl.on_plperlu_init", @@ -450,7 +450,7 @@ _PG_init(void) NULL, &plperl_on_plperlu_init, NULL, - PGC_SUSET, 0, + PGC_SUSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); EmitWarningsOnPlaceholders("plperl"); diff --git a/src/pl/plpgsql/src/pl_handler.c b/src/pl/plpgsql/src/pl_handler.c index 00aace2f39..737eb80eb0 100644 --- a/src/pl/plpgsql/src/pl_handler.c +++ b/src/pl/plpgsql/src/pl_handler.c @@ -158,7 +158,7 @@ _PG_init(void) &plpgsql_variable_conflict, PLPGSQL_RESOLVE_ERROR, variable_conflict_options, - PGC_SUSET, 0, + PGC_SUSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); DefineCustomBoolVariable("plpgsql.print_strict_params", @@ -166,7 +166,7 @@ _PG_init(void) NULL, &plpgsql_print_strict_params, false, - PGC_USERSET, 0, + PGC_USERSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); DefineCustomBoolVariable("plpgsql.check_asserts", @@ -174,7 +174,7 @@ _PG_init(void) NULL, &plpgsql_check_asserts, true, - PGC_USERSET, 0, + PGC_USERSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); DefineCustomStringVariable("plpgsql.extra_warnings", @@ -182,7 +182,7 @@ _PG_init(void) NULL, &plpgsql_extra_warnings_string, "none", - PGC_USERSET, GUC_LIST_INPUT, + PGC_USERSET, GUC_ALL_PRIVILEGES, GUC_LIST_INPUT, plpgsql_extra_checks_check_hook, plpgsql_extra_warnings_assign_hook, NULL); @@ -192,7 +192,7 @@ _PG_init(void) NULL, &plpgsql_extra_errors_string, "none", - PGC_USERSET, GUC_LIST_INPUT, + PGC_USERSET, GUC_ALL_PRIVILEGES, GUC_LIST_INPUT, plpgsql_extra_checks_check_hook, plpgsql_extra_errors_assign_hook, NULL); diff --git a/src/pl/tcl/pltcl.c b/src/pl/tcl/pltcl.c index e11837559d..a52c101b0a 100644 --- a/src/pl/tcl/pltcl.c +++ b/src/pl/tcl/pltcl.c @@ -464,14 +464,14 @@ _PG_init(void) NULL, &pltcl_start_proc, NULL, - PGC_SUSET, 0, + PGC_SUSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); DefineCustomStringVariable("pltclu.start_proc", gettext_noop("PL/TclU function to call once when pltclu is first used."), NULL, &pltclu_start_proc, NULL, - PGC_SUSET, 0, + PGC_SUSET, GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); pltcl_pm_init_done = true; diff --git a/src/test/modules/delay_execution/delay_execution.c b/src/test/modules/delay_execution/delay_execution.c index b3d0841ba8..6e99f612fa 100644 --- a/src/test/modules/delay_execution/delay_execution.c +++ b/src/test/modules/delay_execution/delay_execution.c @@ -86,6 +86,7 @@ _PG_init(void) 0, 0, INT_MAX, PGC_USERSET, + GUC_ALL_PRIVILEGES, 0, NULL, NULL, diff --git a/src/test/modules/ssl_passphrase_callback/ssl_passphrase_func.c b/src/test/modules/ssl_passphrase_callback/ssl_passphrase_func.c index 6b0a3db104..b947247bf3 100644 --- a/src/test/modules/ssl_passphrase_callback/ssl_passphrase_func.c +++ b/src/test/modules/ssl_passphrase_callback/ssl_passphrase_func.c @@ -44,6 +44,7 @@ _PG_init(void) &ssl_passphrase, NULL, PGC_SIGHUP, + GUC_ALL_PRIVILEGES, 0, /* no flags required */ NULL, NULL, diff --git a/src/test/modules/worker_spi/worker_spi.c b/src/test/modules/worker_spi/worker_spi.c index d0acef2652..0ef493ebfe 100644 --- a/src/test/modules/worker_spi/worker_spi.c +++ b/src/test/modules/worker_spi/worker_spi.c @@ -293,6 +293,7 @@ _PG_init(void) 1, INT_MAX, PGC_SIGHUP, + GUC_ALL_PRIVILEGES, 0, NULL, NULL, @@ -309,6 +310,7 @@ _PG_init(void) 1, 100, PGC_POSTMASTER, + GUC_ALL_PRIVILEGES, 0, NULL, NULL, @@ -320,6 +322,7 @@ _PG_init(void) &worker_spi_database, "postgres", PGC_POSTMASTER, + GUC_ALL_PRIVILEGES, 0, NULL, NULL, NULL); diff --git a/src/test/regress/expected/guc_priv_admin.out b/src/test/regress/expected/guc_priv_admin.out new file mode 100644 index 0000000000..544dd5a426 --- /dev/null +++ b/src/test/regress/expected/guc_priv_admin.out @@ -0,0 +1,1844 @@ +-- Role with all GUC permissions +CREATE ROLE admin; +GRANT pg_internal_settings TO admin; +GRANT pg_stats_settings TO admin; +GRANT pg_maintenance_settings TO admin; +GRANT pg_storage_settings TO admin; +GRANT pg_wal_settings TO admin; +GRANT pg_logging_settings TO admin; +GRANT pg_interface_settings TO admin; +GRANT pg_resource_usage TO admin; +GRANT pg_filesystem_security TO admin; +GRANT pg_exec_command TO admin; +GRANT pg_server_configuration TO admin; +GRANT pg_security_settings TO admin; +-- Perform all operations as user 'admin' -- +SET SESSION AUTHORIZATION admin; +-- PGC_BACKEND / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET post_auth_delay = 50; -- fail, cannot be set after connection start +ERROR: parameter "post_auth_delay" cannot be set after connection start +RESET post_auth_delay; -- fail, cannot be set after connection start +ERROR: parameter "post_auth_delay" cannot be set after connection start +ALTER SYSTEM SET post_auth_delay = 50; -- ok +ALTER SYSTEM RESET post_auth_delay; -- ok +-- PGC_BACKEND / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET ignore_system_indexes = ON; -- fail, cannot be set after connection start +ERROR: parameter "ignore_system_indexes" cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ERROR: parameter "ignore_system_indexes" cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = ON; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / PRESET_OPTIONS +SET block_size = 50; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +RESET block_size; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +ALTER SYSTEM SET block_size = 50; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +ALTER SYSTEM RESET block_size; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +SET data_checksums = ON; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +RESET data_checksums; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +ALTER SYSTEM SET data_checksums = ON; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +SET data_directory_mode = 50; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +RESET data_directory_mode; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +ALTER SYSTEM SET data_directory_mode = 50; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +ALTER SYSTEM RESET data_directory_mode; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +SET debug_assertions = ON; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +ALTER SYSTEM SET debug_assertions = ON; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +SET in_hot_standby = ON; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +ALTER SYSTEM SET in_hot_standby = ON; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +SET integer_datetimes = ON; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +ALTER SYSTEM SET integer_datetimes = ON; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +ALTER SYSTEM RESET integer_datetimes; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +RESET lc_collate; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +ALTER SYSTEM SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +ALTER SYSTEM RESET lc_collate; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +RESET lc_ctype; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +ALTER SYSTEM SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +ALTER SYSTEM RESET lc_ctype; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +SET max_function_args = 50; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +RESET max_function_args; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +ALTER SYSTEM SET max_function_args = 50; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +ALTER SYSTEM RESET max_function_args; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +SET max_identifier_length = 50; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +RESET max_identifier_length; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +ALTER SYSTEM SET max_identifier_length = 50; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +ALTER SYSTEM RESET max_identifier_length; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +SET max_index_keys = 50; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +RESET max_index_keys; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +ALTER SYSTEM SET max_index_keys = 50; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +ALTER SYSTEM RESET max_index_keys; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +SET segment_size = 50; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +RESET segment_size; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +ALTER SYSTEM SET segment_size = 50; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +ALTER SYSTEM RESET segment_size; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +SET server_encoding = 'UTF8'; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +RESET server_encoding; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +ALTER SYSTEM SET server_encoding = 'UTF8'; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +ALTER SYSTEM RESET server_encoding; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +SET server_version = '9.1'; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +RESET server_version; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +ALTER SYSTEM SET server_version = '9.1'; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +ALTER SYSTEM RESET server_version; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +SET server_version_num = 50; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +RESET server_version_num; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +ALTER SYSTEM SET server_version_num = 50; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +ALTER SYSTEM RESET server_version_num; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +RESET ssl_library; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +ALTER SYSTEM SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +ALTER SYSTEM RESET ssl_library; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +SET wal_block_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +RESET wal_block_size; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +ALTER SYSTEM SET wal_block_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +ALTER SYSTEM RESET wal_block_size; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +SET wal_segment_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +RESET wal_segment_size; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +ALTER SYSTEM SET wal_segment_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +ALTER SYSTEM RESET wal_segment_size; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / UNGROUPED +SET is_superuser = ON; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +RESET is_superuser; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +ALTER SYSTEM SET is_superuser = ON; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET shared_preload_libraries = 'iconv, pcre'; -- fail, requires restart +ERROR: parameter "shared_preload_libraries" cannot be changed without restarting the server +RESET shared_preload_libraries; -- fail, requires restart +ERROR: parameter "shared_preload_libraries" cannot be changed without restarting the server +ALTER SYSTEM SET shared_preload_libraries = 'iconv, pcre'; -- ok +ALTER SYSTEM RESET shared_preload_libraries; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / FILE_LOCATIONS +SET config_file = '/usr/local/data/postgresql.conf'; -- fail, requires restart +ERROR: parameter "config_file" cannot be changed without restarting the server +RESET config_file; -- fail, requires restart +ERROR: parameter "config_file" cannot be changed without restarting the server +ALTER SYSTEM SET config_file = '/usr/local/data/postgresql.conf'; -- fail, cannot be changed +ERROR: parameter "config_file" cannot be changed +ALTER SYSTEM RESET config_file; -- fail, cannot be changed +ERROR: parameter "config_file" cannot be changed +SET data_directory = '/usr/local/data'; -- fail, requires restart +ERROR: parameter "data_directory" cannot be changed without restarting the server +RESET data_directory; -- fail, requires restart +ERROR: parameter "data_directory" cannot be changed without restarting the server +ALTER SYSTEM SET data_directory = '/usr/local/data'; -- fail, cannot be changed +ERROR: parameter "data_directory" cannot be changed +ALTER SYSTEM RESET data_directory; -- fail, cannot be changed +ERROR: parameter "data_directory" cannot be changed +SET external_pid_file = '/var/postgres/master.pid'; -- fail, requires restart +ERROR: parameter "external_pid_file" cannot be changed without restarting the server +RESET external_pid_file; -- fail, requires restart +ERROR: parameter "external_pid_file" cannot be changed without restarting the server +ALTER SYSTEM SET external_pid_file = '/var/postgres/master.pid'; -- ok +ALTER SYSTEM RESET external_pid_file; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET unix_socket_directories = '/tmp'; -- fail, requires restart +ERROR: parameter "unix_socket_directories" cannot be changed without restarting the server +RESET unix_socket_directories; -- fail, requires restart +ERROR: parameter "unix_socket_directories" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_directories = '/tmp'; -- ok +ALTER SYSTEM RESET unix_socket_directories; -- ok +SET unix_socket_group = 'tenant'; -- fail, requires restart +ERROR: parameter "unix_socket_group" cannot be changed without restarting the server +RESET unix_socket_group; -- fail, requires restart +ERROR: parameter "unix_socket_group" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_group = 'tenant'; -- ok +ALTER SYSTEM RESET unix_socket_group; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET logging_collector = ON; -- fail, requires restart +ERROR: parameter "logging_collector" cannot be changed without restarting the server +RESET logging_collector; -- fail, requires restart +ERROR: parameter "logging_collector" cannot be changed without restarting the server +ALTER SYSTEM SET logging_collector = ON; -- ok +ALTER SYSTEM RESET logging_collector; -- ok +-- PGC_POSTMASTER / GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET bonjour = ON; -- fail, requires restart +ERROR: parameter "bonjour" cannot be changed without restarting the server +RESET bonjour; -- fail, requires restart +ERROR: parameter "bonjour" cannot be changed without restarting the server +ALTER SYSTEM SET bonjour = ON; -- ok +ALTER SYSTEM RESET bonjour; -- ok +SET bonjour_name = 'BonneNuit'; -- fail, requires restart +ERROR: parameter "bonjour_name" cannot be changed without restarting the server +RESET bonjour_name; -- fail, requires restart +ERROR: parameter "bonjour_name" cannot be changed without restarting the server +ALTER SYSTEM SET bonjour_name = 'BonneNuit'; -- ok +ALTER SYSTEM RESET bonjour_name; -- ok +SET listen_addresses = 'localhost'; -- fail, requires restart +ERROR: parameter "listen_addresses" cannot be changed without restarting the server +RESET listen_addresses; -- fail, requires restart +ERROR: parameter "listen_addresses" cannot be changed without restarting the server +ALTER SYSTEM SET listen_addresses = 'localhost'; -- ok +ALTER SYSTEM RESET listen_addresses; -- ok +SET max_connections = 50; -- fail, requires restart +ERROR: parameter "max_connections" cannot be changed without restarting the server +RESET max_connections; -- fail, requires restart +ERROR: parameter "max_connections" cannot be changed without restarting the server +ALTER SYSTEM SET max_connections = 50; -- ok +ALTER SYSTEM RESET max_connections; -- ok +SET port = 50; -- fail, requires restart +ERROR: parameter "port" cannot be changed without restarting the server +RESET port; -- fail, requires restart +ERROR: parameter "port" cannot be changed without restarting the server +ALTER SYSTEM SET port = 50; -- ok +ALTER SYSTEM RESET port; -- ok +SET superuser_reserved_connections = 50; -- fail, requires restart +ERROR: parameter "superuser_reserved_connections" cannot be changed without restarting the server +RESET superuser_reserved_connections; -- fail, requires restart +ERROR: parameter "superuser_reserved_connections" cannot be changed without restarting the server +ALTER SYSTEM SET superuser_reserved_connections = 50; -- ok +ALTER SYSTEM RESET superuser_reserved_connections; -- ok +SET unix_socket_permissions = 50; -- fail, requires restart +ERROR: parameter "unix_socket_permissions" cannot be changed without restarting the server +RESET unix_socket_permissions; -- fail, requires restart +ERROR: parameter "unix_socket_permissions" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_permissions = 50; -- ok +ALTER SYSTEM RESET unix_socket_permissions; -- ok +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET huge_pages = 'try'; -- fail, requires restart +ERROR: parameter "huge_pages" cannot be changed without restarting the server +RESET huge_pages; -- fail, requires restart +ERROR: parameter "huge_pages" cannot be changed without restarting the server +ALTER SYSTEM SET huge_pages = 'try'; -- ok +ALTER SYSTEM RESET huge_pages; -- ok +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / CLIENT_CONN_PRELOAD +SET jit_provider = 'llvmjit'; -- fail, requires restart +ERROR: parameter "jit_provider" cannot be changed without restarting the server +RESET jit_provider; -- fail, requires restart +ERROR: parameter "jit_provider" cannot be changed without restarting the server +ALTER SYSTEM SET jit_provider = 'llvmjit'; -- ok +ALTER SYSTEM RESET jit_provider; -- ok +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS / PROCESS_TITLE +SET cluster_name = 'BonCluster'; -- fail, requires restart +ERROR: parameter "cluster_name" cannot be changed without restarting the server +RESET cluster_name; -- fail, requires restart +ERROR: parameter "cluster_name" cannot be changed without restarting the server +ALTER SYSTEM SET cluster_name = 'BonCluster'; -- ok +ALTER SYSTEM RESET cluster_name; -- ok +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET event_source = 'PostgreSQL'; -- fail, requires restart +ERROR: parameter "event_source" cannot be changed without restarting the server +RESET event_source; -- fail, requires restart +ERROR: parameter "event_source" cannot be changed without restarting the server +ALTER SYSTEM SET event_source = 'PostgreSQL'; -- ok +ALTER SYSTEM RESET event_source; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_freeze_max_age = 1000050000; -- fail, requires restart +ERROR: parameter "autovacuum_freeze_max_age" cannot be changed without restarting the server +RESET autovacuum_freeze_max_age; -- fail, requires restart +ERROR: parameter "autovacuum_freeze_max_age" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_freeze_max_age = 1000050000; -- ok +ALTER SYSTEM RESET autovacuum_freeze_max_age; -- ok +SET autovacuum_multixact_freeze_max_age = 1000005000; -- fail, requires restart +ERROR: parameter "autovacuum_multixact_freeze_max_age" cannot be changed without restarting the server +RESET autovacuum_multixact_freeze_max_age; -- fail, requires restart +ERROR: parameter "autovacuum_multixact_freeze_max_age" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_multixact_freeze_max_age = 1000005000; -- ok +ALTER SYSTEM RESET autovacuum_multixact_freeze_max_age; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum_max_workers = 50; -- fail, requires restart +ERROR: parameter "autovacuum_max_workers" cannot be changed without restarting the server +RESET autovacuum_max_workers; -- fail, requires restart +ERROR: parameter "autovacuum_max_workers" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_max_workers = 50; -- ok +ALTER SYSTEM RESET autovacuum_max_workers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_locks_per_transaction = 50; -- fail, requires restart +ERROR: parameter "max_locks_per_transaction" cannot be changed without restarting the server +RESET max_locks_per_transaction; -- fail, requires restart +ERROR: parameter "max_locks_per_transaction" cannot be changed without restarting the server +ALTER SYSTEM SET max_locks_per_transaction = 50; -- ok +ALTER SYSTEM RESET max_locks_per_transaction; -- ok +SET max_pred_locks_per_transaction = 50; -- fail, requires restart +ERROR: parameter "max_pred_locks_per_transaction" cannot be changed without restarting the server +RESET max_pred_locks_per_transaction; -- fail, requires restart +ERROR: parameter "max_pred_locks_per_transaction" cannot be changed without restarting the server +ALTER SYSTEM SET max_pred_locks_per_transaction = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_transaction; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_logical_replication_workers = 50; -- fail, requires restart +ERROR: parameter "max_logical_replication_workers" cannot be changed without restarting the server +RESET max_logical_replication_workers; -- fail, requires restart +ERROR: parameter "max_logical_replication_workers" cannot be changed without restarting the server +ALTER SYSTEM SET max_logical_replication_workers = 50; -- ok +ALTER SYSTEM RESET max_logical_replication_workers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET max_worker_processes = 50; -- fail, requires restart +ERROR: parameter "max_worker_processes" cannot be changed without restarting the server +RESET max_worker_processes; -- fail, requires restart +ERROR: parameter "max_worker_processes" cannot be changed without restarting the server +ALTER SYSTEM SET max_worker_processes = 50; -- ok +ALTER SYSTEM RESET max_worker_processes; -- ok +SET old_snapshot_threshold = 50; -- fail, requires restart +ERROR: parameter "old_snapshot_threshold" cannot be changed without restarting the server +RESET old_snapshot_threshold; -- fail, requires restart +ERROR: parameter "old_snapshot_threshold" cannot be changed without restarting the server +ALTER SYSTEM SET old_snapshot_threshold = 50; -- ok +ALTER SYSTEM RESET old_snapshot_threshold; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_KERNEL +SET max_files_per_process = 1073741855; -- fail, requires restart +ERROR: parameter "max_files_per_process" cannot be changed without restarting the server +RESET max_files_per_process; -- fail, requires restart +ERROR: parameter "max_files_per_process" cannot be changed without restarting the server +ALTER SYSTEM SET max_files_per_process = 1073741855; -- ok +ALTER SYSTEM RESET max_files_per_process; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_prepared_transactions = 50; -- fail, requires restart +ERROR: parameter "max_prepared_transactions" cannot be changed without restarting the server +RESET max_prepared_transactions; -- fail, requires restart +ERROR: parameter "max_prepared_transactions" cannot be changed without restarting the server +ALTER SYSTEM SET max_prepared_transactions = 50; -- ok +ALTER SYSTEM RESET max_prepared_transactions; -- ok +SET min_dynamic_shared_memory = 50; -- fail, requires restart +ERROR: parameter "min_dynamic_shared_memory" cannot be changed without restarting the server +RESET min_dynamic_shared_memory; -- fail, requires restart +ERROR: parameter "min_dynamic_shared_memory" cannot be changed without restarting the server +ALTER SYSTEM SET min_dynamic_shared_memory = 50; -- ok +ALTER SYSTEM RESET min_dynamic_shared_memory; -- ok +SET shared_buffers = 50; -- fail, requires restart +ERROR: parameter "shared_buffers" cannot be changed without restarting the server +RESET shared_buffers; -- fail, requires restart +ERROR: parameter "shared_buffers" cannot be changed without restarting the server +ALTER SYSTEM SET shared_buffers = 50; -- ok +ALTER SYSTEM RESET shared_buffers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / STATS_COLLECTOR +SET track_activity_query_size = 524338; -- fail, requires restart +ERROR: parameter "track_activity_query_size" cannot be changed without restarting the server +RESET track_activity_query_size; -- fail, requires restart +ERROR: parameter "track_activity_query_size" cannot be changed without restarting the server +ALTER SYSTEM SET track_activity_query_size = 524338; -- ok +ALTER SYSTEM RESET track_activity_query_size; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_replication_slots = 50; -- fail, requires restart +ERROR: parameter "max_replication_slots" cannot be changed without restarting the server +RESET max_replication_slots; -- fail, requires restart +ERROR: parameter "max_replication_slots" cannot be changed without restarting the server +ALTER SYSTEM SET max_replication_slots = 50; -- ok +ALTER SYSTEM RESET max_replication_slots; -- ok +SET max_wal_senders = 50; -- fail, requires restart +ERROR: parameter "max_wal_senders" cannot be changed without restarting the server +RESET max_wal_senders; -- fail, requires restart +ERROR: parameter "max_wal_senders" cannot be changed without restarting the server +ALTER SYSTEM SET max_wal_senders = 50; -- ok +ALTER SYSTEM RESET max_wal_senders; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_buffers = 50; -- fail, requires restart +ERROR: parameter "wal_buffers" cannot be changed without restarting the server +RESET wal_buffers; -- fail, requires restart +ERROR: parameter "wal_buffers" cannot be changed without restarting the server +ALTER SYSTEM SET wal_buffers = 50; -- ok +ALTER SYSTEM RESET wal_buffers; -- ok +-- PGC_POSTMASTER / GUC_SERVER_CONFIGURATION / RESOURCES_MEM +SET dynamic_shared_memory_type = 'posix'; -- fail, requires restart +ERROR: parameter "dynamic_shared_memory_type" cannot be changed without restarting the server +RESET dynamic_shared_memory_type; -- fail, requires restart +ERROR: parameter "dynamic_shared_memory_type" cannot be changed without restarting the server +ALTER SYSTEM SET dynamic_shared_memory_type = 'posix'; -- ok +ALTER SYSTEM RESET dynamic_shared_memory_type; -- ok +SET shared_memory_type = 'mmap'; -- fail, requires restart +ERROR: parameter "shared_memory_type" cannot be changed without restarting the server +RESET shared_memory_type; -- fail, requires restart +ERROR: parameter "shared_memory_type" cannot be changed without restarting the server +ALTER SYSTEM SET shared_memory_type = 'mmap'; -- ok +ALTER SYSTEM RESET shared_memory_type; -- ok +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_invalid_pages = ON; -- fail, requires restart +ERROR: parameter "ignore_invalid_pages" cannot be changed without restarting the server +RESET ignore_invalid_pages; -- fail, requires restart +ERROR: parameter "ignore_invalid_pages" cannot be changed without restarting the server +ALTER SYSTEM SET ignore_invalid_pages = ON; -- ok +ALTER SYSTEM RESET ignore_invalid_pages; -- ok +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / ERROR_HANDLING_OPTIONS +SET data_sync_retry = ON; -- fail, requires restart +ERROR: parameter "data_sync_retry" cannot be changed without restarting the server +RESET data_sync_retry; -- fail, requires restart +ERROR: parameter "data_sync_retry" cannot be changed without restarting the server +ALTER SYSTEM SET data_sync_retry = ON; -- ok +ALTER SYSTEM RESET data_sync_retry; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET recovery_init_sync_method = 'fsync'; -- fail, requires restart +ERROR: parameter "recovery_init_sync_method" cannot be changed without restarting the server +RESET recovery_init_sync_method; -- fail, requires restart +ERROR: parameter "recovery_init_sync_method" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_init_sync_method = 'fsync'; -- ok +ALTER SYSTEM RESET recovery_init_sync_method; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET track_commit_timestamp = ON; -- fail, requires restart +ERROR: parameter "track_commit_timestamp" cannot be changed without restarting the server +RESET track_commit_timestamp; -- fail, requires restart +ERROR: parameter "track_commit_timestamp" cannot be changed without restarting the server +ALTER SYSTEM SET track_commit_timestamp = ON; -- ok +ALTER SYSTEM RESET track_commit_timestamp; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby = ON; -- fail, requires restart +ERROR: parameter "hot_standby" cannot be changed without restarting the server +RESET hot_standby; -- fail, requires restart +ERROR: parameter "hot_standby" cannot be changed without restarting the server +ALTER SYSTEM SET hot_standby = ON; -- ok +ALTER SYSTEM RESET hot_standby; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_mode = 'off'; -- fail, requires restart +ERROR: parameter "archive_mode" cannot be changed without restarting the server +RESET archive_mode; -- fail, requires restart +ERROR: parameter "archive_mode" cannot be changed without restarting the server +ALTER SYSTEM SET archive_mode = 'off'; -- ok +ALTER SYSTEM RESET archive_mode; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_RECOVERY_TARGET +SET recovery_target_action = 'pause'; -- fail, requires restart +ERROR: parameter "recovery_target_action" cannot be changed without restarting the server +RESET recovery_target_action; -- fail, requires restart +ERROR: parameter "recovery_target_action" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_action = 'pause'; -- ok +ALTER SYSTEM RESET recovery_target_action; -- ok +SET recovery_target_inclusive = ON; -- fail, requires restart +ERROR: parameter "recovery_target_inclusive" cannot be changed without restarting the server +RESET recovery_target_inclusive; -- fail, requires restart +ERROR: parameter "recovery_target_inclusive" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_inclusive = ON; -- ok +ALTER SYSTEM RESET recovery_target_inclusive; -- ok +SET recovery_target_lsn = '16/B374D848'; -- fail, requires restart +ERROR: parameter "recovery_target_lsn" cannot be changed without restarting the server +RESET recovery_target_lsn; -- fail, requires restart +ERROR: parameter "recovery_target_lsn" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_lsn = '16/B374D848'; -- ok +ALTER SYSTEM RESET recovery_target_lsn; -- ok +SET recovery_target_name = 'BonPoint'; -- fail, requires restart +ERROR: parameter "recovery_target_name" cannot be changed without restarting the server +RESET recovery_target_name; -- fail, requires restart +ERROR: parameter "recovery_target_name" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_name = 'BonPoint'; -- ok +ALTER SYSTEM RESET recovery_target_name; -- ok +SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, requires restart +ERROR: parameter "recovery_target_time" cannot be changed without restarting the server +RESET recovery_target_time; -- fail, requires restart +ERROR: parameter "recovery_target_time" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- ok +ALTER SYSTEM RESET recovery_target_time; -- ok +SET recovery_target_timeline = 'latest'; -- fail, requires restart +ERROR: parameter "recovery_target_timeline" cannot be changed without restarting the server +RESET recovery_target_timeline; -- fail, requires restart +ERROR: parameter "recovery_target_timeline" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_timeline = 'latest'; -- ok +ALTER SYSTEM RESET recovery_target_timeline; -- ok +SET recovery_target_xid = '12345678'; -- fail, requires restart +ERROR: parameter "recovery_target_xid" cannot be changed without restarting the server +RESET recovery_target_xid; -- fail, requires restart +ERROR: parameter "recovery_target_xid" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_xid = '12345678'; -- ok +ALTER SYSTEM RESET recovery_target_xid; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_level = 'replica'; -- fail, requires restart +ERROR: parameter "wal_level" cannot be changed without restarting the server +RESET wal_level; -- fail, requires restart +ERROR: parameter "wal_level" cannot be changed without restarting the server +ALTER SYSTEM SET wal_level = 'replica'; -- ok +ALTER SYSTEM RESET wal_level; -- ok +SET wal_log_hints = ON; -- fail, requires restart +ERROR: parameter "wal_log_hints" cannot be changed without restarting the server +RESET wal_log_hints; -- fail, requires restart +ERROR: parameter "wal_log_hints" cannot be changed without restarting the server +ALTER SYSTEM SET wal_log_hints = ON; -- ok +ALTER SYSTEM RESET wal_log_hints; -- ok +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVE_RECOVERY +SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, requires reload +ERROR: parameter "archive_cleanup_command" cannot be changed now +RESET archive_cleanup_command; -- fail, requires reload +ERROR: parameter "archive_cleanup_command" cannot be changed now +ALTER SYSTEM SET archive_cleanup_command = '/bin/cleanup my stuff'; -- ok +ALTER SYSTEM RESET archive_cleanup_command; -- ok +SET recovery_end_command = '/bin/recover my stuff'; -- fail, requires reload +ERROR: parameter "recovery_end_command" cannot be changed now +RESET recovery_end_command; -- fail, requires reload +ERROR: parameter "recovery_end_command" cannot be changed now +ALTER SYSTEM SET recovery_end_command = '/bin/recover my stuff'; -- ok +ALTER SYSTEM RESET recovery_end_command; -- ok +SET restore_command = '/bin/restore my stuff'; -- fail, requires reload +ERROR: parameter "restore_command" cannot be changed now +RESET restore_command; -- fail, requires reload +ERROR: parameter "restore_command" cannot be changed now +ALTER SYSTEM SET restore_command = '/bin/restore my stuff'; -- ok +ALTER SYSTEM RESET restore_command; -- ok +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVING +SET archive_command = '/bin/archive my stuff'; -- fail, requires reload +ERROR: parameter "archive_command" cannot be changed now +RESET archive_command; -- fail, requires reload +ERROR: parameter "archive_command" cannot be changed now +ALTER SYSTEM SET archive_command = '/bin/archive my stuff'; -- ok +ALTER SYSTEM RESET archive_command; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / CONN_AUTH_SSL +SET ssl_ca_file = 'ca/server.ca'; -- fail, requires reload +ERROR: parameter "ssl_ca_file" cannot be changed now +RESET ssl_ca_file; -- fail, requires reload +ERROR: parameter "ssl_ca_file" cannot be changed now +ALTER SYSTEM SET ssl_ca_file = 'ca/server.ca'; -- ok +ALTER SYSTEM RESET ssl_ca_file; -- ok +SET ssl_cert_file = 'crt/server.crt'; -- fail, requires reload +ERROR: parameter "ssl_cert_file" cannot be changed now +RESET ssl_cert_file; -- fail, requires reload +ERROR: parameter "ssl_cert_file" cannot be changed now +ALTER SYSTEM SET ssl_cert_file = 'crt/server.crt'; -- ok +ALTER SYSTEM RESET ssl_cert_file; -- ok +SET ssl_crl_file = 'crl/server.crl'; -- fail, requires reload +ERROR: parameter "ssl_crl_file" cannot be changed now +RESET ssl_crl_file; -- fail, requires reload +ERROR: parameter "ssl_crl_file" cannot be changed now +ALTER SYSTEM SET ssl_crl_file = 'crl/server.crl'; -- ok +ALTER SYSTEM RESET ssl_crl_file; -- ok +SET ssl_key_file = 'crl/server.key'; -- fail, requires reload +ERROR: parameter "ssl_key_file" cannot be changed now +RESET ssl_key_file; -- fail, requires reload +ERROR: parameter "ssl_key_file" cannot be changed now +ALTER SYSTEM SET ssl_key_file = 'crl/server.key'; -- ok +ALTER SYSTEM RESET ssl_key_file; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / STATS_COLLECTOR +SET stats_temp_directory = 'pg_stat_tmp'; -- fail, requires reload +ERROR: parameter "stats_temp_directory" cannot be changed now +RESET stats_temp_directory; -- fail, requires reload +ERROR: parameter "stats_temp_directory" cannot be changed now +ALTER SYSTEM SET stats_temp_directory = 'pg_stat_tmp'; -- ok +ALTER SYSTEM RESET stats_temp_directory; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET krb_server_keyfile = 'krb/server.key'; -- fail, requires reload +ERROR: parameter "krb_server_keyfile" cannot be changed now +RESET krb_server_keyfile; -- fail, requires reload +ERROR: parameter "krb_server_keyfile" cannot be changed now +ALTER SYSTEM SET krb_server_keyfile = 'krb/server.key'; -- ok +ALTER SYSTEM RESET krb_server_keyfile; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS / LOGGING_WHERE +SET log_file_mode = 50; -- fail, requires reload +ERROR: parameter "log_file_mode" cannot be changed now +RESET log_file_mode; -- fail, requires reload +ERROR: parameter "log_file_mode" cannot be changed now +ALTER SYSTEM SET log_file_mode = 50; -- ok +ALTER SYSTEM RESET log_file_mode; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_rotation_age = 50; -- fail, requires reload +ERROR: parameter "log_rotation_age" cannot be changed now +RESET log_rotation_age; -- fail, requires reload +ERROR: parameter "log_rotation_age" cannot be changed now +ALTER SYSTEM SET log_rotation_age = 50; -- ok +ALTER SYSTEM RESET log_rotation_age; -- ok +SET log_rotation_size = 50; -- fail, requires reload +ERROR: parameter "log_rotation_size" cannot be changed now +RESET log_rotation_size; -- fail, requires reload +ERROR: parameter "log_rotation_size" cannot be changed now +ALTER SYSTEM SET log_rotation_size = 50; -- ok +ALTER SYSTEM RESET log_rotation_size; -- ok +SET log_truncate_on_rotation = ON; -- fail, requires reload +ERROR: parameter "log_truncate_on_rotation" cannot be changed now +RESET log_truncate_on_rotation; -- fail, requires reload +ERROR: parameter "log_truncate_on_rotation" cannot be changed now +ALTER SYSTEM SET log_truncate_on_rotation = ON; -- ok +ALTER SYSTEM RESET log_truncate_on_rotation; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / CONN_AUTH_SSL +SET ssl_crl_dir = 'crl/'; -- fail, requires reload +ERROR: parameter "ssl_crl_dir" cannot be changed now +RESET ssl_crl_dir; -- fail, requires reload +ERROR: parameter "ssl_crl_dir" cannot be changed now +ALTER SYSTEM SET ssl_crl_dir = 'crl/'; -- ok +ALTER SYSTEM RESET ssl_crl_dir; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_directory = 'log'; -- fail, requires reload +ERROR: parameter "log_directory" cannot be changed now +RESET log_directory; -- fail, requires reload +ERROR: parameter "log_directory" cannot be changed now +ALTER SYSTEM SET log_directory = 'log'; -- ok +ALTER SYSTEM RESET log_directory; -- ok +SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, requires reload +ERROR: parameter "log_filename" cannot be changed now +RESET log_filename; -- fail, requires reload +ERROR: parameter "log_filename" cannot be changed now +ALTER SYSTEM SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- ok +ALTER SYSTEM RESET log_filename; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET authentication_timeout = 50; -- fail, requires reload +ERROR: parameter "authentication_timeout" cannot be changed now +RESET authentication_timeout; -- fail, requires reload +ERROR: parameter "authentication_timeout" cannot be changed now +ALTER SYSTEM SET authentication_timeout = 50; -- ok +ALTER SYSTEM RESET authentication_timeout; -- ok +SET db_user_namespace = ON; -- fail, requires reload +ERROR: parameter "db_user_namespace" cannot be changed now +RESET db_user_namespace; -- fail, requires reload +ERROR: parameter "db_user_namespace" cannot be changed now +ALTER SYSTEM SET db_user_namespace = ON; -- ok +ALTER SYSTEM RESET db_user_namespace; -- ok +SET krb_caseins_users = ON; -- fail, requires reload +ERROR: parameter "krb_caseins_users" cannot be changed now +RESET krb_caseins_users; -- fail, requires reload +ERROR: parameter "krb_caseins_users" cannot be changed now +ALTER SYSTEM SET krb_caseins_users = ON; -- ok +ALTER SYSTEM RESET krb_caseins_users; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_SSL +SET ssl_ciphers = 'none'; -- fail, requires reload +ERROR: parameter "ssl_ciphers" cannot be changed now +RESET ssl_ciphers; -- fail, requires reload +ERROR: parameter "ssl_ciphers" cannot be changed now +ALTER SYSTEM SET ssl_ciphers = 'none'; -- ok +ALTER SYSTEM RESET ssl_ciphers; -- ok +SET ssl_dh_params_file = 'ssl/params'; -- fail, requires reload +ERROR: parameter "ssl_dh_params_file" cannot be changed now +RESET ssl_dh_params_file; -- fail, requires reload +ERROR: parameter "ssl_dh_params_file" cannot be changed now +ALTER SYSTEM SET ssl_dh_params_file = 'ssl/params'; -- ok +ALTER SYSTEM RESET ssl_dh_params_file; -- ok +SET ssl_ecdh_curve = 'none'; -- fail, requires reload +ERROR: parameter "ssl_ecdh_curve" cannot be changed now +RESET ssl_ecdh_curve; -- fail, requires reload +ERROR: parameter "ssl_ecdh_curve" cannot be changed now +ALTER SYSTEM SET ssl_ecdh_curve = 'none'; -- ok +ALTER SYSTEM RESET ssl_ecdh_curve; -- ok +SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, requires reload +ERROR: parameter "ssl_min_protocol_version" cannot be changed now +RESET ssl_min_protocol_version; -- fail, requires reload +ERROR: parameter "ssl_min_protocol_version" cannot be changed now +ALTER SYSTEM SET ssl_min_protocol_version = 'TLSv1.2'; -- ok +ALTER SYSTEM RESET ssl_min_protocol_version; -- ok +SET ssl_passphrase_command = '/bin/passphrase'; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command" cannot be changed now +RESET ssl_passphrase_command; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command" cannot be changed now +ALTER SYSTEM SET ssl_passphrase_command = '/bin/passphrase'; -- ok +ALTER SYSTEM RESET ssl_passphrase_command; -- ok +SET ssl_passphrase_command_supports_reload = ON; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command_supports_reload" cannot be changed now +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command_supports_reload" cannot be changed now +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = ON; -- ok +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- ok +SET ssl_prefer_server_ciphers = ON; -- fail, requires reload +ERROR: parameter "ssl_prefer_server_ciphers" cannot be changed now +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ERROR: parameter "ssl_prefer_server_ciphers" cannot be changed now +ALTER SYSTEM SET ssl_prefer_server_ciphers = ON; -- ok +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET pre_auth_delay = 50; -- fail, requires reload +ERROR: parameter "pre_auth_delay" cannot be changed now +RESET pre_auth_delay; -- fail, requires reload +ERROR: parameter "pre_auth_delay" cannot be changed now +ALTER SYSTEM SET pre_auth_delay = 50; -- ok +ALTER SYSTEM RESET pre_auth_delay; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS | GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_hostname = ON; -- fail, requires reload +ERROR: parameter "log_hostname" cannot be changed now +RESET log_hostname; -- fail, requires reload +ERROR: parameter "log_hostname" cannot be changed now +ALTER SYSTEM SET log_hostname = ON; -- ok +ALTER SYSTEM RESET log_hostname; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_autovacuum_min_duration = 50; -- fail, requires reload +ERROR: parameter "log_autovacuum_min_duration" cannot be changed now +RESET log_autovacuum_min_duration; -- fail, requires reload +ERROR: parameter "log_autovacuum_min_duration" cannot be changed now +ALTER SYSTEM SET log_autovacuum_min_duration = 50; -- ok +ALTER SYSTEM RESET log_autovacuum_min_duration; -- ok +SET log_checkpoints = ON; -- fail, requires reload +ERROR: parameter "log_checkpoints" cannot be changed now +RESET log_checkpoints; -- fail, requires reload +ERROR: parameter "log_checkpoints" cannot be changed now +ALTER SYSTEM SET log_checkpoints = ON; -- ok +ALTER SYSTEM RESET log_checkpoints; -- ok +SET log_line_prefix = '%m [%p] '; -- fail, requires reload +ERROR: parameter "log_line_prefix" cannot be changed now +RESET log_line_prefix; -- fail, requires reload +ERROR: parameter "log_line_prefix" cannot be changed now +ALTER SYSTEM SET log_line_prefix = '%m [%p] '; -- ok +ALTER SYSTEM RESET log_line_prefix; -- ok +SET log_recovery_conflict_waits = ON; -- fail, requires reload +ERROR: parameter "log_recovery_conflict_waits" cannot be changed now +RESET log_recovery_conflict_waits; -- fail, requires reload +ERROR: parameter "log_recovery_conflict_waits" cannot be changed now +ALTER SYSTEM SET log_recovery_conflict_waits = ON; -- ok +ALTER SYSTEM RESET log_recovery_conflict_waits; -- ok +SET log_timezone = 'Europe/Helsinki'; -- fail, requires reload +ERROR: parameter "log_timezone" cannot be changed now +RESET log_timezone; -- fail, requires reload +ERROR: parameter "log_timezone" cannot be changed now +ALTER SYSTEM SET log_timezone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET log_timezone; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET syslog_ident = 'postgres'; -- fail, requires reload +ERROR: parameter "syslog_ident" cannot be changed now +RESET syslog_ident; -- fail, requires reload +ERROR: parameter "syslog_ident" cannot be changed now +ALTER SYSTEM SET syslog_ident = 'postgres'; -- ok +ALTER SYSTEM RESET syslog_ident; -- ok +SET syslog_sequence_numbers = ON; -- fail, requires reload +ERROR: parameter "syslog_sequence_numbers" cannot be changed now +RESET syslog_sequence_numbers; -- fail, requires reload +ERROR: parameter "syslog_sequence_numbers" cannot be changed now +ALTER SYSTEM SET syslog_sequence_numbers = ON; -- ok +ALTER SYSTEM RESET syslog_sequence_numbers; -- ok +SET syslog_split_messages = ON; -- fail, requires reload +ERROR: parameter "syslog_split_messages" cannot be changed now +RESET syslog_split_messages; -- fail, requires reload +ERROR: parameter "syslog_split_messages" cannot be changed now +ALTER SYSTEM SET syslog_split_messages = ON; -- ok +ALTER SYSTEM RESET syslog_split_messages; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET trace_recovery_messages = 'log'; -- fail, requires reload +ERROR: parameter "trace_recovery_messages" cannot be changed now +RESET trace_recovery_messages; -- fail, requires reload +ERROR: parameter "trace_recovery_messages" cannot be changed now +ALTER SYSTEM SET trace_recovery_messages = 'log'; -- ok +ALTER SYSTEM RESET trace_recovery_messages; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_warning = 50; -- fail, requires reload +ERROR: parameter "checkpoint_warning" cannot be changed now +RESET checkpoint_warning; -- fail, requires reload +ERROR: parameter "checkpoint_warning" cannot be changed now +ALTER SYSTEM SET checkpoint_warning = 50; -- ok +ALTER SYSTEM RESET checkpoint_warning; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_analyze_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_scale_factor" cannot be changed now +RESET autovacuum_analyze_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_analyze_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_scale_factor; -- ok +SET autovacuum_analyze_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_threshold" cannot be changed now +RESET autovacuum_analyze_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_analyze_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_threshold; -- ok +SET autovacuum_naptime = 50; -- fail, requires reload +ERROR: parameter "autovacuum_naptime" cannot be changed now +RESET autovacuum_naptime; -- fail, requires reload +ERROR: parameter "autovacuum_naptime" cannot be changed now +ALTER SYSTEM SET autovacuum_naptime = 50; -- ok +ALTER SYSTEM RESET autovacuum_naptime; -- ok +SET autovacuum_vacuum_cost_delay = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_delay" cannot be changed now +RESET autovacuum_vacuum_cost_delay; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_delay" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_delay; -- ok +SET autovacuum_vacuum_cost_limit = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_limit" cannot be changed now +RESET autovacuum_vacuum_cost_limit; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_limit" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_cost_limit = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- ok +SET autovacuum_vacuum_insert_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_scale_factor" cannot be changed now +RESET autovacuum_vacuum_insert_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_insert_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_scale_factor; -- ok +SET autovacuum_vacuum_insert_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_threshold" cannot be changed now +RESET autovacuum_vacuum_insert_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_insert_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_threshold; -- ok +SET autovacuum_vacuum_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_scale_factor" cannot be changed now +RESET autovacuum_vacuum_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_scale_factor; -- ok +SET autovacuum_vacuum_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_threshold" cannot be changed now +RESET autovacuum_vacuum_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_threshold; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / REPLICATION_PRIMARY +SET vacuum_defer_cleanup_age = 50; -- fail, requires reload +ERROR: parameter "vacuum_defer_cleanup_age" cannot be changed now +RESET vacuum_defer_cleanup_age; -- fail, requires reload +ERROR: parameter "vacuum_defer_cleanup_age" cannot be changed now +ALTER SYSTEM SET vacuum_defer_cleanup_age = 50; -- ok +ALTER SYSTEM RESET vacuum_defer_cleanup_age; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum = ON; -- fail, requires reload +ERROR: parameter "autovacuum" cannot be changed now +RESET autovacuum; -- fail, requires reload +ERROR: parameter "autovacuum" cannot be changed now +ALTER SYSTEM SET autovacuum = ON; -- ok +ALTER SYSTEM RESET autovacuum; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET autovacuum_work_mem = 50; -- fail, requires reload +ERROR: parameter "autovacuum_work_mem" cannot be changed now +RESET autovacuum_work_mem; -- fail, requires reload +ERROR: parameter "autovacuum_work_mem" cannot be changed now +ALTER SYSTEM SET autovacuum_work_mem = 50; -- ok +ALTER SYSTEM RESET autovacuum_work_mem; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_pred_locks_per_page = 50; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_page" cannot be changed now +RESET max_pred_locks_per_page; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_page" cannot be changed now +ALTER SYSTEM SET max_pred_locks_per_page = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_page; -- ok +SET max_pred_locks_per_relation = 50; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_relation" cannot be changed now +RESET max_pred_locks_per_relation; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_relation" cannot be changed now +ALTER SYSTEM SET max_pred_locks_per_relation = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_relation; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_sync_workers_per_subscription = 50; -- fail, requires reload +ERROR: parameter "max_sync_workers_per_subscription" cannot be changed now +RESET max_sync_workers_per_subscription; -- fail, requires reload +ERROR: parameter "max_sync_workers_per_subscription" cannot be changed now +ALTER SYSTEM SET max_sync_workers_per_subscription = 50; -- ok +ALTER SYSTEM RESET max_sync_workers_per_subscription; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / RESOURCES_BGWRITER +SET bgwriter_delay = 50; -- fail, requires reload +ERROR: parameter "bgwriter_delay" cannot be changed now +RESET bgwriter_delay; -- fail, requires reload +ERROR: parameter "bgwriter_delay" cannot be changed now +ALTER SYSTEM SET bgwriter_delay = 50; -- ok +ALTER SYSTEM RESET bgwriter_delay; -- ok +SET bgwriter_flush_after = 50; -- fail, requires reload +ERROR: parameter "bgwriter_flush_after" cannot be changed now +RESET bgwriter_flush_after; -- fail, requires reload +ERROR: parameter "bgwriter_flush_after" cannot be changed now +ALTER SYSTEM SET bgwriter_flush_after = 50; -- ok +ALTER SYSTEM RESET bgwriter_flush_after; -- ok +SET bgwriter_lru_maxpages = 50; -- fail, requires reload +ERROR: parameter "bgwriter_lru_maxpages" cannot be changed now +RESET bgwriter_lru_maxpages; -- fail, requires reload +ERROR: parameter "bgwriter_lru_maxpages" cannot be changed now +ALTER SYSTEM SET bgwriter_lru_maxpages = 50; -- ok +ALTER SYSTEM RESET bgwriter_lru_maxpages; -- ok +SET bgwriter_lru_multiplier = 5; -- fail, requires reload +ERROR: parameter "bgwriter_lru_multiplier" cannot be changed now +RESET bgwriter_lru_multiplier; -- fail, requires reload +ERROR: parameter "bgwriter_lru_multiplier" cannot be changed now +ALTER SYSTEM SET bgwriter_lru_multiplier = 5; -- ok +ALTER SYSTEM RESET bgwriter_lru_multiplier; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_slot_wal_keep_size = 50; -- fail, requires reload +ERROR: parameter "max_slot_wal_keep_size" cannot be changed now +RESET max_slot_wal_keep_size; -- fail, requires reload +ERROR: parameter "max_slot_wal_keep_size" cannot be changed now +ALTER SYSTEM SET max_slot_wal_keep_size = 50; -- ok +ALTER SYSTEM RESET max_slot_wal_keep_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = ON; -- fail, requires reload +ERROR: parameter "remove_temp_files_after_crash" cannot be changed now +RESET remove_temp_files_after_crash; -- fail, requires reload +ERROR: parameter "remove_temp_files_after_crash" cannot be changed now +ALTER SYSTEM SET remove_temp_files_after_crash = ON; -- ok +ALTER SYSTEM RESET remove_temp_files_after_crash; -- ok +SET restart_after_crash = ON; -- fail, requires reload +ERROR: parameter "restart_after_crash" cannot be changed now +RESET restart_after_crash; -- fail, requires reload +ERROR: parameter "restart_after_crash" cannot be changed now +ALTER SYSTEM SET restart_after_crash = ON; -- ok +ALTER SYSTEM RESET restart_after_crash; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_PRIMARY +SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, requires reload +ERROR: parameter "synchronous_standby_names" cannot be changed now +RESET synchronous_standby_names; -- fail, requires reload +ERROR: parameter "synchronous_standby_names" cannot be changed now +ALTER SYSTEM SET synchronous_standby_names = 'fee, fi, fo, fum'; -- ok +ALTER SYSTEM RESET synchronous_standby_names; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET wal_keep_size = 50; -- fail, requires reload +ERROR: parameter "wal_keep_size" cannot be changed now +RESET wal_keep_size; -- fail, requires reload +ERROR: parameter "wal_keep_size" cannot be changed now +ALTER SYSTEM SET wal_keep_size = 50; -- ok +ALTER SYSTEM RESET wal_keep_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby_feedback = ON; -- fail, requires reload +ERROR: parameter "hot_standby_feedback" cannot be changed now +RESET hot_standby_feedback; -- fail, requires reload +ERROR: parameter "hot_standby_feedback" cannot be changed now +ALTER SYSTEM SET hot_standby_feedback = ON; -- ok +ALTER SYSTEM RESET hot_standby_feedback; -- ok +SET max_standby_archive_delay = 50; -- fail, requires reload +ERROR: parameter "max_standby_archive_delay" cannot be changed now +RESET max_standby_archive_delay; -- fail, requires reload +ERROR: parameter "max_standby_archive_delay" cannot be changed now +ALTER SYSTEM SET max_standby_archive_delay = 50; -- ok +ALTER SYSTEM RESET max_standby_archive_delay; -- ok +SET max_standby_streaming_delay = 50; -- fail, requires reload +ERROR: parameter "max_standby_streaming_delay" cannot be changed now +RESET max_standby_streaming_delay; -- fail, requires reload +ERROR: parameter "max_standby_streaming_delay" cannot be changed now +ALTER SYSTEM SET max_standby_streaming_delay = 50; -- ok +ALTER SYSTEM RESET max_standby_streaming_delay; -- ok +SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, requires reload +ERROR: parameter "primary_conninfo" cannot be changed now +RESET primary_conninfo; -- fail, requires reload +ERROR: parameter "primary_conninfo" cannot be changed now +ALTER SYSTEM SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- ok +ALTER SYSTEM RESET primary_conninfo; -- ok +SET primary_slot_name = 'bonne_fente'; -- fail, requires reload +ERROR: parameter "primary_slot_name" cannot be changed now +RESET primary_slot_name; -- fail, requires reload +ERROR: parameter "primary_slot_name" cannot be changed now +ALTER SYSTEM SET primary_slot_name = 'bonne_fente'; -- ok +ALTER SYSTEM RESET primary_slot_name; -- ok +SET promote_trigger_file = 'promote.trigger'; -- fail, requires reload +ERROR: parameter "promote_trigger_file" cannot be changed now +RESET promote_trigger_file; -- fail, requires reload +ERROR: parameter "promote_trigger_file" cannot be changed now +ALTER SYSTEM SET promote_trigger_file = 'promote.trigger'; -- ok +ALTER SYSTEM RESET promote_trigger_file; -- ok +SET recovery_min_apply_delay = 50; -- fail, requires reload +ERROR: parameter "recovery_min_apply_delay" cannot be changed now +RESET recovery_min_apply_delay; -- fail, requires reload +ERROR: parameter "recovery_min_apply_delay" cannot be changed now +ALTER SYSTEM SET recovery_min_apply_delay = 50; -- ok +ALTER SYSTEM RESET recovery_min_apply_delay; -- ok +SET wal_receiver_create_temp_slot = ON; -- fail, requires reload +ERROR: parameter "wal_receiver_create_temp_slot" cannot be changed now +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ERROR: parameter "wal_receiver_create_temp_slot" cannot be changed now +ALTER SYSTEM SET wal_receiver_create_temp_slot = ON; -- ok +ALTER SYSTEM RESET wal_receiver_create_temp_slot; -- ok +SET wal_receiver_status_interval = 50; -- fail, requires reload +ERROR: parameter "wal_receiver_status_interval" cannot be changed now +RESET wal_receiver_status_interval; -- fail, requires reload +ERROR: parameter "wal_receiver_status_interval" cannot be changed now +ALTER SYSTEM SET wal_receiver_status_interval = 50; -- ok +ALTER SYSTEM RESET wal_receiver_status_interval; -- ok +SET wal_receiver_timeout = 50; -- fail, requires reload +ERROR: parameter "wal_receiver_timeout" cannot be changed now +RESET wal_receiver_timeout; -- fail, requires reload +ERROR: parameter "wal_receiver_timeout" cannot be changed now +ALTER SYSTEM SET wal_receiver_timeout = 50; -- ok +ALTER SYSTEM RESET wal_receiver_timeout; -- ok +SET wal_retrieve_retry_interval = 50; -- fail, requires reload +ERROR: parameter "wal_retrieve_retry_interval" cannot be changed now +RESET wal_retrieve_retry_interval; -- fail, requires reload +ERROR: parameter "wal_retrieve_retry_interval" cannot be changed now +ALTER SYSTEM SET wal_retrieve_retry_interval = 50; -- ok +ALTER SYSTEM RESET wal_retrieve_retry_interval; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_timeout = 50; -- fail, requires reload +ERROR: parameter "archive_timeout" cannot be changed now +RESET archive_timeout; -- fail, requires reload +ERROR: parameter "archive_timeout" cannot be changed now +ALTER SYSTEM SET archive_timeout = 50; -- ok +ALTER SYSTEM RESET archive_timeout; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_completion_target = 0; -- fail, requires reload +ERROR: parameter "checkpoint_completion_target" cannot be changed now +RESET checkpoint_completion_target; -- fail, requires reload +ERROR: parameter "checkpoint_completion_target" cannot be changed now +ALTER SYSTEM SET checkpoint_completion_target = 0; -- ok +ALTER SYSTEM RESET checkpoint_completion_target; -- ok +SET checkpoint_flush_after = 50; -- fail, requires reload +ERROR: parameter "checkpoint_flush_after" cannot be changed now +RESET checkpoint_flush_after; -- fail, requires reload +ERROR: parameter "checkpoint_flush_after" cannot be changed now +ALTER SYSTEM SET checkpoint_flush_after = 50; -- ok +ALTER SYSTEM RESET checkpoint_flush_after; -- ok +SET checkpoint_timeout = 50; -- fail, requires reload +ERROR: parameter "checkpoint_timeout" cannot be changed now +RESET checkpoint_timeout; -- fail, requires reload +ERROR: parameter "checkpoint_timeout" cannot be changed now +ALTER SYSTEM SET checkpoint_timeout = 50; -- ok +ALTER SYSTEM RESET checkpoint_timeout; -- ok +SET max_wal_size = 50; -- fail, requires reload +ERROR: parameter "max_wal_size" cannot be changed now +RESET max_wal_size; -- fail, requires reload +ERROR: parameter "max_wal_size" cannot be changed now +ALTER SYSTEM SET max_wal_size = 50; -- ok +ALTER SYSTEM RESET max_wal_size; -- ok +SET min_wal_size = 50; -- fail, requires reload +ERROR: parameter "min_wal_size" cannot be changed now +RESET min_wal_size; -- fail, requires reload +ERROR: parameter "min_wal_size" cannot be changed now +ALTER SYSTEM SET min_wal_size = 50; -- ok +ALTER SYSTEM RESET min_wal_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_SETTINGS +SET fsync = ON; -- fail, requires reload +ERROR: parameter "fsync" cannot be changed now +RESET fsync; -- fail, requires reload +ERROR: parameter "fsync" cannot be changed now +ALTER SYSTEM SET fsync = ON; -- ok +ALTER SYSTEM RESET fsync; -- ok +SET full_page_writes = ON; -- fail, requires reload +ERROR: parameter "full_page_writes" cannot be changed now +RESET full_page_writes; -- fail, requires reload +ERROR: parameter "full_page_writes" cannot be changed now +ALTER SYSTEM SET full_page_writes = ON; -- ok +ALTER SYSTEM RESET full_page_writes; -- ok +SET wal_sync_method = 'open_datasync'; -- fail, requires reload +ERROR: parameter "wal_sync_method" cannot be changed now +RESET wal_sync_method; -- fail, requires reload +ERROR: parameter "wal_sync_method" cannot be changed now +ALTER SYSTEM SET wal_sync_method = 'open_datasync'; -- ok +ALTER SYSTEM RESET wal_sync_method; -- ok +SET wal_writer_delay = 50; -- fail, requires reload +ERROR: parameter "wal_writer_delay" cannot be changed now +RESET wal_writer_delay; -- fail, requires reload +ERROR: parameter "wal_writer_delay" cannot be changed now +ALTER SYSTEM SET wal_writer_delay = 50; -- ok +ALTER SYSTEM RESET wal_writer_delay; -- ok +SET wal_writer_flush_after = 50; -- fail, requires reload +ERROR: parameter "wal_writer_flush_after" cannot be changed now +RESET wal_writer_flush_after; -- fail, requires reload +ERROR: parameter "wal_writer_flush_after" cannot be changed now +ALTER SYSTEM SET wal_writer_flush_after = 50; -- ok +ALTER SYSTEM RESET wal_writer_flush_after; -- ok +-- PGC_SUSET / GUC_ALL_PRIVILEGES / DEVELOPER_OPTIONS +SET allow_system_table_mods = ON; -- ok +RESET allow_system_table_mods; -- ok +ALTER SYSTEM SET allow_system_table_mods = ON; -- ok +ALTER SYSTEM RESET allow_system_table_mods; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_OTHER +SET dynamic_library_path = '$libdir'; -- ok +RESET dynamic_library_path; -- ok +ALTER SYSTEM SET dynamic_library_path = '$libdir'; -- ok +ALTER SYSTEM RESET dynamic_library_path; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET session_preload_libraries = 'gssapi_krb5'; -- ok +RESET session_preload_libraries; -- ok +ALTER SYSTEM SET session_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET session_preload_libraries; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_dump_bitcode = ON; -- ok +RESET jit_dump_bitcode; -- ok +ALTER SYSTEM SET jit_dump_bitcode = ON; -- ok +ALTER SYSTEM RESET jit_dump_bitcode; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET lc_messages = 'en_US.UTF-8'; -- ok +RESET lc_messages; -- ok +ALTER SYSTEM SET lc_messages = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_messages; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET debug_invalidate_system_caches_always = 2; -- ok +RESET debug_invalidate_system_caches_always; -- ok +ALTER SYSTEM SET debug_invalidate_system_caches_always = 2; -- ok +ALTER SYSTEM RESET debug_invalidate_system_caches_always; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / LOCK_MANAGEMENT +SET deadlock_timeout = 1073741824; -- ok +RESET deadlock_timeout; -- ok +ALTER SYSTEM SET deadlock_timeout = 1073741824; -- ok +ALTER SYSTEM RESET deadlock_timeout; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / DEVELOPER_OPTIONS +SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- ok +RESET backtrace_functions; -- ok +ALTER SYSTEM SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- ok +ALTER SYSTEM RESET backtrace_functions; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_duration = ON; -- ok +RESET log_duration; -- ok +ALTER SYSTEM SET log_duration = ON; -- ok +ALTER SYSTEM RESET log_duration; -- ok +SET log_error_verbosity = 'default'; -- ok +RESET log_error_verbosity; -- ok +ALTER SYSTEM SET log_error_verbosity = 'default'; -- ok +ALTER SYSTEM RESET log_error_verbosity; -- ok +SET log_lock_waits = ON; -- ok +RESET log_lock_waits; -- ok +ALTER SYSTEM SET log_lock_waits = ON; -- ok +ALTER SYSTEM RESET log_lock_waits; -- ok +SET log_parameter_max_length = 50; -- ok +RESET log_parameter_max_length; -- ok +ALTER SYSTEM SET log_parameter_max_length = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length; -- ok +SET log_replication_commands = ON; -- ok +RESET log_replication_commands; -- ok +ALTER SYSTEM SET log_replication_commands = ON; -- ok +ALTER SYSTEM RESET log_replication_commands; -- ok +SET log_statement = 'none'; -- ok +RESET log_statement; -- ok +ALTER SYSTEM SET log_statement = 'none'; -- ok +ALTER SYSTEM RESET log_statement; -- ok +SET log_temp_files = 50; -- ok +RESET log_temp_files; -- ok +ALTER SYSTEM SET log_temp_files = 50; -- ok +ALTER SYSTEM RESET log_temp_files; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHEN +SET log_min_duration_sample = 50; -- ok +RESET log_min_duration_sample; -- ok +ALTER SYSTEM SET log_min_duration_sample = 50; -- ok +ALTER SYSTEM RESET log_min_duration_sample; -- ok +SET log_min_duration_statement = 50; -- ok +RESET log_min_duration_statement; -- ok +ALTER SYSTEM SET log_min_duration_statement = 50; -- ok +ALTER SYSTEM RESET log_min_duration_statement; -- ok +SET log_min_error_statement = 'error'; -- ok +RESET log_min_error_statement; -- ok +ALTER SYSTEM SET log_min_error_statement = 'error'; -- ok +ALTER SYSTEM RESET log_min_error_statement; -- ok +SET log_min_messages = 'warning'; -- ok +RESET log_min_messages; -- ok +ALTER SYSTEM SET log_min_messages = 'warning'; -- ok +ALTER SYSTEM RESET log_min_messages; -- ok +SET log_statement_sample_rate = 0; -- ok +RESET log_statement_sample_rate; -- ok +ALTER SYSTEM SET log_statement_sample_rate = 0; -- ok +ALTER SYSTEM RESET log_statement_sample_rate; -- ok +SET log_transaction_sample_rate = 0; -- ok +RESET log_transaction_sample_rate; -- ok +ALTER SYSTEM SET log_transaction_sample_rate = 0; -- ok +ALTER SYSTEM RESET log_transaction_sample_rate; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / STATS_MONITORING +SET log_executor_stats = ON; -- ok +RESET log_executor_stats; -- ok +ALTER SYSTEM SET log_executor_stats = ON; -- ok +ALTER SYSTEM RESET log_executor_stats; -- ok +SET log_parser_stats = ON; -- ok +RESET log_parser_stats; -- ok +ALTER SYSTEM SET log_parser_stats = ON; -- ok +ALTER SYSTEM RESET log_parser_stats; -- ok +SET log_planner_stats = ON; -- ok +RESET log_planner_stats; -- ok +ALTER SYSTEM SET log_planner_stats = ON; -- ok +ALTER SYSTEM RESET log_planner_stats; -- ok +SET log_statement_stats = ON; -- ok +RESET log_statement_stats; -- ok +ALTER SYSTEM SET log_statement_stats = ON; -- ok +ALTER SYSTEM RESET log_statement_stats; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / PROCESS_TITLE +SET update_process_title = ON; -- ok +RESET update_process_title; -- ok +ALTER SYSTEM SET update_process_title = ON; -- ok +ALTER SYSTEM RESET update_process_title; -- ok +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_DISK +SET temp_file_limit = 50; -- ok +RESET temp_file_limit; -- ok +ALTER SYSTEM SET temp_file_limit = 50; -- ok +ALTER SYSTEM RESET temp_file_limit; -- ok +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_stack_depth = 3890; -- ok +RESET max_stack_depth; -- ok +ALTER SYSTEM SET max_stack_depth = 3890; -- ok +ALTER SYSTEM RESET max_stack_depth; -- ok +-- PGC_SUSET / GUC_SECURITY_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = ON; -- ok +RESET lo_compat_privileges; -- ok +ALTER SYSTEM SET lo_compat_privileges = ON; -- ok +ALTER SYSTEM RESET lo_compat_privileges; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_COLLECTOR +SET track_activities = ON; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = ON; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = ON; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = ON; -- ok +ALTER SYSTEM RESET track_counts; -- ok +SET track_functions = 'none'; -- ok +RESET track_functions; -- ok +ALTER SYSTEM SET track_functions = 'none'; -- ok +ALTER SYSTEM RESET track_functions; -- ok +SET track_io_timing = ON; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = ON; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = ON; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = ON; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_MONITORING +SET compute_query_id = ON; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = ON; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_checksum_failure = ON; -- ok +RESET ignore_checksum_failure; -- ok +ALTER SYSTEM SET ignore_checksum_failure = ON; -- ok +ALTER SYSTEM RESET ignore_checksum_failure; -- ok +SET zero_damaged_pages = ON; -- ok +RESET zero_damaged_pages; -- ok +ALTER SYSTEM SET zero_damaged_pages = ON; -- ok +ALTER SYSTEM RESET zero_damaged_pages; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / CLIENT_CONN_STATEMENT +SET session_replication_role = 'origin'; -- ok +RESET session_replication_role; -- ok +ALTER SYSTEM SET session_replication_role = 'origin'; -- ok +ALTER SYSTEM RESET session_replication_role; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- ok +RESET wal_consistency_checking; -- ok +ALTER SYSTEM SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- ok +ALTER SYSTEM RESET wal_consistency_checking; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / WAL_SETTINGS +SET commit_delay = 50; -- ok +RESET commit_delay; -- ok +ALTER SYSTEM SET commit_delay = 50; -- ok +ALTER SYSTEM RESET commit_delay; -- ok +SET wal_compression = ON; -- ok +RESET wal_compression; -- ok +ALTER SYSTEM SET wal_compression = ON; -- ok +ALTER SYSTEM RESET wal_compression; -- ok +SET wal_init_zero = ON; -- ok +RESET wal_init_zero; -- ok +ALTER SYSTEM SET wal_init_zero = ON; -- ok +ALTER SYSTEM RESET wal_init_zero; -- ok +SET wal_recycle = ON; -- ok +RESET wal_recycle; -- ok +ALTER SYSTEM SET wal_recycle = ON; -- ok +ALTER SYSTEM RESET wal_recycle; -- ok +-- PGC_SU_BACKEND / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_profiling_support = ON; -- fail, cannot be set after connection start +ERROR: parameter "jit_profiling_support" cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ERROR: parameter "jit_profiling_support" cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = ON; -- ok +ALTER SYSTEM RESET jit_profiling_support; -- ok +-- PGC_SU_BACKEND / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_debugging_support = ON; -- fail, cannot be set after connection start +ERROR: parameter "jit_debugging_support" cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ERROR: parameter "jit_debugging_support" cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = ON; -- ok +ALTER SYSTEM RESET jit_debugging_support; -- ok +-- PGC_SU_BACKEND / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_connections = ON; -- fail, cannot be set after connection start +ERROR: parameter "log_connections" cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ERROR: parameter "log_connections" cannot be set after connection start +ALTER SYSTEM SET log_connections = ON; -- ok +ALTER SYSTEM RESET log_connections; -- ok +SET log_disconnections = ON; -- fail, cannot be set after connection start +ERROR: parameter "log_disconnections" cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ERROR: parameter "log_disconnections" cannot be set after connection start +ALTER SYSTEM SET log_disconnections = ON; -- ok +ALTER SYSTEM RESET log_disconnections; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET DateStyle = 'ISO, MDY'; -- ok +RESET DateStyle; -- ok +ALTER SYSTEM SET DateStyle = 'ISO, MDY'; -- ok +ALTER SYSTEM RESET DateStyle; -- ok +SET IntervalStyle = 'postgres'; -- ok +RESET IntervalStyle; -- ok +ALTER SYSTEM SET IntervalStyle = 'postgres'; -- ok +ALTER SYSTEM RESET IntervalStyle; -- ok +SET TimeZone = 'Europe/Helsinki'; -- ok +RESET TimeZone; -- ok +ALTER SYSTEM SET TimeZone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET TimeZone; -- ok +SET client_encoding = 'UTF8'; -- ok +RESET client_encoding; -- ok +ALTER SYSTEM SET client_encoding = 'UTF8'; -- ok +ALTER SYSTEM RESET client_encoding; -- ok +SET default_text_search_config = 'pg_catalog.english'; -- ok +RESET default_text_search_config; -- ok +ALTER SYSTEM SET default_text_search_config = 'pg_catalog.english'; -- ok +ALTER SYSTEM RESET default_text_search_config; -- ok +SET extra_float_digits = -6; -- ok +RESET extra_float_digits; -- ok +ALTER SYSTEM SET extra_float_digits = -6; -- ok +ALTER SYSTEM RESET extra_float_digits; -- ok +SET lc_monetary = 'en_US.UTF-8'; -- ok +RESET lc_monetary; -- ok +ALTER SYSTEM SET lc_monetary = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_monetary; -- ok +SET lc_numeric = 'en_US.UTF-8'; -- ok +RESET lc_numeric; -- ok +ALTER SYSTEM SET lc_numeric = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_numeric; -- ok +SET lc_time = 'en_US.UTF-8'; -- ok +RESET lc_time; -- ok +ALTER SYSTEM SET lc_time = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_time; -- ok +SET timezone_abbreviations = 'Default'; -- ok +RESET timezone_abbreviations; -- ok +ALTER SYSTEM SET timezone_abbreviations = 'Default'; -- ok +ALTER SYSTEM RESET timezone_abbreviations; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_OTHER +SET gin_fuzzy_search_limit = 50; -- ok +RESET gin_fuzzy_search_limit; -- ok +ALTER SYSTEM SET gin_fuzzy_search_limit = 50; -- ok +ALTER SYSTEM RESET gin_fuzzy_search_limit; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET local_preload_libraries; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_STATEMENT +SET bytea_output = 'hex'; -- ok +RESET bytea_output; -- ok +ALTER SYSTEM SET bytea_output = 'hex'; -- ok +ALTER SYSTEM RESET bytea_output; -- ok +SET check_function_bodies = ON; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = ON; -- ok +ALTER SYSTEM RESET check_function_bodies; -- ok +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- ok +ALTER SYSTEM RESET client_min_messages; -- ok +SET default_table_access_method = 'heap'; -- ok +RESET default_table_access_method; -- ok +ALTER SYSTEM SET default_table_access_method = 'heap'; -- ok +ALTER SYSTEM RESET default_table_access_method; -- ok +SET default_toast_compression = 'pglz'; -- ok +RESET default_toast_compression; -- ok +ALTER SYSTEM SET default_toast_compression = 'pglz'; -- ok +ALTER SYSTEM RESET default_toast_compression; -- ok +SET default_transaction_deferrable = ON; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = ON; -- ok +ALTER SYSTEM RESET default_transaction_deferrable; -- ok +SET default_transaction_isolation = 'read committed'; -- ok +RESET default_transaction_isolation; -- ok +ALTER SYSTEM SET default_transaction_isolation = 'read committed'; -- ok +ALTER SYSTEM RESET default_transaction_isolation; -- ok +SET default_transaction_read_only = ON; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = ON; -- ok +ALTER SYSTEM RESET default_transaction_read_only; -- ok +SET gin_pending_list_limit = 1073741855; -- ok +RESET gin_pending_list_limit; -- ok +ALTER SYSTEM SET gin_pending_list_limit = 1073741855; -- ok +ALTER SYSTEM RESET gin_pending_list_limit; -- ok +SET idle_in_transaction_session_timeout = 50; -- ok +RESET idle_in_transaction_session_timeout; -- ok +ALTER SYSTEM SET idle_in_transaction_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_in_transaction_session_timeout; -- ok +SET idle_session_timeout = 50; -- ok +RESET idle_session_timeout; -- ok +ALTER SYSTEM SET idle_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_session_timeout; -- ok +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET row_security = ON; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = ON; -- ok +ALTER SYSTEM RESET row_security; -- ok +SET search_path = '"$user", public'; -- ok +RESET search_path; -- ok +ALTER SYSTEM SET search_path = '"$user", public'; -- ok +ALTER SYSTEM RESET search_path; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +SET transaction_deferrable = ON; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = ON; -- fail, cannot be changed +ERROR: parameter "transaction_deferrable" cannot be changed +ALTER SYSTEM RESET transaction_deferrable; -- fail, cannot be changed +ERROR: parameter "transaction_deferrable" cannot be changed +SET transaction_isolation = 'read committed'; -- ok +RESET transaction_isolation; -- ok +WARNING: RESET TRANSACTION can only be used in transaction blocks +ALTER SYSTEM SET transaction_isolation = 'read committed'; -- fail, cannot be changed +ERROR: parameter "transaction_isolation" cannot be changed +ALTER SYSTEM RESET transaction_isolation; -- fail, cannot be changed +ERROR: parameter "transaction_isolation" cannot be changed +SET transaction_read_only = ON; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = ON; -- fail, cannot be changed +ERROR: parameter "transaction_read_only" cannot be changed +ALTER SYSTEM RESET transaction_read_only; -- fail, cannot be changed +ERROR: parameter "transaction_read_only" cannot be changed +SET vacuum_failsafe_age = 50; -- ok +RESET vacuum_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_failsafe_age; -- ok +SET vacuum_freeze_min_age = 50; -- ok +RESET vacuum_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_min_age; -- ok +SET vacuum_freeze_table_age = 50; -- ok +RESET vacuum_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_table_age; -- ok +SET vacuum_multixact_failsafe_age = 50; -- ok +RESET vacuum_multixact_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_multixact_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_failsafe_age; -- ok +SET vacuum_multixact_freeze_min_age = 50; -- ok +RESET vacuum_multixact_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_min_age; -- ok +SET vacuum_multixact_freeze_table_age = 50; -- ok +RESET vacuum_multixact_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_table_age; -- ok +SET xmlbinary = 'base64'; -- ok +RESET xmlbinary; -- ok +ALTER SYSTEM SET xmlbinary = 'base64'; -- ok +ALTER SYSTEM RESET xmlbinary; -- ok +SET xmloption = 'content'; -- ok +RESET xmloption; -- ok +ALTER SYSTEM SET xmloption = 'content'; -- ok +ALTER SYSTEM RESET xmloption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = ON; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = ON; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = ON; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = ON; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = ON; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = ON; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = ON; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = ON; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = ON; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = ON; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- ok +ALTER SYSTEM RESET password_encryption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- ok +ALTER SYSTEM RESET client_connection_check_interval; -- ok +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_count; -- ok +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_idle; -- ok +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_interval; -- ok +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- ok +ALTER SYSTEM RESET tcp_user_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SSL +SET ssl_renegotiation_limit = 0; -- ok +RESET ssl_renegotiation_limit; -- ok +ALTER SYSTEM SET ssl_renegotiation_limit = 0; -- fail, cannot be changed +ERROR: parameter "ssl_renegotiation_limit" cannot be changed +ALTER SYSTEM RESET ssl_renegotiation_limit; -- fail, cannot be changed +ERROR: parameter "ssl_renegotiation_limit" cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET force_parallel_mode = 'off'; -- ok +RESET force_parallel_mode; -- ok +ALTER SYSTEM SET force_parallel_mode = 'off'; -- ok +ALTER SYSTEM RESET force_parallel_mode; -- ok +SET jit_expressions = ON; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = ON; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +SET jit_tuple_deforming = ON; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = ON; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = ON; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = ON; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = ON; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = ON; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET exit_on_error = ON; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = ON; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- ok +ALTER SYSTEM RESET application_name; -- ok +SET debug_pretty_print = ON; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = ON; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = ON; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = ON; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = ON; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = ON; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = ON; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = ON; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +SET log_parameter_max_length_on_error = 50; -- ok +RESET log_parameter_max_length_on_error; -- ok +ALTER SYSTEM SET log_parameter_max_length_on_error = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_COST +SET cpu_index_tuple_cost = 50; -- ok +RESET cpu_index_tuple_cost; -- ok +ALTER SYSTEM SET cpu_index_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_index_tuple_cost; -- ok +SET cpu_operator_cost = 50; -- ok +RESET cpu_operator_cost; -- ok +ALTER SYSTEM SET cpu_operator_cost = 50; -- ok +ALTER SYSTEM RESET cpu_operator_cost; -- ok +SET cpu_tuple_cost = 50; -- ok +RESET cpu_tuple_cost; -- ok +ALTER SYSTEM SET cpu_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_tuple_cost; -- ok +SET effective_cache_size = 1073741824; -- ok +RESET effective_cache_size; -- ok +ALTER SYSTEM SET effective_cache_size = 1073741824; -- ok +ALTER SYSTEM RESET effective_cache_size; -- ok +SET jit_above_cost = 50; -- ok +RESET jit_above_cost; -- ok +ALTER SYSTEM SET jit_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_above_cost; -- ok +SET jit_inline_above_cost = 50; -- ok +RESET jit_inline_above_cost; -- ok +ALTER SYSTEM SET jit_inline_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_inline_above_cost; -- ok +SET jit_optimize_above_cost = 50; -- ok +RESET jit_optimize_above_cost; -- ok +ALTER SYSTEM SET jit_optimize_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_optimize_above_cost; -- ok +SET min_parallel_index_scan_size = 50; -- ok +RESET min_parallel_index_scan_size; -- ok +ALTER SYSTEM SET min_parallel_index_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_index_scan_size; -- ok +SET min_parallel_table_scan_size = 50; -- ok +RESET min_parallel_table_scan_size; -- ok +ALTER SYSTEM SET min_parallel_table_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_table_scan_size; -- ok +SET parallel_setup_cost = 50; -- ok +RESET parallel_setup_cost; -- ok +ALTER SYSTEM SET parallel_setup_cost = 50; -- ok +ALTER SYSTEM RESET parallel_setup_cost; -- ok +SET parallel_tuple_cost = 50; -- ok +RESET parallel_tuple_cost; -- ok +ALTER SYSTEM SET parallel_tuple_cost = 50; -- ok +ALTER SYSTEM RESET parallel_tuple_cost; -- ok +SET random_page_cost = 50; -- ok +RESET random_page_cost; -- ok +ALTER SYSTEM SET random_page_cost = 50; -- ok +ALTER SYSTEM RESET random_page_cost; -- ok +SET seq_page_cost = 50; -- ok +RESET seq_page_cost; -- ok +ALTER SYSTEM SET seq_page_cost = 50; -- ok +ALTER SYSTEM RESET seq_page_cost; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_GEQO +SET geqo = ON; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = ON; -- ok +ALTER SYSTEM RESET geqo; -- ok +SET geqo_effort = 5; -- ok +RESET geqo_effort; -- ok +ALTER SYSTEM SET geqo_effort = 5; -- ok +ALTER SYSTEM RESET geqo_effort; -- ok +SET geqo_generations = 50; -- ok +RESET geqo_generations; -- ok +ALTER SYSTEM SET geqo_generations = 50; -- ok +ALTER SYSTEM RESET geqo_generations; -- ok +SET geqo_pool_size = 50; -- ok +RESET geqo_pool_size; -- ok +ALTER SYSTEM SET geqo_pool_size = 50; -- ok +ALTER SYSTEM RESET geqo_pool_size; -- ok +SET geqo_seed = 0; -- ok +RESET geqo_seed; -- ok +ALTER SYSTEM SET geqo_seed = 0; -- ok +ALTER SYSTEM RESET geqo_seed; -- ok +SET geqo_selection_bias = 2; -- ok +RESET geqo_selection_bias; -- ok +ALTER SYSTEM SET geqo_selection_bias = 2; -- ok +ALTER SYSTEM RESET geqo_selection_bias; -- ok +SET geqo_threshold = 1073741824; -- ok +RESET geqo_threshold; -- ok +ALTER SYSTEM SET geqo_threshold = 1073741824; -- ok +ALTER SYSTEM RESET geqo_threshold; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_METHOD +SET enable_async_append = ON; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = ON; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = ON; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = ON; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = ON; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = ON; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = ON; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = ON; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = ON; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = ON; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = ON; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = ON; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = ON; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = ON; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = ON; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = ON; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = ON; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = ON; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = ON; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = ON; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = ON; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = ON; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = ON; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = ON; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = ON; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = ON; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = ON; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = ON; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = ON; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = ON; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = ON; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = ON; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = ON; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = ON; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = ON; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = ON; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = ON; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = ON; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_OTHER +SET constraint_exclusion = 'partition'; -- ok +RESET constraint_exclusion; -- ok +ALTER SYSTEM SET constraint_exclusion = 'partition'; -- ok +ALTER SYSTEM RESET constraint_exclusion; -- ok +SET cursor_tuple_fraction = 0; -- ok +RESET cursor_tuple_fraction; -- ok +ALTER SYSTEM SET cursor_tuple_fraction = 0; -- ok +ALTER SYSTEM RESET cursor_tuple_fraction; -- ok +SET default_statistics_target = 5000; -- ok +RESET default_statistics_target; -- ok +ALTER SYSTEM SET default_statistics_target = 5000; -- ok +ALTER SYSTEM RESET default_statistics_target; -- ok +SET from_collapse_limit = 1073741824; -- ok +RESET from_collapse_limit; -- ok +ALTER SYSTEM SET from_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET from_collapse_limit; -- ok +SET jit = ON; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = ON; -- ok +ALTER SYSTEM RESET jit; -- ok +SET join_collapse_limit = 1073741824; -- ok +RESET join_collapse_limit; -- ok +ALTER SYSTEM SET join_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET join_collapse_limit; -- ok +SET plan_cache_mode = 'force_generic_plan'; -- ok +RESET plan_cache_mode; -- ok +ALTER SYSTEM SET plan_cache_mode = 'force_generic_plan'; -- ok +ALTER SYSTEM RESET plan_cache_mode; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- ok +ALTER SYSTEM RESET wal_sender_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- ok +ALTER SYSTEM RESET backend_flush_after; -- ok +SET max_parallel_maintenance_workers = 50; -- ok +RESET max_parallel_maintenance_workers; -- ok +ALTER SYSTEM SET max_parallel_maintenance_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_maintenance_workers; -- ok +SET max_parallel_workers = 50; -- ok +RESET max_parallel_workers; -- ok +ALTER SYSTEM SET max_parallel_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers; -- ok +SET max_parallel_workers_per_gather = 50; -- ok +RESET max_parallel_workers_per_gather; -- ok +ALTER SYSTEM SET max_parallel_workers_per_gather = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers_per_gather; -- ok +SET parallel_leader_participation = ON; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = ON; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_MEM +SET hash_mem_multiplier = 500; -- ok +RESET hash_mem_multiplier; -- ok +ALTER SYSTEM SET hash_mem_multiplier = 500; -- ok +ALTER SYSTEM RESET hash_mem_multiplier; -- ok +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- ok +ALTER SYSTEM RESET logical_decoding_work_mem; -- ok +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- ok +ALTER SYSTEM RESET maintenance_work_mem; -- ok +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- ok +ALTER SYSTEM RESET temp_buffers; -- ok +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- ok +ALTER SYSTEM RESET work_mem; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_VACUUM_DELAY +SET vacuum_cost_delay = 50; -- ok +RESET vacuum_cost_delay; -- ok +ALTER SYSTEM SET vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_delay; -- ok +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- ok +ALTER SYSTEM RESET vacuum_cost_limit; -- ok +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- ok +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_hit; -- ok +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_miss; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / UNGROUPED +SET seed = 0; -- ok +RESET seed; -- ok +ALTER SYSTEM SET seed = 0; -- fail, cannot be changed +ERROR: parameter "seed" cannot be changed +ALTER SYSTEM RESET seed; -- fail, cannot be changed +ERROR: parameter "seed" cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- ok +ALTER SYSTEM RESET commit_siblings; -- ok +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- ok +ALTER SYSTEM RESET wal_skip_threshold; -- ok +-- PGC_USERSET / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET effective_io_concurrency = 0; -- ok +RESET effective_io_concurrency; -- ok +ALTER SYSTEM SET effective_io_concurrency = 0; -- ok +ALTER SYSTEM RESET effective_io_concurrency; -- ok +SET maintenance_io_concurrency = 0; -- ok +RESET maintenance_io_concurrency; -- ok +ALTER SYSTEM SET maintenance_io_concurrency = 0; -- ok +ALTER SYSTEM RESET maintenance_io_concurrency; -- ok +RESET statement_timeout; +RESET SESSION AUTHORIZATION; +DROP ROLE admin; diff --git a/src/test/regress/expected/guc_priv_tenant.out b/src/test/regress/expected/guc_priv_tenant.out new file mode 100644 index 0000000000..757cc3aa03 --- /dev/null +++ b/src/test/regress/expected/guc_priv_tenant.out @@ -0,0 +1,2237 @@ +-- Role operating exclusively within the sandbox +CREATE ROLE tenant; +GRANT pg_internal_settings TO tenant; +GRANT pg_stats_settings TO tenant; +GRANT pg_maintenance_settings TO tenant; +-- Perform all operations as user 'tenant' -- +SET SESSION AUTHORIZATION tenant; +-- PGC_BACKEND / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET post_auth_delay = 50; -- fail, cannot be set after connection start +ERROR: parameter "post_auth_delay" cannot be set after connection start +RESET post_auth_delay; -- fail, cannot be set after connection start +ERROR: parameter "post_auth_delay" cannot be set after connection start +ALTER SYSTEM SET post_auth_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "post_auth_delay" +ALTER SYSTEM RESET post_auth_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "post_auth_delay" +-- PGC_BACKEND / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET ignore_system_indexes = ON; -- fail, cannot be set after connection start +ERROR: parameter "ignore_system_indexes" cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ERROR: parameter "ignore_system_indexes" cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = ON; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / PRESET_OPTIONS +SET block_size = 50; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +RESET block_size; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +ALTER SYSTEM SET block_size = 50; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +ALTER SYSTEM RESET block_size; -- fail, cannot be changed +ERROR: parameter "block_size" cannot be changed +SET data_checksums = ON; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +RESET data_checksums; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +ALTER SYSTEM SET data_checksums = ON; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +ERROR: parameter "data_checksums" cannot be changed +SET data_directory_mode = 50; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +RESET data_directory_mode; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +ALTER SYSTEM SET data_directory_mode = 50; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +ALTER SYSTEM RESET data_directory_mode; -- fail, cannot be changed +ERROR: parameter "data_directory_mode" cannot be changed +SET debug_assertions = ON; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +ALTER SYSTEM SET debug_assertions = ON; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +ERROR: parameter "debug_assertions" cannot be changed +SET in_hot_standby = ON; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +ALTER SYSTEM SET in_hot_standby = ON; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +ERROR: parameter "in_hot_standby" cannot be changed +SET integer_datetimes = ON; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +ALTER SYSTEM SET integer_datetimes = ON; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +ALTER SYSTEM RESET integer_datetimes; -- fail, cannot be changed +ERROR: parameter "integer_datetimes" cannot be changed +SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +RESET lc_collate; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +ALTER SYSTEM SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +ALTER SYSTEM RESET lc_collate; -- fail, cannot be changed +ERROR: parameter "lc_collate" cannot be changed +SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +RESET lc_ctype; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +ALTER SYSTEM SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +ALTER SYSTEM RESET lc_ctype; -- fail, cannot be changed +ERROR: parameter "lc_ctype" cannot be changed +SET max_function_args = 50; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +RESET max_function_args; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +ALTER SYSTEM SET max_function_args = 50; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +ALTER SYSTEM RESET max_function_args; -- fail, cannot be changed +ERROR: parameter "max_function_args" cannot be changed +SET max_identifier_length = 50; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +RESET max_identifier_length; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +ALTER SYSTEM SET max_identifier_length = 50; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +ALTER SYSTEM RESET max_identifier_length; -- fail, cannot be changed +ERROR: parameter "max_identifier_length" cannot be changed +SET max_index_keys = 50; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +RESET max_index_keys; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +ALTER SYSTEM SET max_index_keys = 50; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +ALTER SYSTEM RESET max_index_keys; -- fail, cannot be changed +ERROR: parameter "max_index_keys" cannot be changed +SET segment_size = 50; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +RESET segment_size; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +ALTER SYSTEM SET segment_size = 50; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +ALTER SYSTEM RESET segment_size; -- fail, cannot be changed +ERROR: parameter "segment_size" cannot be changed +SET server_encoding = 'UTF8'; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +RESET server_encoding; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +ALTER SYSTEM SET server_encoding = 'UTF8'; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +ALTER SYSTEM RESET server_encoding; -- fail, cannot be changed +ERROR: parameter "server_encoding" cannot be changed +SET server_version = '9.1'; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +RESET server_version; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +ALTER SYSTEM SET server_version = '9.1'; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +ALTER SYSTEM RESET server_version; -- fail, cannot be changed +ERROR: parameter "server_version" cannot be changed +SET server_version_num = 50; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +RESET server_version_num; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +ALTER SYSTEM SET server_version_num = 50; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +ALTER SYSTEM RESET server_version_num; -- fail, cannot be changed +ERROR: parameter "server_version_num" cannot be changed +SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +RESET ssl_library; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +ALTER SYSTEM SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +ALTER SYSTEM RESET ssl_library; -- fail, cannot be changed +ERROR: parameter "ssl_library" cannot be changed +SET wal_block_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +RESET wal_block_size; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +ALTER SYSTEM SET wal_block_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +ALTER SYSTEM RESET wal_block_size; -- fail, cannot be changed +ERROR: parameter "wal_block_size" cannot be changed +SET wal_segment_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +RESET wal_segment_size; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +ALTER SYSTEM SET wal_segment_size = 50; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +ALTER SYSTEM RESET wal_segment_size; -- fail, cannot be changed +ERROR: parameter "wal_segment_size" cannot be changed +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / UNGROUPED +SET is_superuser = ON; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +RESET is_superuser; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +ALTER SYSTEM SET is_superuser = ON; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +ERROR: parameter "is_superuser" cannot be changed +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET shared_preload_libraries = 'iconv, pcre'; -- fail, requires restart +ERROR: parameter "shared_preload_libraries" cannot be changed without restarting the server +RESET shared_preload_libraries; -- fail, requires restart +ERROR: parameter "shared_preload_libraries" cannot be changed without restarting the server +ALTER SYSTEM SET shared_preload_libraries = 'iconv, pcre'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_preload_libraries" +ALTER SYSTEM RESET shared_preload_libraries; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_preload_libraries" +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / FILE_LOCATIONS +SET config_file = '/usr/local/data/postgresql.conf'; -- fail, requires restart +ERROR: parameter "config_file" cannot be changed without restarting the server +RESET config_file; -- fail, requires restart +ERROR: parameter "config_file" cannot be changed without restarting the server +ALTER SYSTEM SET config_file = '/usr/local/data/postgresql.conf'; -- fail, cannot be changed +ERROR: parameter "config_file" cannot be changed +ALTER SYSTEM RESET config_file; -- fail, cannot be changed +ERROR: parameter "config_file" cannot be changed +SET data_directory = '/usr/local/data'; -- fail, requires restart +ERROR: parameter "data_directory" cannot be changed without restarting the server +RESET data_directory; -- fail, requires restart +ERROR: parameter "data_directory" cannot be changed without restarting the server +ALTER SYSTEM SET data_directory = '/usr/local/data'; -- fail, cannot be changed +ERROR: parameter "data_directory" cannot be changed +ALTER SYSTEM RESET data_directory; -- fail, cannot be changed +ERROR: parameter "data_directory" cannot be changed +SET external_pid_file = '/var/postgres/master.pid'; -- fail, requires restart +ERROR: parameter "external_pid_file" cannot be changed without restarting the server +RESET external_pid_file; -- fail, requires restart +ERROR: parameter "external_pid_file" cannot be changed without restarting the server +ALTER SYSTEM SET external_pid_file = '/var/postgres/master.pid'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "external_pid_file" +ALTER SYSTEM RESET external_pid_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "external_pid_file" +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET unix_socket_directories = '/tmp'; -- fail, requires restart +ERROR: parameter "unix_socket_directories" cannot be changed without restarting the server +RESET unix_socket_directories; -- fail, requires restart +ERROR: parameter "unix_socket_directories" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_directories = '/tmp'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_directories" +ALTER SYSTEM RESET unix_socket_directories; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_directories" +SET unix_socket_group = 'tenant'; -- fail, requires restart +ERROR: parameter "unix_socket_group" cannot be changed without restarting the server +RESET unix_socket_group; -- fail, requires restart +ERROR: parameter "unix_socket_group" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_group = 'tenant'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_group" +ALTER SYSTEM RESET unix_socket_group; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_group" +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET logging_collector = ON; -- fail, requires restart +ERROR: parameter "logging_collector" cannot be changed without restarting the server +RESET logging_collector; -- fail, requires restart +ERROR: parameter "logging_collector" cannot be changed without restarting the server +ALTER SYSTEM SET logging_collector = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "logging_collector" +ALTER SYSTEM RESET logging_collector; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "logging_collector" +-- PGC_POSTMASTER / GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET bonjour = ON; -- fail, requires restart +ERROR: parameter "bonjour" cannot be changed without restarting the server +RESET bonjour; -- fail, requires restart +ERROR: parameter "bonjour" cannot be changed without restarting the server +ALTER SYSTEM SET bonjour = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bonjour" +ALTER SYSTEM RESET bonjour; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bonjour" +SET bonjour_name = 'BonneNuit'; -- fail, requires restart +ERROR: parameter "bonjour_name" cannot be changed without restarting the server +RESET bonjour_name; -- fail, requires restart +ERROR: parameter "bonjour_name" cannot be changed without restarting the server +ALTER SYSTEM SET bonjour_name = 'BonneNuit'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bonjour_name" +ALTER SYSTEM RESET bonjour_name; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bonjour_name" +SET listen_addresses = 'localhost'; -- fail, requires restart +ERROR: parameter "listen_addresses" cannot be changed without restarting the server +RESET listen_addresses; -- fail, requires restart +ERROR: parameter "listen_addresses" cannot be changed without restarting the server +ALTER SYSTEM SET listen_addresses = 'localhost'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "listen_addresses" +ALTER SYSTEM RESET listen_addresses; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "listen_addresses" +SET max_connections = 50; -- fail, requires restart +ERROR: parameter "max_connections" cannot be changed without restarting the server +RESET max_connections; -- fail, requires restart +ERROR: parameter "max_connections" cannot be changed without restarting the server +ALTER SYSTEM SET max_connections = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_connections" +ALTER SYSTEM RESET max_connections; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_connections" +SET port = 50; -- fail, requires restart +ERROR: parameter "port" cannot be changed without restarting the server +RESET port; -- fail, requires restart +ERROR: parameter "port" cannot be changed without restarting the server +ALTER SYSTEM SET port = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "port" +ALTER SYSTEM RESET port; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "port" +SET superuser_reserved_connections = 50; -- fail, requires restart +ERROR: parameter "superuser_reserved_connections" cannot be changed without restarting the server +RESET superuser_reserved_connections; -- fail, requires restart +ERROR: parameter "superuser_reserved_connections" cannot be changed without restarting the server +ALTER SYSTEM SET superuser_reserved_connections = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "superuser_reserved_connections" +ALTER SYSTEM RESET superuser_reserved_connections; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "superuser_reserved_connections" +SET unix_socket_permissions = 50; -- fail, requires restart +ERROR: parameter "unix_socket_permissions" cannot be changed without restarting the server +RESET unix_socket_permissions; -- fail, requires restart +ERROR: parameter "unix_socket_permissions" cannot be changed without restarting the server +ALTER SYSTEM SET unix_socket_permissions = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_permissions" +ALTER SYSTEM RESET unix_socket_permissions; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "unix_socket_permissions" +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET huge_pages = 'try'; -- fail, requires restart +ERROR: parameter "huge_pages" cannot be changed without restarting the server +RESET huge_pages; -- fail, requires restart +ERROR: parameter "huge_pages" cannot be changed without restarting the server +ALTER SYSTEM SET huge_pages = 'try'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "huge_pages" +ALTER SYSTEM RESET huge_pages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "huge_pages" +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / CLIENT_CONN_PRELOAD +SET jit_provider = 'llvmjit'; -- fail, requires restart +ERROR: parameter "jit_provider" cannot be changed without restarting the server +RESET jit_provider; -- fail, requires restart +ERROR: parameter "jit_provider" cannot be changed without restarting the server +ALTER SYSTEM SET jit_provider = 'llvmjit'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_provider" +ALTER SYSTEM RESET jit_provider; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_provider" +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS / PROCESS_TITLE +SET cluster_name = 'BonCluster'; -- fail, requires restart +ERROR: parameter "cluster_name" cannot be changed without restarting the server +RESET cluster_name; -- fail, requires restart +ERROR: parameter "cluster_name" cannot be changed without restarting the server +ALTER SYSTEM SET cluster_name = 'BonCluster'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "cluster_name" +ALTER SYSTEM RESET cluster_name; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "cluster_name" +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET event_source = 'PostgreSQL'; -- fail, requires restart +ERROR: parameter "event_source" cannot be changed without restarting the server +RESET event_source; -- fail, requires restart +ERROR: parameter "event_source" cannot be changed without restarting the server +ALTER SYSTEM SET event_source = 'PostgreSQL'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "event_source" +ALTER SYSTEM RESET event_source; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "event_source" +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_freeze_max_age = 1000050000; -- fail, requires restart +ERROR: parameter "autovacuum_freeze_max_age" cannot be changed without restarting the server +RESET autovacuum_freeze_max_age; -- fail, requires restart +ERROR: parameter "autovacuum_freeze_max_age" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_freeze_max_age = 1000050000; -- ok +ALTER SYSTEM RESET autovacuum_freeze_max_age; -- ok +SET autovacuum_multixact_freeze_max_age = 1000005000; -- fail, requires restart +ERROR: parameter "autovacuum_multixact_freeze_max_age" cannot be changed without restarting the server +RESET autovacuum_multixact_freeze_max_age; -- fail, requires restart +ERROR: parameter "autovacuum_multixact_freeze_max_age" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_multixact_freeze_max_age = 1000005000; -- ok +ALTER SYSTEM RESET autovacuum_multixact_freeze_max_age; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum_max_workers = 50; -- fail, requires restart +ERROR: parameter "autovacuum_max_workers" cannot be changed without restarting the server +RESET autovacuum_max_workers; -- fail, requires restart +ERROR: parameter "autovacuum_max_workers" cannot be changed without restarting the server +ALTER SYSTEM SET autovacuum_max_workers = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_max_workers" +ALTER SYSTEM RESET autovacuum_max_workers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_max_workers" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_locks_per_transaction = 50; -- fail, requires restart +ERROR: parameter "max_locks_per_transaction" cannot be changed without restarting the server +RESET max_locks_per_transaction; -- fail, requires restart +ERROR: parameter "max_locks_per_transaction" cannot be changed without restarting the server +ALTER SYSTEM SET max_locks_per_transaction = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_locks_per_transaction" +ALTER SYSTEM RESET max_locks_per_transaction; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_locks_per_transaction" +SET max_pred_locks_per_transaction = 50; -- fail, requires restart +ERROR: parameter "max_pred_locks_per_transaction" cannot be changed without restarting the server +RESET max_pred_locks_per_transaction; -- fail, requires restart +ERROR: parameter "max_pred_locks_per_transaction" cannot be changed without restarting the server +ALTER SYSTEM SET max_pred_locks_per_transaction = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_transaction" +ALTER SYSTEM RESET max_pred_locks_per_transaction; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_transaction" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_logical_replication_workers = 50; -- fail, requires restart +ERROR: parameter "max_logical_replication_workers" cannot be changed without restarting the server +RESET max_logical_replication_workers; -- fail, requires restart +ERROR: parameter "max_logical_replication_workers" cannot be changed without restarting the server +ALTER SYSTEM SET max_logical_replication_workers = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_logical_replication_workers" +ALTER SYSTEM RESET max_logical_replication_workers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_logical_replication_workers" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET max_worker_processes = 50; -- fail, requires restart +ERROR: parameter "max_worker_processes" cannot be changed without restarting the server +RESET max_worker_processes; -- fail, requires restart +ERROR: parameter "max_worker_processes" cannot be changed without restarting the server +ALTER SYSTEM SET max_worker_processes = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_worker_processes" +ALTER SYSTEM RESET max_worker_processes; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_worker_processes" +SET old_snapshot_threshold = 50; -- fail, requires restart +ERROR: parameter "old_snapshot_threshold" cannot be changed without restarting the server +RESET old_snapshot_threshold; -- fail, requires restart +ERROR: parameter "old_snapshot_threshold" cannot be changed without restarting the server +ALTER SYSTEM SET old_snapshot_threshold = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "old_snapshot_threshold" +ALTER SYSTEM RESET old_snapshot_threshold; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "old_snapshot_threshold" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_KERNEL +SET max_files_per_process = 1073741855; -- fail, requires restart +ERROR: parameter "max_files_per_process" cannot be changed without restarting the server +RESET max_files_per_process; -- fail, requires restart +ERROR: parameter "max_files_per_process" cannot be changed without restarting the server +ALTER SYSTEM SET max_files_per_process = 1073741855; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_files_per_process" +ALTER SYSTEM RESET max_files_per_process; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_files_per_process" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_prepared_transactions = 50; -- fail, requires restart +ERROR: parameter "max_prepared_transactions" cannot be changed without restarting the server +RESET max_prepared_transactions; -- fail, requires restart +ERROR: parameter "max_prepared_transactions" cannot be changed without restarting the server +ALTER SYSTEM SET max_prepared_transactions = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_prepared_transactions" +ALTER SYSTEM RESET max_prepared_transactions; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_prepared_transactions" +SET min_dynamic_shared_memory = 50; -- fail, requires restart +ERROR: parameter "min_dynamic_shared_memory" cannot be changed without restarting the server +RESET min_dynamic_shared_memory; -- fail, requires restart +ERROR: parameter "min_dynamic_shared_memory" cannot be changed without restarting the server +ALTER SYSTEM SET min_dynamic_shared_memory = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "min_dynamic_shared_memory" +ALTER SYSTEM RESET min_dynamic_shared_memory; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "min_dynamic_shared_memory" +SET shared_buffers = 50; -- fail, requires restart +ERROR: parameter "shared_buffers" cannot be changed without restarting the server +RESET shared_buffers; -- fail, requires restart +ERROR: parameter "shared_buffers" cannot be changed without restarting the server +ALTER SYSTEM SET shared_buffers = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_buffers" +ALTER SYSTEM RESET shared_buffers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_buffers" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / STATS_COLLECTOR +SET track_activity_query_size = 524338; -- fail, requires restart +ERROR: parameter "track_activity_query_size" cannot be changed without restarting the server +RESET track_activity_query_size; -- fail, requires restart +ERROR: parameter "track_activity_query_size" cannot be changed without restarting the server +ALTER SYSTEM SET track_activity_query_size = 524338; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "track_activity_query_size" +ALTER SYSTEM RESET track_activity_query_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "track_activity_query_size" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_replication_slots = 50; -- fail, requires restart +ERROR: parameter "max_replication_slots" cannot be changed without restarting the server +RESET max_replication_slots; -- fail, requires restart +ERROR: parameter "max_replication_slots" cannot be changed without restarting the server +ALTER SYSTEM SET max_replication_slots = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_replication_slots" +ALTER SYSTEM RESET max_replication_slots; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_replication_slots" +SET max_wal_senders = 50; -- fail, requires restart +ERROR: parameter "max_wal_senders" cannot be changed without restarting the server +RESET max_wal_senders; -- fail, requires restart +ERROR: parameter "max_wal_senders" cannot be changed without restarting the server +ALTER SYSTEM SET max_wal_senders = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_wal_senders" +ALTER SYSTEM RESET max_wal_senders; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_wal_senders" +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_buffers = 50; -- fail, requires restart +ERROR: parameter "wal_buffers" cannot be changed without restarting the server +RESET wal_buffers; -- fail, requires restart +ERROR: parameter "wal_buffers" cannot be changed without restarting the server +ALTER SYSTEM SET wal_buffers = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_buffers" +ALTER SYSTEM RESET wal_buffers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_buffers" +-- PGC_POSTMASTER / GUC_SERVER_CONFIGURATION / RESOURCES_MEM +SET dynamic_shared_memory_type = 'posix'; -- fail, requires restart +ERROR: parameter "dynamic_shared_memory_type" cannot be changed without restarting the server +RESET dynamic_shared_memory_type; -- fail, requires restart +ERROR: parameter "dynamic_shared_memory_type" cannot be changed without restarting the server +ALTER SYSTEM SET dynamic_shared_memory_type = 'posix'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_shared_memory_type" +ALTER SYSTEM RESET dynamic_shared_memory_type; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_shared_memory_type" +SET shared_memory_type = 'mmap'; -- fail, requires restart +ERROR: parameter "shared_memory_type" cannot be changed without restarting the server +RESET shared_memory_type; -- fail, requires restart +ERROR: parameter "shared_memory_type" cannot be changed without restarting the server +ALTER SYSTEM SET shared_memory_type = 'mmap'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_memory_type" +ALTER SYSTEM RESET shared_memory_type; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "shared_memory_type" +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_invalid_pages = ON; -- fail, requires restart +ERROR: parameter "ignore_invalid_pages" cannot be changed without restarting the server +RESET ignore_invalid_pages; -- fail, requires restart +ERROR: parameter "ignore_invalid_pages" cannot be changed without restarting the server +ALTER SYSTEM SET ignore_invalid_pages = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_invalid_pages" +ALTER SYSTEM RESET ignore_invalid_pages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_invalid_pages" +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / ERROR_HANDLING_OPTIONS +SET data_sync_retry = ON; -- fail, requires restart +ERROR: parameter "data_sync_retry" cannot be changed without restarting the server +RESET data_sync_retry; -- fail, requires restart +ERROR: parameter "data_sync_retry" cannot be changed without restarting the server +ALTER SYSTEM SET data_sync_retry = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "data_sync_retry" +ALTER SYSTEM RESET data_sync_retry; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "data_sync_retry" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET recovery_init_sync_method = 'fsync'; -- fail, requires restart +ERROR: parameter "recovery_init_sync_method" cannot be changed without restarting the server +RESET recovery_init_sync_method; -- fail, requires restart +ERROR: parameter "recovery_init_sync_method" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_init_sync_method = 'fsync'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_init_sync_method" +ALTER SYSTEM RESET recovery_init_sync_method; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_init_sync_method" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET track_commit_timestamp = ON; -- fail, requires restart +ERROR: parameter "track_commit_timestamp" cannot be changed without restarting the server +RESET track_commit_timestamp; -- fail, requires restart +ERROR: parameter "track_commit_timestamp" cannot be changed without restarting the server +ALTER SYSTEM SET track_commit_timestamp = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "track_commit_timestamp" +ALTER SYSTEM RESET track_commit_timestamp; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "track_commit_timestamp" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby = ON; -- fail, requires restart +ERROR: parameter "hot_standby" cannot be changed without restarting the server +RESET hot_standby; -- fail, requires restart +ERROR: parameter "hot_standby" cannot be changed without restarting the server +ALTER SYSTEM SET hot_standby = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "hot_standby" +ALTER SYSTEM RESET hot_standby; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "hot_standby" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_mode = 'off'; -- fail, requires restart +ERROR: parameter "archive_mode" cannot be changed without restarting the server +RESET archive_mode; -- fail, requires restart +ERROR: parameter "archive_mode" cannot be changed without restarting the server +ALTER SYSTEM SET archive_mode = 'off'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_mode" +ALTER SYSTEM RESET archive_mode; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_mode" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_RECOVERY_TARGET +SET recovery_target_action = 'pause'; -- fail, requires restart +ERROR: parameter "recovery_target_action" cannot be changed without restarting the server +RESET recovery_target_action; -- fail, requires restart +ERROR: parameter "recovery_target_action" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_action = 'pause'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_action" +ALTER SYSTEM RESET recovery_target_action; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_action" +SET recovery_target_inclusive = ON; -- fail, requires restart +ERROR: parameter "recovery_target_inclusive" cannot be changed without restarting the server +RESET recovery_target_inclusive; -- fail, requires restart +ERROR: parameter "recovery_target_inclusive" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_inclusive = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_inclusive" +ALTER SYSTEM RESET recovery_target_inclusive; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_inclusive" +SET recovery_target_lsn = '16/B374D848'; -- fail, requires restart +ERROR: parameter "recovery_target_lsn" cannot be changed without restarting the server +RESET recovery_target_lsn; -- fail, requires restart +ERROR: parameter "recovery_target_lsn" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_lsn = '16/B374D848'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_lsn" +ALTER SYSTEM RESET recovery_target_lsn; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_lsn" +SET recovery_target_name = 'BonPoint'; -- fail, requires restart +ERROR: parameter "recovery_target_name" cannot be changed without restarting the server +RESET recovery_target_name; -- fail, requires restart +ERROR: parameter "recovery_target_name" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_name = 'BonPoint'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_name" +ALTER SYSTEM RESET recovery_target_name; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_name" +SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, requires restart +ERROR: parameter "recovery_target_time" cannot be changed without restarting the server +RESET recovery_target_time; -- fail, requires restart +ERROR: parameter "recovery_target_time" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_time" +ALTER SYSTEM RESET recovery_target_time; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_time" +SET recovery_target_timeline = 'latest'; -- fail, requires restart +ERROR: parameter "recovery_target_timeline" cannot be changed without restarting the server +RESET recovery_target_timeline; -- fail, requires restart +ERROR: parameter "recovery_target_timeline" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_timeline = 'latest'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_timeline" +ALTER SYSTEM RESET recovery_target_timeline; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_timeline" +SET recovery_target_xid = '12345678'; -- fail, requires restart +ERROR: parameter "recovery_target_xid" cannot be changed without restarting the server +RESET recovery_target_xid; -- fail, requires restart +ERROR: parameter "recovery_target_xid" cannot be changed without restarting the server +ALTER SYSTEM SET recovery_target_xid = '12345678'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_xid" +ALTER SYSTEM RESET recovery_target_xid; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_target_xid" +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_level = 'replica'; -- fail, requires restart +ERROR: parameter "wal_level" cannot be changed without restarting the server +RESET wal_level; -- fail, requires restart +ERROR: parameter "wal_level" cannot be changed without restarting the server +ALTER SYSTEM SET wal_level = 'replica'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_level" +ALTER SYSTEM RESET wal_level; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_level" +SET wal_log_hints = ON; -- fail, requires restart +ERROR: parameter "wal_log_hints" cannot be changed without restarting the server +RESET wal_log_hints; -- fail, requires restart +ERROR: parameter "wal_log_hints" cannot be changed without restarting the server +ALTER SYSTEM SET wal_log_hints = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_log_hints" +ALTER SYSTEM RESET wal_log_hints; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_log_hints" +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVE_RECOVERY +SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, requires reload +ERROR: parameter "archive_cleanup_command" cannot be changed now +RESET archive_cleanup_command; -- fail, requires reload +ERROR: parameter "archive_cleanup_command" cannot be changed now +ALTER SYSTEM SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_cleanup_command" +ALTER SYSTEM RESET archive_cleanup_command; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_cleanup_command" +SET recovery_end_command = '/bin/recover my stuff'; -- fail, requires reload +ERROR: parameter "recovery_end_command" cannot be changed now +RESET recovery_end_command; -- fail, requires reload +ERROR: parameter "recovery_end_command" cannot be changed now +ALTER SYSTEM SET recovery_end_command = '/bin/recover my stuff'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_end_command" +ALTER SYSTEM RESET recovery_end_command; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_end_command" +SET restore_command = '/bin/restore my stuff'; -- fail, requires reload +ERROR: parameter "restore_command" cannot be changed now +RESET restore_command; -- fail, requires reload +ERROR: parameter "restore_command" cannot be changed now +ALTER SYSTEM SET restore_command = '/bin/restore my stuff'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "restore_command" +ALTER SYSTEM RESET restore_command; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "restore_command" +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVING +SET archive_command = '/bin/archive my stuff'; -- fail, requires reload +ERROR: parameter "archive_command" cannot be changed now +RESET archive_command; -- fail, requires reload +ERROR: parameter "archive_command" cannot be changed now +ALTER SYSTEM SET archive_command = '/bin/archive my stuff'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_command" +ALTER SYSTEM RESET archive_command; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_command" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / CONN_AUTH_SSL +SET ssl_ca_file = 'ca/server.ca'; -- fail, requires reload +ERROR: parameter "ssl_ca_file" cannot be changed now +RESET ssl_ca_file; -- fail, requires reload +ERROR: parameter "ssl_ca_file" cannot be changed now +ALTER SYSTEM SET ssl_ca_file = 'ca/server.ca'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ca_file" +ALTER SYSTEM RESET ssl_ca_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ca_file" +SET ssl_cert_file = 'crt/server.crt'; -- fail, requires reload +ERROR: parameter "ssl_cert_file" cannot be changed now +RESET ssl_cert_file; -- fail, requires reload +ERROR: parameter "ssl_cert_file" cannot be changed now +ALTER SYSTEM SET ssl_cert_file = 'crt/server.crt'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_cert_file" +ALTER SYSTEM RESET ssl_cert_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_cert_file" +SET ssl_crl_file = 'crl/server.crl'; -- fail, requires reload +ERROR: parameter "ssl_crl_file" cannot be changed now +RESET ssl_crl_file; -- fail, requires reload +ERROR: parameter "ssl_crl_file" cannot be changed now +ALTER SYSTEM SET ssl_crl_file = 'crl/server.crl'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_crl_file" +ALTER SYSTEM RESET ssl_crl_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_crl_file" +SET ssl_key_file = 'crl/server.key'; -- fail, requires reload +ERROR: parameter "ssl_key_file" cannot be changed now +RESET ssl_key_file; -- fail, requires reload +ERROR: parameter "ssl_key_file" cannot be changed now +ALTER SYSTEM SET ssl_key_file = 'crl/server.key'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_key_file" +ALTER SYSTEM RESET ssl_key_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_key_file" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / STATS_COLLECTOR +SET stats_temp_directory = 'pg_stat_tmp'; -- fail, requires reload +ERROR: parameter "stats_temp_directory" cannot be changed now +RESET stats_temp_directory; -- fail, requires reload +ERROR: parameter "stats_temp_directory" cannot be changed now +ALTER SYSTEM SET stats_temp_directory = 'pg_stat_tmp'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "stats_temp_directory" +ALTER SYSTEM RESET stats_temp_directory; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "stats_temp_directory" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET krb_server_keyfile = 'krb/server.key'; -- fail, requires reload +ERROR: parameter "krb_server_keyfile" cannot be changed now +RESET krb_server_keyfile; -- fail, requires reload +ERROR: parameter "krb_server_keyfile" cannot be changed now +ALTER SYSTEM SET krb_server_keyfile = 'krb/server.key'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "krb_server_keyfile" +ALTER SYSTEM RESET krb_server_keyfile; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "krb_server_keyfile" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS / LOGGING_WHERE +SET log_file_mode = 50; -- fail, requires reload +ERROR: parameter "log_file_mode" cannot be changed now +RESET log_file_mode; -- fail, requires reload +ERROR: parameter "log_file_mode" cannot be changed now +ALTER SYSTEM SET log_file_mode = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_file_mode" +ALTER SYSTEM RESET log_file_mode; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_file_mode" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_rotation_age = 50; -- fail, requires reload +ERROR: parameter "log_rotation_age" cannot be changed now +RESET log_rotation_age; -- fail, requires reload +ERROR: parameter "log_rotation_age" cannot be changed now +ALTER SYSTEM SET log_rotation_age = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_rotation_age" +ALTER SYSTEM RESET log_rotation_age; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_rotation_age" +SET log_rotation_size = 50; -- fail, requires reload +ERROR: parameter "log_rotation_size" cannot be changed now +RESET log_rotation_size; -- fail, requires reload +ERROR: parameter "log_rotation_size" cannot be changed now +ALTER SYSTEM SET log_rotation_size = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_rotation_size" +ALTER SYSTEM RESET log_rotation_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_rotation_size" +SET log_truncate_on_rotation = ON; -- fail, requires reload +ERROR: parameter "log_truncate_on_rotation" cannot be changed now +RESET log_truncate_on_rotation; -- fail, requires reload +ERROR: parameter "log_truncate_on_rotation" cannot be changed now +ALTER SYSTEM SET log_truncate_on_rotation = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_truncate_on_rotation" +ALTER SYSTEM RESET log_truncate_on_rotation; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_truncate_on_rotation" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / CONN_AUTH_SSL +SET ssl_crl_dir = 'crl/'; -- fail, requires reload +ERROR: parameter "ssl_crl_dir" cannot be changed now +RESET ssl_crl_dir; -- fail, requires reload +ERROR: parameter "ssl_crl_dir" cannot be changed now +ALTER SYSTEM SET ssl_crl_dir = 'crl/'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_crl_dir" +ALTER SYSTEM RESET ssl_crl_dir; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_crl_dir" +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_directory = 'log'; -- fail, requires reload +ERROR: parameter "log_directory" cannot be changed now +RESET log_directory; -- fail, requires reload +ERROR: parameter "log_directory" cannot be changed now +ALTER SYSTEM SET log_directory = 'log'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_directory" +ALTER SYSTEM RESET log_directory; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_directory" +SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, requires reload +ERROR: parameter "log_filename" cannot be changed now +RESET log_filename; -- fail, requires reload +ERROR: parameter "log_filename" cannot be changed now +ALTER SYSTEM SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_filename" +ALTER SYSTEM RESET log_filename; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_filename" +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET authentication_timeout = 50; -- fail, requires reload +ERROR: parameter "authentication_timeout" cannot be changed now +RESET authentication_timeout; -- fail, requires reload +ERROR: parameter "authentication_timeout" cannot be changed now +ALTER SYSTEM SET authentication_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "authentication_timeout" +ALTER SYSTEM RESET authentication_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "authentication_timeout" +SET db_user_namespace = ON; -- fail, requires reload +ERROR: parameter "db_user_namespace" cannot be changed now +RESET db_user_namespace; -- fail, requires reload +ERROR: parameter "db_user_namespace" cannot be changed now +ALTER SYSTEM SET db_user_namespace = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "db_user_namespace" +ALTER SYSTEM RESET db_user_namespace; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "db_user_namespace" +SET krb_caseins_users = ON; -- fail, requires reload +ERROR: parameter "krb_caseins_users" cannot be changed now +RESET krb_caseins_users; -- fail, requires reload +ERROR: parameter "krb_caseins_users" cannot be changed now +ALTER SYSTEM SET krb_caseins_users = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "krb_caseins_users" +ALTER SYSTEM RESET krb_caseins_users; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "krb_caseins_users" +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_SSL +SET ssl_ciphers = 'none'; -- fail, requires reload +ERROR: parameter "ssl_ciphers" cannot be changed now +RESET ssl_ciphers; -- fail, requires reload +ERROR: parameter "ssl_ciphers" cannot be changed now +ALTER SYSTEM SET ssl_ciphers = 'none'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ciphers" +ALTER SYSTEM RESET ssl_ciphers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ciphers" +SET ssl_dh_params_file = 'ssl/params'; -- fail, requires reload +ERROR: parameter "ssl_dh_params_file" cannot be changed now +RESET ssl_dh_params_file; -- fail, requires reload +ERROR: parameter "ssl_dh_params_file" cannot be changed now +ALTER SYSTEM SET ssl_dh_params_file = 'ssl/params'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_dh_params_file" +ALTER SYSTEM RESET ssl_dh_params_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_dh_params_file" +SET ssl_ecdh_curve = 'none'; -- fail, requires reload +ERROR: parameter "ssl_ecdh_curve" cannot be changed now +RESET ssl_ecdh_curve; -- fail, requires reload +ERROR: parameter "ssl_ecdh_curve" cannot be changed now +ALTER SYSTEM SET ssl_ecdh_curve = 'none'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ecdh_curve" +ALTER SYSTEM RESET ssl_ecdh_curve; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_ecdh_curve" +SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, requires reload +ERROR: parameter "ssl_min_protocol_version" cannot be changed now +RESET ssl_min_protocol_version; -- fail, requires reload +ERROR: parameter "ssl_min_protocol_version" cannot be changed now +ALTER SYSTEM SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_min_protocol_version" +ALTER SYSTEM RESET ssl_min_protocol_version; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_min_protocol_version" +SET ssl_passphrase_command = '/bin/passphrase'; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command" cannot be changed now +RESET ssl_passphrase_command; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command" cannot be changed now +ALTER SYSTEM SET ssl_passphrase_command = '/bin/passphrase'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_passphrase_command" +ALTER SYSTEM RESET ssl_passphrase_command; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_passphrase_command" +SET ssl_passphrase_command_supports_reload = ON; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command_supports_reload" cannot be changed now +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ERROR: parameter "ssl_passphrase_command_supports_reload" cannot be changed now +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_passphrase_command_supports_reload" +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_passphrase_command_supports_reload" +SET ssl_prefer_server_ciphers = ON; -- fail, requires reload +ERROR: parameter "ssl_prefer_server_ciphers" cannot be changed now +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ERROR: parameter "ssl_prefer_server_ciphers" cannot be changed now +ALTER SYSTEM SET ssl_prefer_server_ciphers = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_prefer_server_ciphers" +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ssl_prefer_server_ciphers" +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET pre_auth_delay = 50; -- fail, requires reload +ERROR: parameter "pre_auth_delay" cannot be changed now +RESET pre_auth_delay; -- fail, requires reload +ERROR: parameter "pre_auth_delay" cannot be changed now +ALTER SYSTEM SET pre_auth_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "pre_auth_delay" +ALTER SYSTEM RESET pre_auth_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "pre_auth_delay" +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS | GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_hostname = ON; -- fail, requires reload +ERROR: parameter "log_hostname" cannot be changed now +RESET log_hostname; -- fail, requires reload +ERROR: parameter "log_hostname" cannot be changed now +ALTER SYSTEM SET log_hostname = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_hostname" +ALTER SYSTEM RESET log_hostname; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_hostname" +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_autovacuum_min_duration = 50; -- fail, requires reload +ERROR: parameter "log_autovacuum_min_duration" cannot be changed now +RESET log_autovacuum_min_duration; -- fail, requires reload +ERROR: parameter "log_autovacuum_min_duration" cannot be changed now +ALTER SYSTEM SET log_autovacuum_min_duration = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_autovacuum_min_duration" +ALTER SYSTEM RESET log_autovacuum_min_duration; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_autovacuum_min_duration" +SET log_checkpoints = ON; -- fail, requires reload +ERROR: parameter "log_checkpoints" cannot be changed now +RESET log_checkpoints; -- fail, requires reload +ERROR: parameter "log_checkpoints" cannot be changed now +ALTER SYSTEM SET log_checkpoints = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_checkpoints" +ALTER SYSTEM RESET log_checkpoints; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_checkpoints" +SET log_line_prefix = '%m [%p] '; -- fail, requires reload +ERROR: parameter "log_line_prefix" cannot be changed now +RESET log_line_prefix; -- fail, requires reload +ERROR: parameter "log_line_prefix" cannot be changed now +ALTER SYSTEM SET log_line_prefix = '%m [%p] '; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_line_prefix" +ALTER SYSTEM RESET log_line_prefix; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_line_prefix" +SET log_recovery_conflict_waits = ON; -- fail, requires reload +ERROR: parameter "log_recovery_conflict_waits" cannot be changed now +RESET log_recovery_conflict_waits; -- fail, requires reload +ERROR: parameter "log_recovery_conflict_waits" cannot be changed now +ALTER SYSTEM SET log_recovery_conflict_waits = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_recovery_conflict_waits" +ALTER SYSTEM RESET log_recovery_conflict_waits; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_recovery_conflict_waits" +SET log_timezone = 'Europe/Helsinki'; -- fail, requires reload +ERROR: parameter "log_timezone" cannot be changed now +RESET log_timezone; -- fail, requires reload +ERROR: parameter "log_timezone" cannot be changed now +ALTER SYSTEM SET log_timezone = 'Europe/Helsinki'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_timezone" +ALTER SYSTEM RESET log_timezone; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_timezone" +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET syslog_ident = 'postgres'; -- fail, requires reload +ERROR: parameter "syslog_ident" cannot be changed now +RESET syslog_ident; -- fail, requires reload +ERROR: parameter "syslog_ident" cannot be changed now +ALTER SYSTEM SET syslog_ident = 'postgres'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_ident" +ALTER SYSTEM RESET syslog_ident; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_ident" +SET syslog_sequence_numbers = ON; -- fail, requires reload +ERROR: parameter "syslog_sequence_numbers" cannot be changed now +RESET syslog_sequence_numbers; -- fail, requires reload +ERROR: parameter "syslog_sequence_numbers" cannot be changed now +ALTER SYSTEM SET syslog_sequence_numbers = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_sequence_numbers" +ALTER SYSTEM RESET syslog_sequence_numbers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_sequence_numbers" +SET syslog_split_messages = ON; -- fail, requires reload +ERROR: parameter "syslog_split_messages" cannot be changed now +RESET syslog_split_messages; -- fail, requires reload +ERROR: parameter "syslog_split_messages" cannot be changed now +ALTER SYSTEM SET syslog_split_messages = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_split_messages" +ALTER SYSTEM RESET syslog_split_messages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "syslog_split_messages" +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET trace_recovery_messages = 'log'; -- fail, requires reload +ERROR: parameter "trace_recovery_messages" cannot be changed now +RESET trace_recovery_messages; -- fail, requires reload +ERROR: parameter "trace_recovery_messages" cannot be changed now +ALTER SYSTEM SET trace_recovery_messages = 'log'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "trace_recovery_messages" +ALTER SYSTEM RESET trace_recovery_messages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "trace_recovery_messages" +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_warning = 50; -- fail, requires reload +ERROR: parameter "checkpoint_warning" cannot be changed now +RESET checkpoint_warning; -- fail, requires reload +ERROR: parameter "checkpoint_warning" cannot be changed now +ALTER SYSTEM SET checkpoint_warning = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_warning" +ALTER SYSTEM RESET checkpoint_warning; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_warning" +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_analyze_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_scale_factor" cannot be changed now +RESET autovacuum_analyze_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_analyze_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_scale_factor; -- ok +SET autovacuum_analyze_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_threshold" cannot be changed now +RESET autovacuum_analyze_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_analyze_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_analyze_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_threshold; -- ok +SET autovacuum_naptime = 50; -- fail, requires reload +ERROR: parameter "autovacuum_naptime" cannot be changed now +RESET autovacuum_naptime; -- fail, requires reload +ERROR: parameter "autovacuum_naptime" cannot be changed now +ALTER SYSTEM SET autovacuum_naptime = 50; -- ok +ALTER SYSTEM RESET autovacuum_naptime; -- ok +SET autovacuum_vacuum_cost_delay = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_delay" cannot be changed now +RESET autovacuum_vacuum_cost_delay; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_delay" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_delay; -- ok +SET autovacuum_vacuum_cost_limit = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_limit" cannot be changed now +RESET autovacuum_vacuum_cost_limit; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_cost_limit" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_cost_limit = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- ok +SET autovacuum_vacuum_insert_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_scale_factor" cannot be changed now +RESET autovacuum_vacuum_insert_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_insert_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_scale_factor; -- ok +SET autovacuum_vacuum_insert_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_threshold" cannot be changed now +RESET autovacuum_vacuum_insert_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_insert_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_insert_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_threshold; -- ok +SET autovacuum_vacuum_scale_factor = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_scale_factor" cannot be changed now +RESET autovacuum_vacuum_scale_factor; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_scale_factor" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_scale_factor; -- ok +SET autovacuum_vacuum_threshold = 50; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_threshold" cannot be changed now +RESET autovacuum_vacuum_threshold; -- fail, requires reload +ERROR: parameter "autovacuum_vacuum_threshold" cannot be changed now +ALTER SYSTEM SET autovacuum_vacuum_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_threshold; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / REPLICATION_PRIMARY +SET vacuum_defer_cleanup_age = 50; -- fail, requires reload +ERROR: parameter "vacuum_defer_cleanup_age" cannot be changed now +RESET vacuum_defer_cleanup_age; -- fail, requires reload +ERROR: parameter "vacuum_defer_cleanup_age" cannot be changed now +ALTER SYSTEM SET vacuum_defer_cleanup_age = 50; -- ok +ALTER SYSTEM RESET vacuum_defer_cleanup_age; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum = ON; -- fail, requires reload +ERROR: parameter "autovacuum" cannot be changed now +RESET autovacuum; -- fail, requires reload +ERROR: parameter "autovacuum" cannot be changed now +ALTER SYSTEM SET autovacuum = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum" +ALTER SYSTEM RESET autovacuum; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum" +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET autovacuum_work_mem = 50; -- fail, requires reload +ERROR: parameter "autovacuum_work_mem" cannot be changed now +RESET autovacuum_work_mem; -- fail, requires reload +ERROR: parameter "autovacuum_work_mem" cannot be changed now +ALTER SYSTEM SET autovacuum_work_mem = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_work_mem" +ALTER SYSTEM RESET autovacuum_work_mem; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_work_mem" +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_pred_locks_per_page = 50; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_page" cannot be changed now +RESET max_pred_locks_per_page; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_page" cannot be changed now +ALTER SYSTEM SET max_pred_locks_per_page = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_page" +ALTER SYSTEM RESET max_pred_locks_per_page; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_page" +SET max_pred_locks_per_relation = 50; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_relation" cannot be changed now +RESET max_pred_locks_per_relation; -- fail, requires reload +ERROR: parameter "max_pred_locks_per_relation" cannot be changed now +ALTER SYSTEM SET max_pred_locks_per_relation = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_relation" +ALTER SYSTEM RESET max_pred_locks_per_relation; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_pred_locks_per_relation" +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_sync_workers_per_subscription = 50; -- fail, requires reload +ERROR: parameter "max_sync_workers_per_subscription" cannot be changed now +RESET max_sync_workers_per_subscription; -- fail, requires reload +ERROR: parameter "max_sync_workers_per_subscription" cannot be changed now +ALTER SYSTEM SET max_sync_workers_per_subscription = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_sync_workers_per_subscription" +ALTER SYSTEM RESET max_sync_workers_per_subscription; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_sync_workers_per_subscription" +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / RESOURCES_BGWRITER +SET bgwriter_delay = 50; -- fail, requires reload +ERROR: parameter "bgwriter_delay" cannot be changed now +RESET bgwriter_delay; -- fail, requires reload +ERROR: parameter "bgwriter_delay" cannot be changed now +ALTER SYSTEM SET bgwriter_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_delay" +ALTER SYSTEM RESET bgwriter_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_delay" +SET bgwriter_flush_after = 50; -- fail, requires reload +ERROR: parameter "bgwriter_flush_after" cannot be changed now +RESET bgwriter_flush_after; -- fail, requires reload +ERROR: parameter "bgwriter_flush_after" cannot be changed now +ALTER SYSTEM SET bgwriter_flush_after = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_flush_after" +ALTER SYSTEM RESET bgwriter_flush_after; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_flush_after" +SET bgwriter_lru_maxpages = 50; -- fail, requires reload +ERROR: parameter "bgwriter_lru_maxpages" cannot be changed now +RESET bgwriter_lru_maxpages; -- fail, requires reload +ERROR: parameter "bgwriter_lru_maxpages" cannot be changed now +ALTER SYSTEM SET bgwriter_lru_maxpages = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_lru_maxpages" +ALTER SYSTEM RESET bgwriter_lru_maxpages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_lru_maxpages" +SET bgwriter_lru_multiplier = 5; -- fail, requires reload +ERROR: parameter "bgwriter_lru_multiplier" cannot be changed now +RESET bgwriter_lru_multiplier; -- fail, requires reload +ERROR: parameter "bgwriter_lru_multiplier" cannot be changed now +ALTER SYSTEM SET bgwriter_lru_multiplier = 5; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_lru_multiplier" +ALTER SYSTEM RESET bgwriter_lru_multiplier; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "bgwriter_lru_multiplier" +-- PGC_SIGHUP / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_slot_wal_keep_size = 50; -- fail, requires reload +ERROR: parameter "max_slot_wal_keep_size" cannot be changed now +RESET max_slot_wal_keep_size; -- fail, requires reload +ERROR: parameter "max_slot_wal_keep_size" cannot be changed now +ALTER SYSTEM SET max_slot_wal_keep_size = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_slot_wal_keep_size" +ALTER SYSTEM RESET max_slot_wal_keep_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_slot_wal_keep_size" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = ON; -- fail, requires reload +ERROR: parameter "remove_temp_files_after_crash" cannot be changed now +RESET remove_temp_files_after_crash; -- fail, requires reload +ERROR: parameter "remove_temp_files_after_crash" cannot be changed now +ALTER SYSTEM SET remove_temp_files_after_crash = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "remove_temp_files_after_crash" +ALTER SYSTEM RESET remove_temp_files_after_crash; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "remove_temp_files_after_crash" +SET restart_after_crash = ON; -- fail, requires reload +ERROR: parameter "restart_after_crash" cannot be changed now +RESET restart_after_crash; -- fail, requires reload +ERROR: parameter "restart_after_crash" cannot be changed now +ALTER SYSTEM SET restart_after_crash = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "restart_after_crash" +ALTER SYSTEM RESET restart_after_crash; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "restart_after_crash" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_PRIMARY +SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, requires reload +ERROR: parameter "synchronous_standby_names" cannot be changed now +RESET synchronous_standby_names; -- fail, requires reload +ERROR: parameter "synchronous_standby_names" cannot be changed now +ALTER SYSTEM SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "synchronous_standby_names" +ALTER SYSTEM RESET synchronous_standby_names; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "synchronous_standby_names" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET wal_keep_size = 50; -- fail, requires reload +ERROR: parameter "wal_keep_size" cannot be changed now +RESET wal_keep_size; -- fail, requires reload +ERROR: parameter "wal_keep_size" cannot be changed now +ALTER SYSTEM SET wal_keep_size = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_keep_size" +ALTER SYSTEM RESET wal_keep_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_keep_size" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby_feedback = ON; -- fail, requires reload +ERROR: parameter "hot_standby_feedback" cannot be changed now +RESET hot_standby_feedback; -- fail, requires reload +ERROR: parameter "hot_standby_feedback" cannot be changed now +ALTER SYSTEM SET hot_standby_feedback = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "hot_standby_feedback" +ALTER SYSTEM RESET hot_standby_feedback; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "hot_standby_feedback" +SET max_standby_archive_delay = 50; -- fail, requires reload +ERROR: parameter "max_standby_archive_delay" cannot be changed now +RESET max_standby_archive_delay; -- fail, requires reload +ERROR: parameter "max_standby_archive_delay" cannot be changed now +ALTER SYSTEM SET max_standby_archive_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_standby_archive_delay" +ALTER SYSTEM RESET max_standby_archive_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_standby_archive_delay" +SET max_standby_streaming_delay = 50; -- fail, requires reload +ERROR: parameter "max_standby_streaming_delay" cannot be changed now +RESET max_standby_streaming_delay; -- fail, requires reload +ERROR: parameter "max_standby_streaming_delay" cannot be changed now +ALTER SYSTEM SET max_standby_streaming_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_standby_streaming_delay" +ALTER SYSTEM RESET max_standby_streaming_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_standby_streaming_delay" +SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, requires reload +ERROR: parameter "primary_conninfo" cannot be changed now +RESET primary_conninfo; -- fail, requires reload +ERROR: parameter "primary_conninfo" cannot be changed now +ALTER SYSTEM SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "primary_conninfo" +ALTER SYSTEM RESET primary_conninfo; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "primary_conninfo" +SET primary_slot_name = 'bonne_fente'; -- fail, requires reload +ERROR: parameter "primary_slot_name" cannot be changed now +RESET primary_slot_name; -- fail, requires reload +ERROR: parameter "primary_slot_name" cannot be changed now +ALTER SYSTEM SET primary_slot_name = 'bonne_fente'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "primary_slot_name" +ALTER SYSTEM RESET primary_slot_name; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "primary_slot_name" +SET promote_trigger_file = 'promote.trigger'; -- fail, requires reload +ERROR: parameter "promote_trigger_file" cannot be changed now +RESET promote_trigger_file; -- fail, requires reload +ERROR: parameter "promote_trigger_file" cannot be changed now +ALTER SYSTEM SET promote_trigger_file = 'promote.trigger'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "promote_trigger_file" +ALTER SYSTEM RESET promote_trigger_file; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "promote_trigger_file" +SET recovery_min_apply_delay = 50; -- fail, requires reload +ERROR: parameter "recovery_min_apply_delay" cannot be changed now +RESET recovery_min_apply_delay; -- fail, requires reload +ERROR: parameter "recovery_min_apply_delay" cannot be changed now +ALTER SYSTEM SET recovery_min_apply_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_min_apply_delay" +ALTER SYSTEM RESET recovery_min_apply_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "recovery_min_apply_delay" +SET wal_receiver_create_temp_slot = ON; -- fail, requires reload +ERROR: parameter "wal_receiver_create_temp_slot" cannot be changed now +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ERROR: parameter "wal_receiver_create_temp_slot" cannot be changed now +ALTER SYSTEM SET wal_receiver_create_temp_slot = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_create_temp_slot" +ALTER SYSTEM RESET wal_receiver_create_temp_slot; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_create_temp_slot" +SET wal_receiver_status_interval = 50; -- fail, requires reload +ERROR: parameter "wal_receiver_status_interval" cannot be changed now +RESET wal_receiver_status_interval; -- fail, requires reload +ERROR: parameter "wal_receiver_status_interval" cannot be changed now +ALTER SYSTEM SET wal_receiver_status_interval = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_status_interval" +ALTER SYSTEM RESET wal_receiver_status_interval; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_status_interval" +SET wal_receiver_timeout = 50; -- fail, requires reload +ERROR: parameter "wal_receiver_timeout" cannot be changed now +RESET wal_receiver_timeout; -- fail, requires reload +ERROR: parameter "wal_receiver_timeout" cannot be changed now +ALTER SYSTEM SET wal_receiver_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_timeout" +ALTER SYSTEM RESET wal_receiver_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_receiver_timeout" +SET wal_retrieve_retry_interval = 50; -- fail, requires reload +ERROR: parameter "wal_retrieve_retry_interval" cannot be changed now +RESET wal_retrieve_retry_interval; -- fail, requires reload +ERROR: parameter "wal_retrieve_retry_interval" cannot be changed now +ALTER SYSTEM SET wal_retrieve_retry_interval = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_retrieve_retry_interval" +ALTER SYSTEM RESET wal_retrieve_retry_interval; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_retrieve_retry_interval" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_timeout = 50; -- fail, requires reload +ERROR: parameter "archive_timeout" cannot be changed now +RESET archive_timeout; -- fail, requires reload +ERROR: parameter "archive_timeout" cannot be changed now +ALTER SYSTEM SET archive_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_timeout" +ALTER SYSTEM RESET archive_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "archive_timeout" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_completion_target = 0; -- fail, requires reload +ERROR: parameter "checkpoint_completion_target" cannot be changed now +RESET checkpoint_completion_target; -- fail, requires reload +ERROR: parameter "checkpoint_completion_target" cannot be changed now +ALTER SYSTEM SET checkpoint_completion_target = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_completion_target" +ALTER SYSTEM RESET checkpoint_completion_target; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_completion_target" +SET checkpoint_flush_after = 50; -- fail, requires reload +ERROR: parameter "checkpoint_flush_after" cannot be changed now +RESET checkpoint_flush_after; -- fail, requires reload +ERROR: parameter "checkpoint_flush_after" cannot be changed now +ALTER SYSTEM SET checkpoint_flush_after = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_flush_after" +ALTER SYSTEM RESET checkpoint_flush_after; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_flush_after" +SET checkpoint_timeout = 50; -- fail, requires reload +ERROR: parameter "checkpoint_timeout" cannot be changed now +RESET checkpoint_timeout; -- fail, requires reload +ERROR: parameter "checkpoint_timeout" cannot be changed now +ALTER SYSTEM SET checkpoint_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_timeout" +ALTER SYSTEM RESET checkpoint_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "checkpoint_timeout" +SET max_wal_size = 50; -- fail, requires reload +ERROR: parameter "max_wal_size" cannot be changed now +RESET max_wal_size; -- fail, requires reload +ERROR: parameter "max_wal_size" cannot be changed now +ALTER SYSTEM SET max_wal_size = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_wal_size" +ALTER SYSTEM RESET max_wal_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_wal_size" +SET min_wal_size = 50; -- fail, requires reload +ERROR: parameter "min_wal_size" cannot be changed now +RESET min_wal_size; -- fail, requires reload +ERROR: parameter "min_wal_size" cannot be changed now +ALTER SYSTEM SET min_wal_size = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "min_wal_size" +ALTER SYSTEM RESET min_wal_size; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "min_wal_size" +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_SETTINGS +SET fsync = ON; -- fail, requires reload +ERROR: parameter "fsync" cannot be changed now +RESET fsync; -- fail, requires reload +ERROR: parameter "fsync" cannot be changed now +ALTER SYSTEM SET fsync = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "fsync" +ALTER SYSTEM RESET fsync; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "fsync" +SET full_page_writes = ON; -- fail, requires reload +ERROR: parameter "full_page_writes" cannot be changed now +RESET full_page_writes; -- fail, requires reload +ERROR: parameter "full_page_writes" cannot be changed now +ALTER SYSTEM SET full_page_writes = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "full_page_writes" +ALTER SYSTEM RESET full_page_writes; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "full_page_writes" +SET wal_sync_method = 'open_datasync'; -- fail, requires reload +ERROR: parameter "wal_sync_method" cannot be changed now +RESET wal_sync_method; -- fail, requires reload +ERROR: parameter "wal_sync_method" cannot be changed now +ALTER SYSTEM SET wal_sync_method = 'open_datasync'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_sync_method" +ALTER SYSTEM RESET wal_sync_method; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_sync_method" +SET wal_writer_delay = 50; -- fail, requires reload +ERROR: parameter "wal_writer_delay" cannot be changed now +RESET wal_writer_delay; -- fail, requires reload +ERROR: parameter "wal_writer_delay" cannot be changed now +ALTER SYSTEM SET wal_writer_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_writer_delay" +ALTER SYSTEM RESET wal_writer_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_writer_delay" +SET wal_writer_flush_after = 50; -- fail, requires reload +ERROR: parameter "wal_writer_flush_after" cannot be changed now +RESET wal_writer_flush_after; -- fail, requires reload +ERROR: parameter "wal_writer_flush_after" cannot be changed now +ALTER SYSTEM SET wal_writer_flush_after = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_writer_flush_after" +ALTER SYSTEM RESET wal_writer_flush_after; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_writer_flush_after" +-- PGC_SUSET / GUC_ALL_PRIVILEGES / DEVELOPER_OPTIONS +SET allow_system_table_mods = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "allow_system_table_mods" +RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "allow_system_table_mods" +ALTER SYSTEM SET allow_system_table_mods = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "allow_system_table_mods" +ALTER SYSTEM RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "allow_system_table_mods" +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_OTHER +SET dynamic_library_path = '$libdir'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_library_path" +RESET dynamic_library_path; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_library_path" +ALTER SYSTEM SET dynamic_library_path = '$libdir'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_library_path" +ALTER SYSTEM RESET dynamic_library_path; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "dynamic_library_path" +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET session_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_preload_libraries" +RESET session_preload_libraries; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_preload_libraries" +ALTER SYSTEM SET session_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_preload_libraries" +ALTER SYSTEM RESET session_preload_libraries; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_preload_libraries" +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_dump_bitcode = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_dump_bitcode" +RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_dump_bitcode" +ALTER SYSTEM SET jit_dump_bitcode = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_dump_bitcode" +ALTER SYSTEM RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_dump_bitcode" +-- PGC_SUSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET lc_messages = 'en_US.UTF-8'; -- ok +RESET lc_messages; -- ok +ALTER SYSTEM SET lc_messages = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_messages; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET debug_invalidate_system_caches_always = 2; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "debug_invalidate_system_caches_always" +RESET debug_invalidate_system_caches_always; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "debug_invalidate_system_caches_always" +ALTER SYSTEM SET debug_invalidate_system_caches_always = 2; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "debug_invalidate_system_caches_always" +ALTER SYSTEM RESET debug_invalidate_system_caches_always; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "debug_invalidate_system_caches_always" +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / LOCK_MANAGEMENT +SET deadlock_timeout = 1073741824; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "deadlock_timeout" +RESET deadlock_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "deadlock_timeout" +ALTER SYSTEM SET deadlock_timeout = 1073741824; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "deadlock_timeout" +ALTER SYSTEM RESET deadlock_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "deadlock_timeout" +-- PGC_SUSET / GUC_LOGGING_SETTINGS / DEVELOPER_OPTIONS +SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backtrace_functions" +RESET backtrace_functions; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backtrace_functions" +ALTER SYSTEM SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backtrace_functions" +ALTER SYSTEM RESET backtrace_functions; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backtrace_functions" +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_duration = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_duration" +RESET log_duration; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_duration" +ALTER SYSTEM SET log_duration = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_duration" +ALTER SYSTEM RESET log_duration; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_duration" +SET log_error_verbosity = 'default'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_error_verbosity" +RESET log_error_verbosity; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_error_verbosity" +ALTER SYSTEM SET log_error_verbosity = 'default'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_error_verbosity" +ALTER SYSTEM RESET log_error_verbosity; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_error_verbosity" +SET log_lock_waits = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_lock_waits" +RESET log_lock_waits; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_lock_waits" +ALTER SYSTEM SET log_lock_waits = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_lock_waits" +ALTER SYSTEM RESET log_lock_waits; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_lock_waits" +SET log_parameter_max_length = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length" +RESET log_parameter_max_length; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length" +ALTER SYSTEM SET log_parameter_max_length = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length" +ALTER SYSTEM RESET log_parameter_max_length; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length" +SET log_replication_commands = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_replication_commands" +RESET log_replication_commands; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_replication_commands" +ALTER SYSTEM SET log_replication_commands = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_replication_commands" +ALTER SYSTEM RESET log_replication_commands; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_replication_commands" +SET log_statement = 'none'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement" +RESET log_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement" +ALTER SYSTEM SET log_statement = 'none'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement" +ALTER SYSTEM RESET log_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement" +SET log_temp_files = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_temp_files" +RESET log_temp_files; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_temp_files" +ALTER SYSTEM SET log_temp_files = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_temp_files" +ALTER SYSTEM RESET log_temp_files; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_temp_files" +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHEN +SET log_min_duration_sample = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_sample" +RESET log_min_duration_sample; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_sample" +ALTER SYSTEM SET log_min_duration_sample = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_sample" +ALTER SYSTEM RESET log_min_duration_sample; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_sample" +SET log_min_duration_statement = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_statement" +RESET log_min_duration_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_statement" +ALTER SYSTEM SET log_min_duration_statement = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_statement" +ALTER SYSTEM RESET log_min_duration_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_duration_statement" +SET log_min_error_statement = 'error'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_error_statement" +RESET log_min_error_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_error_statement" +ALTER SYSTEM SET log_min_error_statement = 'error'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_error_statement" +ALTER SYSTEM RESET log_min_error_statement; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_error_statement" +SET log_min_messages = 'warning'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_messages" +RESET log_min_messages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_messages" +ALTER SYSTEM SET log_min_messages = 'warning'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_messages" +ALTER SYSTEM RESET log_min_messages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_min_messages" +SET log_statement_sample_rate = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_sample_rate" +RESET log_statement_sample_rate; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_sample_rate" +ALTER SYSTEM SET log_statement_sample_rate = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_sample_rate" +ALTER SYSTEM RESET log_statement_sample_rate; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_sample_rate" +SET log_transaction_sample_rate = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_transaction_sample_rate" +RESET log_transaction_sample_rate; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_transaction_sample_rate" +ALTER SYSTEM SET log_transaction_sample_rate = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_transaction_sample_rate" +ALTER SYSTEM RESET log_transaction_sample_rate; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_transaction_sample_rate" +-- PGC_SUSET / GUC_LOGGING_SETTINGS / STATS_MONITORING +SET log_executor_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_executor_stats" +RESET log_executor_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_executor_stats" +ALTER SYSTEM SET log_executor_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_executor_stats" +ALTER SYSTEM RESET log_executor_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_executor_stats" +SET log_parser_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parser_stats" +RESET log_parser_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parser_stats" +ALTER SYSTEM SET log_parser_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parser_stats" +ALTER SYSTEM RESET log_parser_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parser_stats" +SET log_planner_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_planner_stats" +RESET log_planner_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_planner_stats" +ALTER SYSTEM SET log_planner_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_planner_stats" +ALTER SYSTEM RESET log_planner_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_planner_stats" +SET log_statement_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_stats" +RESET log_statement_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_stats" +ALTER SYSTEM SET log_statement_stats = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_stats" +ALTER SYSTEM RESET log_statement_stats; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_statement_stats" +-- PGC_SUSET / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / PROCESS_TITLE +SET update_process_title = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "update_process_title" +RESET update_process_title; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "update_process_title" +ALTER SYSTEM SET update_process_title = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "update_process_title" +ALTER SYSTEM RESET update_process_title; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "update_process_title" +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_DISK +SET temp_file_limit = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_file_limit" +RESET temp_file_limit; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_file_limit" +ALTER SYSTEM SET temp_file_limit = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_file_limit" +ALTER SYSTEM RESET temp_file_limit; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_file_limit" +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_stack_depth = 3890; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_stack_depth" +RESET max_stack_depth; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_stack_depth" +ALTER SYSTEM SET max_stack_depth = 3890; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_stack_depth" +ALTER SYSTEM RESET max_stack_depth; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "max_stack_depth" +-- PGC_SUSET / GUC_SECURITY_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lo_compat_privileges" +RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lo_compat_privileges" +ALTER SYSTEM SET lo_compat_privileges = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lo_compat_privileges" +ALTER SYSTEM RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lo_compat_privileges" +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_COLLECTOR +SET track_activities = ON; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = ON; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = ON; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = ON; -- ok +ALTER SYSTEM RESET track_counts; -- ok +SET track_functions = 'none'; -- ok +RESET track_functions; -- ok +ALTER SYSTEM SET track_functions = 'none'; -- ok +ALTER SYSTEM RESET track_functions; -- ok +SET track_io_timing = ON; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = ON; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = ON; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = ON; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_MONITORING +SET compute_query_id = ON; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = ON; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_checksum_failure = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_checksum_failure" +RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_checksum_failure" +ALTER SYSTEM SET ignore_checksum_failure = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_checksum_failure" +ALTER SYSTEM RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "ignore_checksum_failure" +SET zero_damaged_pages = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "zero_damaged_pages" +RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "zero_damaged_pages" +ALTER SYSTEM SET zero_damaged_pages = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "zero_damaged_pages" +ALTER SYSTEM RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "zero_damaged_pages" +-- PGC_SUSET / GUC_WAL_SETTINGS / CLIENT_CONN_STATEMENT +SET session_replication_role = 'origin'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_replication_role" +RESET session_replication_role; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_replication_role" +ALTER SYSTEM SET session_replication_role = 'origin'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_replication_role" +ALTER SYSTEM RESET session_replication_role; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "session_replication_role" +-- PGC_SUSET / GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_consistency_checking" +RESET wal_consistency_checking; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_consistency_checking" +ALTER SYSTEM SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_consistency_checking" +ALTER SYSTEM RESET wal_consistency_checking; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_consistency_checking" +-- PGC_SUSET / GUC_WAL_SETTINGS / WAL_SETTINGS +SET commit_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_delay" +RESET commit_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_delay" +ALTER SYSTEM SET commit_delay = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_delay" +ALTER SYSTEM RESET commit_delay; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_delay" +SET wal_compression = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_compression" +RESET wal_compression; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_compression" +ALTER SYSTEM SET wal_compression = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_compression" +ALTER SYSTEM RESET wal_compression; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_compression" +SET wal_init_zero = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_init_zero" +RESET wal_init_zero; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_init_zero" +ALTER SYSTEM SET wal_init_zero = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_init_zero" +ALTER SYSTEM RESET wal_init_zero; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_init_zero" +SET wal_recycle = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_recycle" +RESET wal_recycle; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_recycle" +ALTER SYSTEM SET wal_recycle = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_recycle" +ALTER SYSTEM RESET wal_recycle; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_recycle" +-- PGC_SU_BACKEND / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_profiling_support = ON; -- fail, cannot be set after connection start +ERROR: parameter "jit_profiling_support" cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ERROR: parameter "jit_profiling_support" cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_profiling_support" +ALTER SYSTEM RESET jit_profiling_support; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_profiling_support" +-- PGC_SU_BACKEND / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_debugging_support = ON; -- fail, cannot be set after connection start +ERROR: parameter "jit_debugging_support" cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ERROR: parameter "jit_debugging_support" cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_debugging_support" +ALTER SYSTEM RESET jit_debugging_support; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_debugging_support" +-- PGC_SU_BACKEND / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_connections = ON; -- fail, cannot be set after connection start +ERROR: parameter "log_connections" cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ERROR: parameter "log_connections" cannot be set after connection start +ALTER SYSTEM SET log_connections = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_connections" +ALTER SYSTEM RESET log_connections; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_connections" +SET log_disconnections = ON; -- fail, cannot be set after connection start +ERROR: parameter "log_disconnections" cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ERROR: parameter "log_disconnections" cannot be set after connection start +ALTER SYSTEM SET log_disconnections = ON; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_disconnections" +ALTER SYSTEM RESET log_disconnections; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_disconnections" +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET DateStyle = 'ISO, MDY'; -- ok +RESET DateStyle; -- ok +ALTER SYSTEM SET DateStyle = 'ISO, MDY'; -- ok +ALTER SYSTEM RESET DateStyle; -- ok +SET IntervalStyle = 'postgres'; -- ok +RESET IntervalStyle; -- ok +ALTER SYSTEM SET IntervalStyle = 'postgres'; -- ok +ALTER SYSTEM RESET IntervalStyle; -- ok +SET TimeZone = 'Europe/Helsinki'; -- ok +RESET TimeZone; -- ok +ALTER SYSTEM SET TimeZone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET TimeZone; -- ok +SET client_encoding = 'UTF8'; -- ok +RESET client_encoding; -- ok +ALTER SYSTEM SET client_encoding = 'UTF8'; -- ok +ALTER SYSTEM RESET client_encoding; -- ok +SET default_text_search_config = 'pg_catalog.english'; -- ok +RESET default_text_search_config; -- ok +ALTER SYSTEM SET default_text_search_config = 'pg_catalog.english'; -- ok +ALTER SYSTEM RESET default_text_search_config; -- ok +SET extra_float_digits = -6; -- ok +RESET extra_float_digits; -- ok +ALTER SYSTEM SET extra_float_digits = -6; -- ok +ALTER SYSTEM RESET extra_float_digits; -- ok +SET lc_monetary = 'en_US.UTF-8'; -- ok +RESET lc_monetary; -- ok +ALTER SYSTEM SET lc_monetary = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_monetary; -- ok +SET lc_numeric = 'en_US.UTF-8'; -- ok +RESET lc_numeric; -- ok +ALTER SYSTEM SET lc_numeric = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_numeric; -- ok +SET lc_time = 'en_US.UTF-8'; -- ok +RESET lc_time; -- ok +ALTER SYSTEM SET lc_time = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_time; -- ok +SET timezone_abbreviations = 'Default'; -- ok +RESET timezone_abbreviations; -- ok +ALTER SYSTEM SET timezone_abbreviations = 'Default'; -- ok +ALTER SYSTEM RESET timezone_abbreviations; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_OTHER +SET gin_fuzzy_search_limit = 50; -- ok +RESET gin_fuzzy_search_limit; -- ok +ALTER SYSTEM SET gin_fuzzy_search_limit = 50; -- ok +ALTER SYSTEM RESET gin_fuzzy_search_limit; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET local_preload_libraries; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_STATEMENT +SET bytea_output = 'hex'; -- ok +RESET bytea_output; -- ok +ALTER SYSTEM SET bytea_output = 'hex'; -- ok +ALTER SYSTEM RESET bytea_output; -- ok +SET check_function_bodies = ON; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = ON; -- ok +ALTER SYSTEM RESET check_function_bodies; -- ok +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- ok +ALTER SYSTEM RESET client_min_messages; -- ok +SET default_table_access_method = 'heap'; -- ok +RESET default_table_access_method; -- ok +ALTER SYSTEM SET default_table_access_method = 'heap'; -- ok +ALTER SYSTEM RESET default_table_access_method; -- ok +SET default_toast_compression = 'pglz'; -- ok +RESET default_toast_compression; -- ok +ALTER SYSTEM SET default_toast_compression = 'pglz'; -- ok +ALTER SYSTEM RESET default_toast_compression; -- ok +SET default_transaction_deferrable = ON; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = ON; -- ok +ALTER SYSTEM RESET default_transaction_deferrable; -- ok +SET default_transaction_isolation = 'read committed'; -- ok +RESET default_transaction_isolation; -- ok +ALTER SYSTEM SET default_transaction_isolation = 'read committed'; -- ok +ALTER SYSTEM RESET default_transaction_isolation; -- ok +SET default_transaction_read_only = ON; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = ON; -- ok +ALTER SYSTEM RESET default_transaction_read_only; -- ok +SET gin_pending_list_limit = 1073741855; -- ok +RESET gin_pending_list_limit; -- ok +ALTER SYSTEM SET gin_pending_list_limit = 1073741855; -- ok +ALTER SYSTEM RESET gin_pending_list_limit; -- ok +SET idle_in_transaction_session_timeout = 50; -- ok +RESET idle_in_transaction_session_timeout; -- ok +ALTER SYSTEM SET idle_in_transaction_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_in_transaction_session_timeout; -- ok +SET idle_session_timeout = 50; -- ok +RESET idle_session_timeout; -- ok +ALTER SYSTEM SET idle_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_session_timeout; -- ok +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET row_security = ON; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = ON; -- ok +ALTER SYSTEM RESET row_security; -- ok +SET search_path = '"$user", public'; -- ok +RESET search_path; -- ok +ALTER SYSTEM SET search_path = '"$user", public'; -- ok +ALTER SYSTEM RESET search_path; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +SET transaction_deferrable = ON; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = ON; -- fail, cannot be changed +ERROR: parameter "transaction_deferrable" cannot be changed +ALTER SYSTEM RESET transaction_deferrable; -- fail, cannot be changed +ERROR: parameter "transaction_deferrable" cannot be changed +SET transaction_isolation = 'read committed'; -- ok +RESET transaction_isolation; -- ok +WARNING: RESET TRANSACTION can only be used in transaction blocks +ALTER SYSTEM SET transaction_isolation = 'read committed'; -- fail, cannot be changed +ERROR: parameter "transaction_isolation" cannot be changed +ALTER SYSTEM RESET transaction_isolation; -- fail, cannot be changed +ERROR: parameter "transaction_isolation" cannot be changed +SET transaction_read_only = ON; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = ON; -- fail, cannot be changed +ERROR: parameter "transaction_read_only" cannot be changed +ALTER SYSTEM RESET transaction_read_only; -- fail, cannot be changed +ERROR: parameter "transaction_read_only" cannot be changed +SET vacuum_failsafe_age = 50; -- ok +RESET vacuum_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_failsafe_age; -- ok +SET vacuum_freeze_min_age = 50; -- ok +RESET vacuum_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_min_age; -- ok +SET vacuum_freeze_table_age = 50; -- ok +RESET vacuum_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_table_age; -- ok +SET vacuum_multixact_failsafe_age = 50; -- ok +RESET vacuum_multixact_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_multixact_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_failsafe_age; -- ok +SET vacuum_multixact_freeze_min_age = 50; -- ok +RESET vacuum_multixact_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_min_age; -- ok +SET vacuum_multixact_freeze_table_age = 50; -- ok +RESET vacuum_multixact_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_table_age; -- ok +SET xmlbinary = 'base64'; -- ok +RESET xmlbinary; -- ok +ALTER SYSTEM SET xmlbinary = 'base64'; -- ok +ALTER SYSTEM RESET xmlbinary; -- ok +SET xmloption = 'content'; -- ok +RESET xmloption; -- ok +ALTER SYSTEM SET xmloption = 'content'; -- ok +ALTER SYSTEM RESET xmloption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = ON; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = ON; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = ON; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = ON; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = ON; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = ON; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = ON; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = ON; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = ON; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = ON; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- ok +ALTER SYSTEM RESET password_encryption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- ok +ALTER SYSTEM RESET client_connection_check_interval; -- ok +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_count; -- ok +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_idle; -- ok +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_interval; -- ok +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- ok +ALTER SYSTEM RESET tcp_user_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SSL +SET ssl_renegotiation_limit = 0; -- ok +RESET ssl_renegotiation_limit; -- ok +ALTER SYSTEM SET ssl_renegotiation_limit = 0; -- fail, cannot be changed +ERROR: parameter "ssl_renegotiation_limit" cannot be changed +ALTER SYSTEM RESET ssl_renegotiation_limit; -- fail, cannot be changed +ERROR: parameter "ssl_renegotiation_limit" cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET force_parallel_mode = 'off'; -- ok +RESET force_parallel_mode; -- ok +ALTER SYSTEM SET force_parallel_mode = 'off'; -- ok +ALTER SYSTEM RESET force_parallel_mode; -- ok +SET jit_expressions = ON; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = ON; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +SET jit_tuple_deforming = ON; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = ON; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = ON; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = ON; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = ON; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = ON; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET exit_on_error = ON; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = ON; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- ok +ALTER SYSTEM RESET application_name; -- ok +SET debug_pretty_print = ON; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = ON; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = ON; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = ON; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = ON; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = ON; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = ON; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = ON; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +SET log_parameter_max_length_on_error = 50; -- ok +RESET log_parameter_max_length_on_error; -- ok +ALTER SYSTEM SET log_parameter_max_length_on_error = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_COST +SET cpu_index_tuple_cost = 50; -- ok +RESET cpu_index_tuple_cost; -- ok +ALTER SYSTEM SET cpu_index_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_index_tuple_cost; -- ok +SET cpu_operator_cost = 50; -- ok +RESET cpu_operator_cost; -- ok +ALTER SYSTEM SET cpu_operator_cost = 50; -- ok +ALTER SYSTEM RESET cpu_operator_cost; -- ok +SET cpu_tuple_cost = 50; -- ok +RESET cpu_tuple_cost; -- ok +ALTER SYSTEM SET cpu_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_tuple_cost; -- ok +SET effective_cache_size = 1073741824; -- ok +RESET effective_cache_size; -- ok +ALTER SYSTEM SET effective_cache_size = 1073741824; -- ok +ALTER SYSTEM RESET effective_cache_size; -- ok +SET jit_above_cost = 50; -- ok +RESET jit_above_cost; -- ok +ALTER SYSTEM SET jit_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_above_cost; -- ok +SET jit_inline_above_cost = 50; -- ok +RESET jit_inline_above_cost; -- ok +ALTER SYSTEM SET jit_inline_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_inline_above_cost; -- ok +SET jit_optimize_above_cost = 50; -- ok +RESET jit_optimize_above_cost; -- ok +ALTER SYSTEM SET jit_optimize_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_optimize_above_cost; -- ok +SET min_parallel_index_scan_size = 50; -- ok +RESET min_parallel_index_scan_size; -- ok +ALTER SYSTEM SET min_parallel_index_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_index_scan_size; -- ok +SET min_parallel_table_scan_size = 50; -- ok +RESET min_parallel_table_scan_size; -- ok +ALTER SYSTEM SET min_parallel_table_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_table_scan_size; -- ok +SET parallel_setup_cost = 50; -- ok +RESET parallel_setup_cost; -- ok +ALTER SYSTEM SET parallel_setup_cost = 50; -- ok +ALTER SYSTEM RESET parallel_setup_cost; -- ok +SET parallel_tuple_cost = 50; -- ok +RESET parallel_tuple_cost; -- ok +ALTER SYSTEM SET parallel_tuple_cost = 50; -- ok +ALTER SYSTEM RESET parallel_tuple_cost; -- ok +SET random_page_cost = 50; -- ok +RESET random_page_cost; -- ok +ALTER SYSTEM SET random_page_cost = 50; -- ok +ALTER SYSTEM RESET random_page_cost; -- ok +SET seq_page_cost = 50; -- ok +RESET seq_page_cost; -- ok +ALTER SYSTEM SET seq_page_cost = 50; -- ok +ALTER SYSTEM RESET seq_page_cost; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_GEQO +SET geqo = ON; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = ON; -- ok +ALTER SYSTEM RESET geqo; -- ok +SET geqo_effort = 5; -- ok +RESET geqo_effort; -- ok +ALTER SYSTEM SET geqo_effort = 5; -- ok +ALTER SYSTEM RESET geqo_effort; -- ok +SET geqo_generations = 50; -- ok +RESET geqo_generations; -- ok +ALTER SYSTEM SET geqo_generations = 50; -- ok +ALTER SYSTEM RESET geqo_generations; -- ok +SET geqo_pool_size = 50; -- ok +RESET geqo_pool_size; -- ok +ALTER SYSTEM SET geqo_pool_size = 50; -- ok +ALTER SYSTEM RESET geqo_pool_size; -- ok +SET geqo_seed = 0; -- ok +RESET geqo_seed; -- ok +ALTER SYSTEM SET geqo_seed = 0; -- ok +ALTER SYSTEM RESET geqo_seed; -- ok +SET geqo_selection_bias = 2; -- ok +RESET geqo_selection_bias; -- ok +ALTER SYSTEM SET geqo_selection_bias = 2; -- ok +ALTER SYSTEM RESET geqo_selection_bias; -- ok +SET geqo_threshold = 1073741824; -- ok +RESET geqo_threshold; -- ok +ALTER SYSTEM SET geqo_threshold = 1073741824; -- ok +ALTER SYSTEM RESET geqo_threshold; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_METHOD +SET enable_async_append = ON; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = ON; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = ON; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = ON; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = ON; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = ON; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = ON; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = ON; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = ON; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = ON; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = ON; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = ON; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = ON; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = ON; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = ON; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = ON; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = ON; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = ON; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = ON; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = ON; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = ON; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = ON; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = ON; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = ON; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = ON; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = ON; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = ON; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = ON; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = ON; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = ON; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = ON; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = ON; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = ON; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = ON; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = ON; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = ON; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = ON; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = ON; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_OTHER +SET constraint_exclusion = 'partition'; -- ok +RESET constraint_exclusion; -- ok +ALTER SYSTEM SET constraint_exclusion = 'partition'; -- ok +ALTER SYSTEM RESET constraint_exclusion; -- ok +SET cursor_tuple_fraction = 0; -- ok +RESET cursor_tuple_fraction; -- ok +ALTER SYSTEM SET cursor_tuple_fraction = 0; -- ok +ALTER SYSTEM RESET cursor_tuple_fraction; -- ok +SET default_statistics_target = 5000; -- ok +RESET default_statistics_target; -- ok +ALTER SYSTEM SET default_statistics_target = 5000; -- ok +ALTER SYSTEM RESET default_statistics_target; -- ok +SET from_collapse_limit = 1073741824; -- ok +RESET from_collapse_limit; -- ok +ALTER SYSTEM SET from_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET from_collapse_limit; -- ok +SET jit = ON; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = ON; -- ok +ALTER SYSTEM RESET jit; -- ok +SET join_collapse_limit = 1073741824; -- ok +RESET join_collapse_limit; -- ok +ALTER SYSTEM SET join_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET join_collapse_limit; -- ok +SET plan_cache_mode = 'force_generic_plan'; -- ok +RESET plan_cache_mode; -- ok +ALTER SYSTEM SET plan_cache_mode = 'force_generic_plan'; -- ok +ALTER SYSTEM RESET plan_cache_mode; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- ok +ALTER SYSTEM RESET wal_sender_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- ok +ALTER SYSTEM RESET backend_flush_after; -- ok +SET max_parallel_maintenance_workers = 50; -- ok +RESET max_parallel_maintenance_workers; -- ok +ALTER SYSTEM SET max_parallel_maintenance_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_maintenance_workers; -- ok +SET max_parallel_workers = 50; -- ok +RESET max_parallel_workers; -- ok +ALTER SYSTEM SET max_parallel_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers; -- ok +SET max_parallel_workers_per_gather = 50; -- ok +RESET max_parallel_workers_per_gather; -- ok +ALTER SYSTEM SET max_parallel_workers_per_gather = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers_per_gather; -- ok +SET parallel_leader_participation = ON; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = ON; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_MEM +SET hash_mem_multiplier = 500; -- ok +RESET hash_mem_multiplier; -- ok +ALTER SYSTEM SET hash_mem_multiplier = 500; -- ok +ALTER SYSTEM RESET hash_mem_multiplier; -- ok +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- ok +ALTER SYSTEM RESET logical_decoding_work_mem; -- ok +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- ok +ALTER SYSTEM RESET maintenance_work_mem; -- ok +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- ok +ALTER SYSTEM RESET temp_buffers; -- ok +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- ok +ALTER SYSTEM RESET work_mem; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_VACUUM_DELAY +SET vacuum_cost_delay = 50; -- ok +RESET vacuum_cost_delay; -- ok +ALTER SYSTEM SET vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_delay; -- ok +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- ok +ALTER SYSTEM RESET vacuum_cost_limit; -- ok +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- ok +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_hit; -- ok +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_miss; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / UNGROUPED +SET seed = 0; -- ok +RESET seed; -- ok +ALTER SYSTEM SET seed = 0; -- fail, cannot be changed +ERROR: parameter "seed" cannot be changed +ALTER SYSTEM RESET seed; -- fail, cannot be changed +ERROR: parameter "seed" cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- ok +ALTER SYSTEM RESET commit_siblings; -- ok +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- ok +ALTER SYSTEM RESET wal_skip_threshold; -- ok +-- PGC_USERSET / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET effective_io_concurrency = 0; -- ok +RESET effective_io_concurrency; -- ok +ALTER SYSTEM SET effective_io_concurrency = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "effective_io_concurrency" +ALTER SYSTEM RESET effective_io_concurrency; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "effective_io_concurrency" +SET maintenance_io_concurrency = 0; -- ok +RESET maintenance_io_concurrency; -- ok +ALTER SYSTEM SET maintenance_io_concurrency = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "maintenance_io_concurrency" +ALTER SYSTEM RESET maintenance_io_concurrency; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "maintenance_io_concurrency" +RESET statement_timeout; +RESET SESSION AUTHORIZATION; +DROP ROLE tenant; diff --git a/src/test/regress/parallel_schedule b/src/test/regress/parallel_schedule index 22b0d3584d..be21d96ff6 100644 --- a/src/test/regress/parallel_schedule +++ b/src/test/regress/parallel_schedule @@ -86,7 +86,7 @@ test: brin_bloom brin_multi # ---------- # Another group of parallel tests # ---------- -test: create_table_like alter_generic alter_operator misc async dbsize misc_functions sysviews tsrf tid tidscan tidrangescan collate.icu.utf8 incremental_sort +test: create_table_like alter_generic alter_operator misc async dbsize misc_functions sysviews tsrf tid tidscan tidrangescan collate.icu.utf8 incremental_sort guc_priv_tenant guc_priv_admin # rules cannot run concurrently with any test that creates # a view or rule in the public schema diff --git a/src/test/regress/sql/guc_priv_admin.sql b/src/test/regress/sql/guc_priv_admin.sql new file mode 100644 index 0000000000..078adadffb --- /dev/null +++ b/src/test/regress/sql/guc_priv_admin.sql @@ -0,0 +1,1470 @@ + +-- Role with all GUC permissions +CREATE ROLE admin; +GRANT pg_internal_settings TO admin; +GRANT pg_stats_settings TO admin; +GRANT pg_maintenance_settings TO admin; +GRANT pg_storage_settings TO admin; +GRANT pg_wal_settings TO admin; +GRANT pg_logging_settings TO admin; +GRANT pg_interface_settings TO admin; +GRANT pg_resource_usage TO admin; +GRANT pg_filesystem_security TO admin; +GRANT pg_exec_command TO admin; +GRANT pg_server_configuration TO admin; +GRANT pg_security_settings TO admin; +-- Perform all operations as user 'admin' -- +SET SESSION AUTHORIZATION admin; +-- PGC_BACKEND / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET post_auth_delay = 50; -- fail, cannot be set after connection start +RESET post_auth_delay; -- fail, cannot be set after connection start +ALTER SYSTEM SET post_auth_delay = 50; -- ok +ALTER SYSTEM RESET post_auth_delay; -- ok +-- PGC_BACKEND / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET ignore_system_indexes = ON; -- fail, cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = ON; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / PRESET_OPTIONS +SET block_size = 50; -- fail, cannot be changed +RESET block_size; -- fail, cannot be changed +ALTER SYSTEM SET block_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET block_size; -- fail, cannot be changed +SET data_checksums = ON; -- fail, cannot be changed +RESET data_checksums; -- fail, cannot be changed +ALTER SYSTEM SET data_checksums = ON; -- fail, cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +SET data_directory_mode = 50; -- fail, cannot be changed +RESET data_directory_mode; -- fail, cannot be changed +ALTER SYSTEM SET data_directory_mode = 50; -- fail, cannot be changed +ALTER SYSTEM RESET data_directory_mode; -- fail, cannot be changed +SET debug_assertions = ON; -- fail, cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ALTER SYSTEM SET debug_assertions = ON; -- fail, cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +SET in_hot_standby = ON; -- fail, cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ALTER SYSTEM SET in_hot_standby = ON; -- fail, cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +SET integer_datetimes = ON; -- fail, cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ALTER SYSTEM SET integer_datetimes = ON; -- fail, cannot be changed +ALTER SYSTEM RESET integer_datetimes; -- fail, cannot be changed +SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +RESET lc_collate; -- fail, cannot be changed +ALTER SYSTEM SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ALTER SYSTEM RESET lc_collate; -- fail, cannot be changed +SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +RESET lc_ctype; -- fail, cannot be changed +ALTER SYSTEM SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ALTER SYSTEM RESET lc_ctype; -- fail, cannot be changed +SET max_function_args = 50; -- fail, cannot be changed +RESET max_function_args; -- fail, cannot be changed +ALTER SYSTEM SET max_function_args = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_function_args; -- fail, cannot be changed +SET max_identifier_length = 50; -- fail, cannot be changed +RESET max_identifier_length; -- fail, cannot be changed +ALTER SYSTEM SET max_identifier_length = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_identifier_length; -- fail, cannot be changed +SET max_index_keys = 50; -- fail, cannot be changed +RESET max_index_keys; -- fail, cannot be changed +ALTER SYSTEM SET max_index_keys = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_index_keys; -- fail, cannot be changed +SET segment_size = 50; -- fail, cannot be changed +RESET segment_size; -- fail, cannot be changed +ALTER SYSTEM SET segment_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET segment_size; -- fail, cannot be changed +SET server_encoding = 'UTF8'; -- fail, cannot be changed +RESET server_encoding; -- fail, cannot be changed +ALTER SYSTEM SET server_encoding = 'UTF8'; -- fail, cannot be changed +ALTER SYSTEM RESET server_encoding; -- fail, cannot be changed +SET server_version = '9.1'; -- fail, cannot be changed +RESET server_version; -- fail, cannot be changed +ALTER SYSTEM SET server_version = '9.1'; -- fail, cannot be changed +ALTER SYSTEM RESET server_version; -- fail, cannot be changed +SET server_version_num = 50; -- fail, cannot be changed +RESET server_version_num; -- fail, cannot be changed +ALTER SYSTEM SET server_version_num = 50; -- fail, cannot be changed +ALTER SYSTEM RESET server_version_num; -- fail, cannot be changed +SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +RESET ssl_library; -- fail, cannot be changed +ALTER SYSTEM SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ALTER SYSTEM RESET ssl_library; -- fail, cannot be changed +SET wal_block_size = 50; -- fail, cannot be changed +RESET wal_block_size; -- fail, cannot be changed +ALTER SYSTEM SET wal_block_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET wal_block_size; -- fail, cannot be changed +SET wal_segment_size = 50; -- fail, cannot be changed +RESET wal_segment_size; -- fail, cannot be changed +ALTER SYSTEM SET wal_segment_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET wal_segment_size; -- fail, cannot be changed +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / UNGROUPED +SET is_superuser = ON; -- fail, cannot be changed +RESET is_superuser; -- fail, cannot be changed +ALTER SYSTEM SET is_superuser = ON; -- fail, cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET shared_preload_libraries = 'iconv, pcre'; -- fail, requires restart +RESET shared_preload_libraries; -- fail, requires restart +ALTER SYSTEM SET shared_preload_libraries = 'iconv, pcre'; -- ok +ALTER SYSTEM RESET shared_preload_libraries; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / FILE_LOCATIONS +SET config_file = '/usr/local/data/postgresql.conf'; -- fail, requires restart +RESET config_file; -- fail, requires restart +ALTER SYSTEM SET config_file = '/usr/local/data/postgresql.conf'; -- fail, cannot be changed +ALTER SYSTEM RESET config_file; -- fail, cannot be changed +SET data_directory = '/usr/local/data'; -- fail, requires restart +RESET data_directory; -- fail, requires restart +ALTER SYSTEM SET data_directory = '/usr/local/data'; -- fail, cannot be changed +ALTER SYSTEM RESET data_directory; -- fail, cannot be changed +SET external_pid_file = '/var/postgres/master.pid'; -- fail, requires restart +RESET external_pid_file; -- fail, requires restart +ALTER SYSTEM SET external_pid_file = '/var/postgres/master.pid'; -- ok +ALTER SYSTEM RESET external_pid_file; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET unix_socket_directories = '/tmp'; -- fail, requires restart +RESET unix_socket_directories; -- fail, requires restart +ALTER SYSTEM SET unix_socket_directories = '/tmp'; -- ok +ALTER SYSTEM RESET unix_socket_directories; -- ok +SET unix_socket_group = 'tenant'; -- fail, requires restart +RESET unix_socket_group; -- fail, requires restart +ALTER SYSTEM SET unix_socket_group = 'tenant'; -- ok +ALTER SYSTEM RESET unix_socket_group; -- ok +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET logging_collector = ON; -- fail, requires restart +RESET logging_collector; -- fail, requires restart +ALTER SYSTEM SET logging_collector = ON; -- ok +ALTER SYSTEM RESET logging_collector; -- ok +-- PGC_POSTMASTER / GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET bonjour = ON; -- fail, requires restart +RESET bonjour; -- fail, requires restart +ALTER SYSTEM SET bonjour = ON; -- ok +ALTER SYSTEM RESET bonjour; -- ok +SET bonjour_name = 'BonneNuit'; -- fail, requires restart +RESET bonjour_name; -- fail, requires restart +ALTER SYSTEM SET bonjour_name = 'BonneNuit'; -- ok +ALTER SYSTEM RESET bonjour_name; -- ok +SET listen_addresses = 'localhost'; -- fail, requires restart +RESET listen_addresses; -- fail, requires restart +ALTER SYSTEM SET listen_addresses = 'localhost'; -- ok +ALTER SYSTEM RESET listen_addresses; -- ok +SET max_connections = 50; -- fail, requires restart +RESET max_connections; -- fail, requires restart +ALTER SYSTEM SET max_connections = 50; -- ok +ALTER SYSTEM RESET max_connections; -- ok +SET port = 50; -- fail, requires restart +RESET port; -- fail, requires restart +ALTER SYSTEM SET port = 50; -- ok +ALTER SYSTEM RESET port; -- ok +SET superuser_reserved_connections = 50; -- fail, requires restart +RESET superuser_reserved_connections; -- fail, requires restart +ALTER SYSTEM SET superuser_reserved_connections = 50; -- ok +ALTER SYSTEM RESET superuser_reserved_connections; -- ok +SET unix_socket_permissions = 50; -- fail, requires restart +RESET unix_socket_permissions; -- fail, requires restart +ALTER SYSTEM SET unix_socket_permissions = 50; -- ok +ALTER SYSTEM RESET unix_socket_permissions; -- ok +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET huge_pages = 'try'; -- fail, requires restart +RESET huge_pages; -- fail, requires restart +ALTER SYSTEM SET huge_pages = 'try'; -- ok +ALTER SYSTEM RESET huge_pages; -- ok +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / CLIENT_CONN_PRELOAD +SET jit_provider = 'llvmjit'; -- fail, requires restart +RESET jit_provider; -- fail, requires restart +ALTER SYSTEM SET jit_provider = 'llvmjit'; -- ok +ALTER SYSTEM RESET jit_provider; -- ok +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS / PROCESS_TITLE +SET cluster_name = 'BonCluster'; -- fail, requires restart +RESET cluster_name; -- fail, requires restart +ALTER SYSTEM SET cluster_name = 'BonCluster'; -- ok +ALTER SYSTEM RESET cluster_name; -- ok +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET event_source = 'PostgreSQL'; -- fail, requires restart +RESET event_source; -- fail, requires restart +ALTER SYSTEM SET event_source = 'PostgreSQL'; -- ok +ALTER SYSTEM RESET event_source; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_freeze_max_age = 1000050000; -- fail, requires restart +RESET autovacuum_freeze_max_age; -- fail, requires restart +ALTER SYSTEM SET autovacuum_freeze_max_age = 1000050000; -- ok +ALTER SYSTEM RESET autovacuum_freeze_max_age; -- ok +SET autovacuum_multixact_freeze_max_age = 1000005000; -- fail, requires restart +RESET autovacuum_multixact_freeze_max_age; -- fail, requires restart +ALTER SYSTEM SET autovacuum_multixact_freeze_max_age = 1000005000; -- ok +ALTER SYSTEM RESET autovacuum_multixact_freeze_max_age; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum_max_workers = 50; -- fail, requires restart +RESET autovacuum_max_workers; -- fail, requires restart +ALTER SYSTEM SET autovacuum_max_workers = 50; -- ok +ALTER SYSTEM RESET autovacuum_max_workers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_locks_per_transaction = 50; -- fail, requires restart +RESET max_locks_per_transaction; -- fail, requires restart +ALTER SYSTEM SET max_locks_per_transaction = 50; -- ok +ALTER SYSTEM RESET max_locks_per_transaction; -- ok +SET max_pred_locks_per_transaction = 50; -- fail, requires restart +RESET max_pred_locks_per_transaction; -- fail, requires restart +ALTER SYSTEM SET max_pred_locks_per_transaction = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_transaction; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_logical_replication_workers = 50; -- fail, requires restart +RESET max_logical_replication_workers; -- fail, requires restart +ALTER SYSTEM SET max_logical_replication_workers = 50; -- ok +ALTER SYSTEM RESET max_logical_replication_workers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET max_worker_processes = 50; -- fail, requires restart +RESET max_worker_processes; -- fail, requires restart +ALTER SYSTEM SET max_worker_processes = 50; -- ok +ALTER SYSTEM RESET max_worker_processes; -- ok +SET old_snapshot_threshold = 50; -- fail, requires restart +RESET old_snapshot_threshold; -- fail, requires restart +ALTER SYSTEM SET old_snapshot_threshold = 50; -- ok +ALTER SYSTEM RESET old_snapshot_threshold; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_KERNEL +SET max_files_per_process = 1073741855; -- fail, requires restart +RESET max_files_per_process; -- fail, requires restart +ALTER SYSTEM SET max_files_per_process = 1073741855; -- ok +ALTER SYSTEM RESET max_files_per_process; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_prepared_transactions = 50; -- fail, requires restart +RESET max_prepared_transactions; -- fail, requires restart +ALTER SYSTEM SET max_prepared_transactions = 50; -- ok +ALTER SYSTEM RESET max_prepared_transactions; -- ok +SET min_dynamic_shared_memory = 50; -- fail, requires restart +RESET min_dynamic_shared_memory; -- fail, requires restart +ALTER SYSTEM SET min_dynamic_shared_memory = 50; -- ok +ALTER SYSTEM RESET min_dynamic_shared_memory; -- ok +SET shared_buffers = 50; -- fail, requires restart +RESET shared_buffers; -- fail, requires restart +ALTER SYSTEM SET shared_buffers = 50; -- ok +ALTER SYSTEM RESET shared_buffers; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / STATS_COLLECTOR +SET track_activity_query_size = 524338; -- fail, requires restart +RESET track_activity_query_size; -- fail, requires restart +ALTER SYSTEM SET track_activity_query_size = 524338; -- ok +ALTER SYSTEM RESET track_activity_query_size; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_replication_slots = 50; -- fail, requires restart +RESET max_replication_slots; -- fail, requires restart +ALTER SYSTEM SET max_replication_slots = 50; -- ok +ALTER SYSTEM RESET max_replication_slots; -- ok +SET max_wal_senders = 50; -- fail, requires restart +RESET max_wal_senders; -- fail, requires restart +ALTER SYSTEM SET max_wal_senders = 50; -- ok +ALTER SYSTEM RESET max_wal_senders; -- ok +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_buffers = 50; -- fail, requires restart +RESET wal_buffers; -- fail, requires restart +ALTER SYSTEM SET wal_buffers = 50; -- ok +ALTER SYSTEM RESET wal_buffers; -- ok +-- PGC_POSTMASTER / GUC_SERVER_CONFIGURATION / RESOURCES_MEM +SET dynamic_shared_memory_type = 'posix'; -- fail, requires restart +RESET dynamic_shared_memory_type; -- fail, requires restart +ALTER SYSTEM SET dynamic_shared_memory_type = 'posix'; -- ok +ALTER SYSTEM RESET dynamic_shared_memory_type; -- ok +SET shared_memory_type = 'mmap'; -- fail, requires restart +RESET shared_memory_type; -- fail, requires restart +ALTER SYSTEM SET shared_memory_type = 'mmap'; -- ok +ALTER SYSTEM RESET shared_memory_type; -- ok +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_invalid_pages = ON; -- fail, requires restart +RESET ignore_invalid_pages; -- fail, requires restart +ALTER SYSTEM SET ignore_invalid_pages = ON; -- ok +ALTER SYSTEM RESET ignore_invalid_pages; -- ok +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / ERROR_HANDLING_OPTIONS +SET data_sync_retry = ON; -- fail, requires restart +RESET data_sync_retry; -- fail, requires restart +ALTER SYSTEM SET data_sync_retry = ON; -- ok +ALTER SYSTEM RESET data_sync_retry; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET recovery_init_sync_method = 'fsync'; -- fail, requires restart +RESET recovery_init_sync_method; -- fail, requires restart +ALTER SYSTEM SET recovery_init_sync_method = 'fsync'; -- ok +ALTER SYSTEM RESET recovery_init_sync_method; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET track_commit_timestamp = ON; -- fail, requires restart +RESET track_commit_timestamp; -- fail, requires restart +ALTER SYSTEM SET track_commit_timestamp = ON; -- ok +ALTER SYSTEM RESET track_commit_timestamp; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby = ON; -- fail, requires restart +RESET hot_standby; -- fail, requires restart +ALTER SYSTEM SET hot_standby = ON; -- ok +ALTER SYSTEM RESET hot_standby; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_mode = 'off'; -- fail, requires restart +RESET archive_mode; -- fail, requires restart +ALTER SYSTEM SET archive_mode = 'off'; -- ok +ALTER SYSTEM RESET archive_mode; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_RECOVERY_TARGET +SET recovery_target_action = 'pause'; -- fail, requires restart +RESET recovery_target_action; -- fail, requires restart +ALTER SYSTEM SET recovery_target_action = 'pause'; -- ok +ALTER SYSTEM RESET recovery_target_action; -- ok +SET recovery_target_inclusive = ON; -- fail, requires restart +RESET recovery_target_inclusive; -- fail, requires restart +ALTER SYSTEM SET recovery_target_inclusive = ON; -- ok +ALTER SYSTEM RESET recovery_target_inclusive; -- ok +SET recovery_target_lsn = '16/B374D848'; -- fail, requires restart +RESET recovery_target_lsn; -- fail, requires restart +ALTER SYSTEM SET recovery_target_lsn = '16/B374D848'; -- ok +ALTER SYSTEM RESET recovery_target_lsn; -- ok +SET recovery_target_name = 'BonPoint'; -- fail, requires restart +RESET recovery_target_name; -- fail, requires restart +ALTER SYSTEM SET recovery_target_name = 'BonPoint'; -- ok +ALTER SYSTEM RESET recovery_target_name; -- ok +SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, requires restart +RESET recovery_target_time; -- fail, requires restart +ALTER SYSTEM SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- ok +ALTER SYSTEM RESET recovery_target_time; -- ok +SET recovery_target_timeline = 'latest'; -- fail, requires restart +RESET recovery_target_timeline; -- fail, requires restart +ALTER SYSTEM SET recovery_target_timeline = 'latest'; -- ok +ALTER SYSTEM RESET recovery_target_timeline; -- ok +SET recovery_target_xid = '12345678'; -- fail, requires restart +RESET recovery_target_xid; -- fail, requires restart +ALTER SYSTEM SET recovery_target_xid = '12345678'; -- ok +ALTER SYSTEM RESET recovery_target_xid; -- ok +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_level = 'replica'; -- fail, requires restart +RESET wal_level; -- fail, requires restart +ALTER SYSTEM SET wal_level = 'replica'; -- ok +ALTER SYSTEM RESET wal_level; -- ok +SET wal_log_hints = ON; -- fail, requires restart +RESET wal_log_hints; -- fail, requires restart +ALTER SYSTEM SET wal_log_hints = ON; -- ok +ALTER SYSTEM RESET wal_log_hints; -- ok +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVE_RECOVERY +SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, requires reload +RESET archive_cleanup_command; -- fail, requires reload +ALTER SYSTEM SET archive_cleanup_command = '/bin/cleanup my stuff'; -- ok +ALTER SYSTEM RESET archive_cleanup_command; -- ok +SET recovery_end_command = '/bin/recover my stuff'; -- fail, requires reload +RESET recovery_end_command; -- fail, requires reload +ALTER SYSTEM SET recovery_end_command = '/bin/recover my stuff'; -- ok +ALTER SYSTEM RESET recovery_end_command; -- ok +SET restore_command = '/bin/restore my stuff'; -- fail, requires reload +RESET restore_command; -- fail, requires reload +ALTER SYSTEM SET restore_command = '/bin/restore my stuff'; -- ok +ALTER SYSTEM RESET restore_command; -- ok +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVING +SET archive_command = '/bin/archive my stuff'; -- fail, requires reload +RESET archive_command; -- fail, requires reload +ALTER SYSTEM SET archive_command = '/bin/archive my stuff'; -- ok +ALTER SYSTEM RESET archive_command; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / CONN_AUTH_SSL +SET ssl_ca_file = 'ca/server.ca'; -- fail, requires reload +RESET ssl_ca_file; -- fail, requires reload +ALTER SYSTEM SET ssl_ca_file = 'ca/server.ca'; -- ok +ALTER SYSTEM RESET ssl_ca_file; -- ok +SET ssl_cert_file = 'crt/server.crt'; -- fail, requires reload +RESET ssl_cert_file; -- fail, requires reload +ALTER SYSTEM SET ssl_cert_file = 'crt/server.crt'; -- ok +ALTER SYSTEM RESET ssl_cert_file; -- ok +SET ssl_crl_file = 'crl/server.crl'; -- fail, requires reload +RESET ssl_crl_file; -- fail, requires reload +ALTER SYSTEM SET ssl_crl_file = 'crl/server.crl'; -- ok +ALTER SYSTEM RESET ssl_crl_file; -- ok +SET ssl_key_file = 'crl/server.key'; -- fail, requires reload +RESET ssl_key_file; -- fail, requires reload +ALTER SYSTEM SET ssl_key_file = 'crl/server.key'; -- ok +ALTER SYSTEM RESET ssl_key_file; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / STATS_COLLECTOR +SET stats_temp_directory = 'pg_stat_tmp'; -- fail, requires reload +RESET stats_temp_directory; -- fail, requires reload +ALTER SYSTEM SET stats_temp_directory = 'pg_stat_tmp'; -- ok +ALTER SYSTEM RESET stats_temp_directory; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET krb_server_keyfile = 'krb/server.key'; -- fail, requires reload +RESET krb_server_keyfile; -- fail, requires reload +ALTER SYSTEM SET krb_server_keyfile = 'krb/server.key'; -- ok +ALTER SYSTEM RESET krb_server_keyfile; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS / LOGGING_WHERE +SET log_file_mode = 50; -- fail, requires reload +RESET log_file_mode; -- fail, requires reload +ALTER SYSTEM SET log_file_mode = 50; -- ok +ALTER SYSTEM RESET log_file_mode; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_rotation_age = 50; -- fail, requires reload +RESET log_rotation_age; -- fail, requires reload +ALTER SYSTEM SET log_rotation_age = 50; -- ok +ALTER SYSTEM RESET log_rotation_age; -- ok +SET log_rotation_size = 50; -- fail, requires reload +RESET log_rotation_size; -- fail, requires reload +ALTER SYSTEM SET log_rotation_size = 50; -- ok +ALTER SYSTEM RESET log_rotation_size; -- ok +SET log_truncate_on_rotation = ON; -- fail, requires reload +RESET log_truncate_on_rotation; -- fail, requires reload +ALTER SYSTEM SET log_truncate_on_rotation = ON; -- ok +ALTER SYSTEM RESET log_truncate_on_rotation; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / CONN_AUTH_SSL +SET ssl_crl_dir = 'crl/'; -- fail, requires reload +RESET ssl_crl_dir; -- fail, requires reload +ALTER SYSTEM SET ssl_crl_dir = 'crl/'; -- ok +ALTER SYSTEM RESET ssl_crl_dir; -- ok +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_directory = 'log'; -- fail, requires reload +RESET log_directory; -- fail, requires reload +ALTER SYSTEM SET log_directory = 'log'; -- ok +ALTER SYSTEM RESET log_directory; -- ok +SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, requires reload +RESET log_filename; -- fail, requires reload +ALTER SYSTEM SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- ok +ALTER SYSTEM RESET log_filename; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET authentication_timeout = 50; -- fail, requires reload +RESET authentication_timeout; -- fail, requires reload +ALTER SYSTEM SET authentication_timeout = 50; -- ok +ALTER SYSTEM RESET authentication_timeout; -- ok +SET db_user_namespace = ON; -- fail, requires reload +RESET db_user_namespace; -- fail, requires reload +ALTER SYSTEM SET db_user_namespace = ON; -- ok +ALTER SYSTEM RESET db_user_namespace; -- ok +SET krb_caseins_users = ON; -- fail, requires reload +RESET krb_caseins_users; -- fail, requires reload +ALTER SYSTEM SET krb_caseins_users = ON; -- ok +ALTER SYSTEM RESET krb_caseins_users; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_SSL +SET ssl_ciphers = 'none'; -- fail, requires reload +RESET ssl_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_ciphers = 'none'; -- ok +ALTER SYSTEM RESET ssl_ciphers; -- ok +SET ssl_dh_params_file = 'ssl/params'; -- fail, requires reload +RESET ssl_dh_params_file; -- fail, requires reload +ALTER SYSTEM SET ssl_dh_params_file = 'ssl/params'; -- ok +ALTER SYSTEM RESET ssl_dh_params_file; -- ok +SET ssl_ecdh_curve = 'none'; -- fail, requires reload +RESET ssl_ecdh_curve; -- fail, requires reload +ALTER SYSTEM SET ssl_ecdh_curve = 'none'; -- ok +ALTER SYSTEM RESET ssl_ecdh_curve; -- ok +SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, requires reload +RESET ssl_min_protocol_version; -- fail, requires reload +ALTER SYSTEM SET ssl_min_protocol_version = 'TLSv1.2'; -- ok +ALTER SYSTEM RESET ssl_min_protocol_version; -- ok +SET ssl_passphrase_command = '/bin/passphrase'; -- fail, requires reload +RESET ssl_passphrase_command; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command = '/bin/passphrase'; -- ok +ALTER SYSTEM RESET ssl_passphrase_command; -- ok +SET ssl_passphrase_command_supports_reload = ON; -- fail, requires reload +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = ON; -- ok +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- ok +SET ssl_prefer_server_ciphers = ON; -- fail, requires reload +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_prefer_server_ciphers = ON; -- ok +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET pre_auth_delay = 50; -- fail, requires reload +RESET pre_auth_delay; -- fail, requires reload +ALTER SYSTEM SET pre_auth_delay = 50; -- ok +ALTER SYSTEM RESET pre_auth_delay; -- ok +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS | GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_hostname = ON; -- fail, requires reload +RESET log_hostname; -- fail, requires reload +ALTER SYSTEM SET log_hostname = ON; -- ok +ALTER SYSTEM RESET log_hostname; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_autovacuum_min_duration = 50; -- fail, requires reload +RESET log_autovacuum_min_duration; -- fail, requires reload +ALTER SYSTEM SET log_autovacuum_min_duration = 50; -- ok +ALTER SYSTEM RESET log_autovacuum_min_duration; -- ok +SET log_checkpoints = ON; -- fail, requires reload +RESET log_checkpoints; -- fail, requires reload +ALTER SYSTEM SET log_checkpoints = ON; -- ok +ALTER SYSTEM RESET log_checkpoints; -- ok +SET log_line_prefix = '%m [%p] '; -- fail, requires reload +RESET log_line_prefix; -- fail, requires reload +ALTER SYSTEM SET log_line_prefix = '%m [%p] '; -- ok +ALTER SYSTEM RESET log_line_prefix; -- ok +SET log_recovery_conflict_waits = ON; -- fail, requires reload +RESET log_recovery_conflict_waits; -- fail, requires reload +ALTER SYSTEM SET log_recovery_conflict_waits = ON; -- ok +ALTER SYSTEM RESET log_recovery_conflict_waits; -- ok +SET log_timezone = 'Europe/Helsinki'; -- fail, requires reload +RESET log_timezone; -- fail, requires reload +ALTER SYSTEM SET log_timezone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET log_timezone; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET syslog_ident = 'postgres'; -- fail, requires reload +RESET syslog_ident; -- fail, requires reload +ALTER SYSTEM SET syslog_ident = 'postgres'; -- ok +ALTER SYSTEM RESET syslog_ident; -- ok +SET syslog_sequence_numbers = ON; -- fail, requires reload +RESET syslog_sequence_numbers; -- fail, requires reload +ALTER SYSTEM SET syslog_sequence_numbers = ON; -- ok +ALTER SYSTEM RESET syslog_sequence_numbers; -- ok +SET syslog_split_messages = ON; -- fail, requires reload +RESET syslog_split_messages; -- fail, requires reload +ALTER SYSTEM SET syslog_split_messages = ON; -- ok +ALTER SYSTEM RESET syslog_split_messages; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET trace_recovery_messages = 'log'; -- fail, requires reload +RESET trace_recovery_messages; -- fail, requires reload +ALTER SYSTEM SET trace_recovery_messages = 'log'; -- ok +ALTER SYSTEM RESET trace_recovery_messages; -- ok +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_warning = 50; -- fail, requires reload +RESET checkpoint_warning; -- fail, requires reload +ALTER SYSTEM SET checkpoint_warning = 50; -- ok +ALTER SYSTEM RESET checkpoint_warning; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_analyze_scale_factor = 50; -- fail, requires reload +RESET autovacuum_analyze_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_analyze_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_scale_factor; -- ok +SET autovacuum_analyze_threshold = 50; -- fail, requires reload +RESET autovacuum_analyze_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_analyze_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_threshold; -- ok +SET autovacuum_naptime = 50; -- fail, requires reload +RESET autovacuum_naptime; -- fail, requires reload +ALTER SYSTEM SET autovacuum_naptime = 50; -- ok +ALTER SYSTEM RESET autovacuum_naptime; -- ok +SET autovacuum_vacuum_cost_delay = 50; -- fail, requires reload +RESET autovacuum_vacuum_cost_delay; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_delay; -- ok +SET autovacuum_vacuum_cost_limit = 50; -- fail, requires reload +RESET autovacuum_vacuum_cost_limit; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_cost_limit = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- ok +SET autovacuum_vacuum_insert_scale_factor = 50; -- fail, requires reload +RESET autovacuum_vacuum_insert_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_insert_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_scale_factor; -- ok +SET autovacuum_vacuum_insert_threshold = 50; -- fail, requires reload +RESET autovacuum_vacuum_insert_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_insert_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_threshold; -- ok +SET autovacuum_vacuum_scale_factor = 50; -- fail, requires reload +RESET autovacuum_vacuum_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_scale_factor; -- ok +SET autovacuum_vacuum_threshold = 50; -- fail, requires reload +RESET autovacuum_vacuum_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_threshold; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / REPLICATION_PRIMARY +SET vacuum_defer_cleanup_age = 50; -- fail, requires reload +RESET vacuum_defer_cleanup_age; -- fail, requires reload +ALTER SYSTEM SET vacuum_defer_cleanup_age = 50; -- ok +ALTER SYSTEM RESET vacuum_defer_cleanup_age; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum = ON; -- fail, requires reload +RESET autovacuum; -- fail, requires reload +ALTER SYSTEM SET autovacuum = ON; -- ok +ALTER SYSTEM RESET autovacuum; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET autovacuum_work_mem = 50; -- fail, requires reload +RESET autovacuum_work_mem; -- fail, requires reload +ALTER SYSTEM SET autovacuum_work_mem = 50; -- ok +ALTER SYSTEM RESET autovacuum_work_mem; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_pred_locks_per_page = 50; -- fail, requires reload +RESET max_pred_locks_per_page; -- fail, requires reload +ALTER SYSTEM SET max_pred_locks_per_page = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_page; -- ok +SET max_pred_locks_per_relation = 50; -- fail, requires reload +RESET max_pred_locks_per_relation; -- fail, requires reload +ALTER SYSTEM SET max_pred_locks_per_relation = 50; -- ok +ALTER SYSTEM RESET max_pred_locks_per_relation; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_sync_workers_per_subscription = 50; -- fail, requires reload +RESET max_sync_workers_per_subscription; -- fail, requires reload +ALTER SYSTEM SET max_sync_workers_per_subscription = 50; -- ok +ALTER SYSTEM RESET max_sync_workers_per_subscription; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / RESOURCES_BGWRITER +SET bgwriter_delay = 50; -- fail, requires reload +RESET bgwriter_delay; -- fail, requires reload +ALTER SYSTEM SET bgwriter_delay = 50; -- ok +ALTER SYSTEM RESET bgwriter_delay; -- ok +SET bgwriter_flush_after = 50; -- fail, requires reload +RESET bgwriter_flush_after; -- fail, requires reload +ALTER SYSTEM SET bgwriter_flush_after = 50; -- ok +ALTER SYSTEM RESET bgwriter_flush_after; -- ok +SET bgwriter_lru_maxpages = 50; -- fail, requires reload +RESET bgwriter_lru_maxpages; -- fail, requires reload +ALTER SYSTEM SET bgwriter_lru_maxpages = 50; -- ok +ALTER SYSTEM RESET bgwriter_lru_maxpages; -- ok +SET bgwriter_lru_multiplier = 5; -- fail, requires reload +RESET bgwriter_lru_multiplier; -- fail, requires reload +ALTER SYSTEM SET bgwriter_lru_multiplier = 5; -- ok +ALTER SYSTEM RESET bgwriter_lru_multiplier; -- ok +-- PGC_SIGHUP / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_slot_wal_keep_size = 50; -- fail, requires reload +RESET max_slot_wal_keep_size; -- fail, requires reload +ALTER SYSTEM SET max_slot_wal_keep_size = 50; -- ok +ALTER SYSTEM RESET max_slot_wal_keep_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = ON; -- fail, requires reload +RESET remove_temp_files_after_crash; -- fail, requires reload +ALTER SYSTEM SET remove_temp_files_after_crash = ON; -- ok +ALTER SYSTEM RESET remove_temp_files_after_crash; -- ok +SET restart_after_crash = ON; -- fail, requires reload +RESET restart_after_crash; -- fail, requires reload +ALTER SYSTEM SET restart_after_crash = ON; -- ok +ALTER SYSTEM RESET restart_after_crash; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_PRIMARY +SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, requires reload +RESET synchronous_standby_names; -- fail, requires reload +ALTER SYSTEM SET synchronous_standby_names = 'fee, fi, fo, fum'; -- ok +ALTER SYSTEM RESET synchronous_standby_names; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET wal_keep_size = 50; -- fail, requires reload +RESET wal_keep_size; -- fail, requires reload +ALTER SYSTEM SET wal_keep_size = 50; -- ok +ALTER SYSTEM RESET wal_keep_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby_feedback = ON; -- fail, requires reload +RESET hot_standby_feedback; -- fail, requires reload +ALTER SYSTEM SET hot_standby_feedback = ON; -- ok +ALTER SYSTEM RESET hot_standby_feedback; -- ok +SET max_standby_archive_delay = 50; -- fail, requires reload +RESET max_standby_archive_delay; -- fail, requires reload +ALTER SYSTEM SET max_standby_archive_delay = 50; -- ok +ALTER SYSTEM RESET max_standby_archive_delay; -- ok +SET max_standby_streaming_delay = 50; -- fail, requires reload +RESET max_standby_streaming_delay; -- fail, requires reload +ALTER SYSTEM SET max_standby_streaming_delay = 50; -- ok +ALTER SYSTEM RESET max_standby_streaming_delay; -- ok +SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, requires reload +RESET primary_conninfo; -- fail, requires reload +ALTER SYSTEM SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- ok +ALTER SYSTEM RESET primary_conninfo; -- ok +SET primary_slot_name = 'bonne_fente'; -- fail, requires reload +RESET primary_slot_name; -- fail, requires reload +ALTER SYSTEM SET primary_slot_name = 'bonne_fente'; -- ok +ALTER SYSTEM RESET primary_slot_name; -- ok +SET promote_trigger_file = 'promote.trigger'; -- fail, requires reload +RESET promote_trigger_file; -- fail, requires reload +ALTER SYSTEM SET promote_trigger_file = 'promote.trigger'; -- ok +ALTER SYSTEM RESET promote_trigger_file; -- ok +SET recovery_min_apply_delay = 50; -- fail, requires reload +RESET recovery_min_apply_delay; -- fail, requires reload +ALTER SYSTEM SET recovery_min_apply_delay = 50; -- ok +ALTER SYSTEM RESET recovery_min_apply_delay; -- ok +SET wal_receiver_create_temp_slot = ON; -- fail, requires reload +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_create_temp_slot = ON; -- ok +ALTER SYSTEM RESET wal_receiver_create_temp_slot; -- ok +SET wal_receiver_status_interval = 50; -- fail, requires reload +RESET wal_receiver_status_interval; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_status_interval = 50; -- ok +ALTER SYSTEM RESET wal_receiver_status_interval; -- ok +SET wal_receiver_timeout = 50; -- fail, requires reload +RESET wal_receiver_timeout; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_timeout = 50; -- ok +ALTER SYSTEM RESET wal_receiver_timeout; -- ok +SET wal_retrieve_retry_interval = 50; -- fail, requires reload +RESET wal_retrieve_retry_interval; -- fail, requires reload +ALTER SYSTEM SET wal_retrieve_retry_interval = 50; -- ok +ALTER SYSTEM RESET wal_retrieve_retry_interval; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_timeout = 50; -- fail, requires reload +RESET archive_timeout; -- fail, requires reload +ALTER SYSTEM SET archive_timeout = 50; -- ok +ALTER SYSTEM RESET archive_timeout; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_completion_target = 0; -- fail, requires reload +RESET checkpoint_completion_target; -- fail, requires reload +ALTER SYSTEM SET checkpoint_completion_target = 0; -- ok +ALTER SYSTEM RESET checkpoint_completion_target; -- ok +SET checkpoint_flush_after = 50; -- fail, requires reload +RESET checkpoint_flush_after; -- fail, requires reload +ALTER SYSTEM SET checkpoint_flush_after = 50; -- ok +ALTER SYSTEM RESET checkpoint_flush_after; -- ok +SET checkpoint_timeout = 50; -- fail, requires reload +RESET checkpoint_timeout; -- fail, requires reload +ALTER SYSTEM SET checkpoint_timeout = 50; -- ok +ALTER SYSTEM RESET checkpoint_timeout; -- ok +SET max_wal_size = 50; -- fail, requires reload +RESET max_wal_size; -- fail, requires reload +ALTER SYSTEM SET max_wal_size = 50; -- ok +ALTER SYSTEM RESET max_wal_size; -- ok +SET min_wal_size = 50; -- fail, requires reload +RESET min_wal_size; -- fail, requires reload +ALTER SYSTEM SET min_wal_size = 50; -- ok +ALTER SYSTEM RESET min_wal_size; -- ok +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_SETTINGS +SET fsync = ON; -- fail, requires reload +RESET fsync; -- fail, requires reload +ALTER SYSTEM SET fsync = ON; -- ok +ALTER SYSTEM RESET fsync; -- ok +SET full_page_writes = ON; -- fail, requires reload +RESET full_page_writes; -- fail, requires reload +ALTER SYSTEM SET full_page_writes = ON; -- ok +ALTER SYSTEM RESET full_page_writes; -- ok +SET wal_sync_method = 'open_datasync'; -- fail, requires reload +RESET wal_sync_method; -- fail, requires reload +ALTER SYSTEM SET wal_sync_method = 'open_datasync'; -- ok +ALTER SYSTEM RESET wal_sync_method; -- ok +SET wal_writer_delay = 50; -- fail, requires reload +RESET wal_writer_delay; -- fail, requires reload +ALTER SYSTEM SET wal_writer_delay = 50; -- ok +ALTER SYSTEM RESET wal_writer_delay; -- ok +SET wal_writer_flush_after = 50; -- fail, requires reload +RESET wal_writer_flush_after; -- fail, requires reload +ALTER SYSTEM SET wal_writer_flush_after = 50; -- ok +ALTER SYSTEM RESET wal_writer_flush_after; -- ok +-- PGC_SUSET / GUC_ALL_PRIVILEGES / DEVELOPER_OPTIONS +SET allow_system_table_mods = ON; -- ok +RESET allow_system_table_mods; -- ok +ALTER SYSTEM SET allow_system_table_mods = ON; -- ok +ALTER SYSTEM RESET allow_system_table_mods; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_OTHER +SET dynamic_library_path = '$libdir'; -- ok +RESET dynamic_library_path; -- ok +ALTER SYSTEM SET dynamic_library_path = '$libdir'; -- ok +ALTER SYSTEM RESET dynamic_library_path; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET session_preload_libraries = 'gssapi_krb5'; -- ok +RESET session_preload_libraries; -- ok +ALTER SYSTEM SET session_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET session_preload_libraries; -- ok +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_dump_bitcode = ON; -- ok +RESET jit_dump_bitcode; -- ok +ALTER SYSTEM SET jit_dump_bitcode = ON; -- ok +ALTER SYSTEM RESET jit_dump_bitcode; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET lc_messages = 'en_US.UTF-8'; -- ok +RESET lc_messages; -- ok +ALTER SYSTEM SET lc_messages = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_messages; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET debug_invalidate_system_caches_always = 2; -- ok +RESET debug_invalidate_system_caches_always; -- ok +ALTER SYSTEM SET debug_invalidate_system_caches_always = 2; -- ok +ALTER SYSTEM RESET debug_invalidate_system_caches_always; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / LOCK_MANAGEMENT +SET deadlock_timeout = 1073741824; -- ok +RESET deadlock_timeout; -- ok +ALTER SYSTEM SET deadlock_timeout = 1073741824; -- ok +ALTER SYSTEM RESET deadlock_timeout; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / DEVELOPER_OPTIONS +SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- ok +RESET backtrace_functions; -- ok +ALTER SYSTEM SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- ok +ALTER SYSTEM RESET backtrace_functions; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_duration = ON; -- ok +RESET log_duration; -- ok +ALTER SYSTEM SET log_duration = ON; -- ok +ALTER SYSTEM RESET log_duration; -- ok +SET log_error_verbosity = 'default'; -- ok +RESET log_error_verbosity; -- ok +ALTER SYSTEM SET log_error_verbosity = 'default'; -- ok +ALTER SYSTEM RESET log_error_verbosity; -- ok +SET log_lock_waits = ON; -- ok +RESET log_lock_waits; -- ok +ALTER SYSTEM SET log_lock_waits = ON; -- ok +ALTER SYSTEM RESET log_lock_waits; -- ok +SET log_parameter_max_length = 50; -- ok +RESET log_parameter_max_length; -- ok +ALTER SYSTEM SET log_parameter_max_length = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length; -- ok +SET log_replication_commands = ON; -- ok +RESET log_replication_commands; -- ok +ALTER SYSTEM SET log_replication_commands = ON; -- ok +ALTER SYSTEM RESET log_replication_commands; -- ok +SET log_statement = 'none'; -- ok +RESET log_statement; -- ok +ALTER SYSTEM SET log_statement = 'none'; -- ok +ALTER SYSTEM RESET log_statement; -- ok +SET log_temp_files = 50; -- ok +RESET log_temp_files; -- ok +ALTER SYSTEM SET log_temp_files = 50; -- ok +ALTER SYSTEM RESET log_temp_files; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHEN +SET log_min_duration_sample = 50; -- ok +RESET log_min_duration_sample; -- ok +ALTER SYSTEM SET log_min_duration_sample = 50; -- ok +ALTER SYSTEM RESET log_min_duration_sample; -- ok +SET log_min_duration_statement = 50; -- ok +RESET log_min_duration_statement; -- ok +ALTER SYSTEM SET log_min_duration_statement = 50; -- ok +ALTER SYSTEM RESET log_min_duration_statement; -- ok +SET log_min_error_statement = 'error'; -- ok +RESET log_min_error_statement; -- ok +ALTER SYSTEM SET log_min_error_statement = 'error'; -- ok +ALTER SYSTEM RESET log_min_error_statement; -- ok +SET log_min_messages = 'warning'; -- ok +RESET log_min_messages; -- ok +ALTER SYSTEM SET log_min_messages = 'warning'; -- ok +ALTER SYSTEM RESET log_min_messages; -- ok +SET log_statement_sample_rate = 0; -- ok +RESET log_statement_sample_rate; -- ok +ALTER SYSTEM SET log_statement_sample_rate = 0; -- ok +ALTER SYSTEM RESET log_statement_sample_rate; -- ok +SET log_transaction_sample_rate = 0; -- ok +RESET log_transaction_sample_rate; -- ok +ALTER SYSTEM SET log_transaction_sample_rate = 0; -- ok +ALTER SYSTEM RESET log_transaction_sample_rate; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS / STATS_MONITORING +SET log_executor_stats = ON; -- ok +RESET log_executor_stats; -- ok +ALTER SYSTEM SET log_executor_stats = ON; -- ok +ALTER SYSTEM RESET log_executor_stats; -- ok +SET log_parser_stats = ON; -- ok +RESET log_parser_stats; -- ok +ALTER SYSTEM SET log_parser_stats = ON; -- ok +ALTER SYSTEM RESET log_parser_stats; -- ok +SET log_planner_stats = ON; -- ok +RESET log_planner_stats; -- ok +ALTER SYSTEM SET log_planner_stats = ON; -- ok +ALTER SYSTEM RESET log_planner_stats; -- ok +SET log_statement_stats = ON; -- ok +RESET log_statement_stats; -- ok +ALTER SYSTEM SET log_statement_stats = ON; -- ok +ALTER SYSTEM RESET log_statement_stats; -- ok +-- PGC_SUSET / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / PROCESS_TITLE +SET update_process_title = ON; -- ok +RESET update_process_title; -- ok +ALTER SYSTEM SET update_process_title = ON; -- ok +ALTER SYSTEM RESET update_process_title; -- ok +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_DISK +SET temp_file_limit = 50; -- ok +RESET temp_file_limit; -- ok +ALTER SYSTEM SET temp_file_limit = 50; -- ok +ALTER SYSTEM RESET temp_file_limit; -- ok +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_stack_depth = 3890; -- ok +RESET max_stack_depth; -- ok +ALTER SYSTEM SET max_stack_depth = 3890; -- ok +ALTER SYSTEM RESET max_stack_depth; -- ok +-- PGC_SUSET / GUC_SECURITY_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = ON; -- ok +RESET lo_compat_privileges; -- ok +ALTER SYSTEM SET lo_compat_privileges = ON; -- ok +ALTER SYSTEM RESET lo_compat_privileges; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_COLLECTOR +SET track_activities = ON; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = ON; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = ON; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = ON; -- ok +ALTER SYSTEM RESET track_counts; -- ok +SET track_functions = 'none'; -- ok +RESET track_functions; -- ok +ALTER SYSTEM SET track_functions = 'none'; -- ok +ALTER SYSTEM RESET track_functions; -- ok +SET track_io_timing = ON; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = ON; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = ON; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = ON; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_MONITORING +SET compute_query_id = ON; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = ON; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_checksum_failure = ON; -- ok +RESET ignore_checksum_failure; -- ok +ALTER SYSTEM SET ignore_checksum_failure = ON; -- ok +ALTER SYSTEM RESET ignore_checksum_failure; -- ok +SET zero_damaged_pages = ON; -- ok +RESET zero_damaged_pages; -- ok +ALTER SYSTEM SET zero_damaged_pages = ON; -- ok +ALTER SYSTEM RESET zero_damaged_pages; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / CLIENT_CONN_STATEMENT +SET session_replication_role = 'origin'; -- ok +RESET session_replication_role; -- ok +ALTER SYSTEM SET session_replication_role = 'origin'; -- ok +ALTER SYSTEM RESET session_replication_role; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- ok +RESET wal_consistency_checking; -- ok +ALTER SYSTEM SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- ok +ALTER SYSTEM RESET wal_consistency_checking; -- ok +-- PGC_SUSET / GUC_WAL_SETTINGS / WAL_SETTINGS +SET commit_delay = 50; -- ok +RESET commit_delay; -- ok +ALTER SYSTEM SET commit_delay = 50; -- ok +ALTER SYSTEM RESET commit_delay; -- ok +SET wal_compression = ON; -- ok +RESET wal_compression; -- ok +ALTER SYSTEM SET wal_compression = ON; -- ok +ALTER SYSTEM RESET wal_compression; -- ok +SET wal_init_zero = ON; -- ok +RESET wal_init_zero; -- ok +ALTER SYSTEM SET wal_init_zero = ON; -- ok +ALTER SYSTEM RESET wal_init_zero; -- ok +SET wal_recycle = ON; -- ok +RESET wal_recycle; -- ok +ALTER SYSTEM SET wal_recycle = ON; -- ok +ALTER SYSTEM RESET wal_recycle; -- ok +-- PGC_SU_BACKEND / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_profiling_support = ON; -- fail, cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = ON; -- ok +ALTER SYSTEM RESET jit_profiling_support; -- ok +-- PGC_SU_BACKEND / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_debugging_support = ON; -- fail, cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = ON; -- ok +ALTER SYSTEM RESET jit_debugging_support; -- ok +-- PGC_SU_BACKEND / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_connections = ON; -- fail, cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_connections = ON; -- ok +ALTER SYSTEM RESET log_connections; -- ok +SET log_disconnections = ON; -- fail, cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_disconnections = ON; -- ok +ALTER SYSTEM RESET log_disconnections; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET DateStyle = 'ISO, MDY'; -- ok +RESET DateStyle; -- ok +ALTER SYSTEM SET DateStyle = 'ISO, MDY'; -- ok +ALTER SYSTEM RESET DateStyle; -- ok +SET IntervalStyle = 'postgres'; -- ok +RESET IntervalStyle; -- ok +ALTER SYSTEM SET IntervalStyle = 'postgres'; -- ok +ALTER SYSTEM RESET IntervalStyle; -- ok +SET TimeZone = 'Europe/Helsinki'; -- ok +RESET TimeZone; -- ok +ALTER SYSTEM SET TimeZone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET TimeZone; -- ok +SET client_encoding = 'UTF8'; -- ok +RESET client_encoding; -- ok +ALTER SYSTEM SET client_encoding = 'UTF8'; -- ok +ALTER SYSTEM RESET client_encoding; -- ok +SET default_text_search_config = 'pg_catalog.english'; -- ok +RESET default_text_search_config; -- ok +ALTER SYSTEM SET default_text_search_config = 'pg_catalog.english'; -- ok +ALTER SYSTEM RESET default_text_search_config; -- ok +SET extra_float_digits = -6; -- ok +RESET extra_float_digits; -- ok +ALTER SYSTEM SET extra_float_digits = -6; -- ok +ALTER SYSTEM RESET extra_float_digits; -- ok +SET lc_monetary = 'en_US.UTF-8'; -- ok +RESET lc_monetary; -- ok +ALTER SYSTEM SET lc_monetary = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_monetary; -- ok +SET lc_numeric = 'en_US.UTF-8'; -- ok +RESET lc_numeric; -- ok +ALTER SYSTEM SET lc_numeric = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_numeric; -- ok +SET lc_time = 'en_US.UTF-8'; -- ok +RESET lc_time; -- ok +ALTER SYSTEM SET lc_time = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_time; -- ok +SET timezone_abbreviations = 'Default'; -- ok +RESET timezone_abbreviations; -- ok +ALTER SYSTEM SET timezone_abbreviations = 'Default'; -- ok +ALTER SYSTEM RESET timezone_abbreviations; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_OTHER +SET gin_fuzzy_search_limit = 50; -- ok +RESET gin_fuzzy_search_limit; -- ok +ALTER SYSTEM SET gin_fuzzy_search_limit = 50; -- ok +ALTER SYSTEM RESET gin_fuzzy_search_limit; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET local_preload_libraries; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_STATEMENT +SET bytea_output = 'hex'; -- ok +RESET bytea_output; -- ok +ALTER SYSTEM SET bytea_output = 'hex'; -- ok +ALTER SYSTEM RESET bytea_output; -- ok +SET check_function_bodies = ON; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = ON; -- ok +ALTER SYSTEM RESET check_function_bodies; -- ok +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- ok +ALTER SYSTEM RESET client_min_messages; -- ok +SET default_table_access_method = 'heap'; -- ok +RESET default_table_access_method; -- ok +ALTER SYSTEM SET default_table_access_method = 'heap'; -- ok +ALTER SYSTEM RESET default_table_access_method; -- ok +SET default_toast_compression = 'pglz'; -- ok +RESET default_toast_compression; -- ok +ALTER SYSTEM SET default_toast_compression = 'pglz'; -- ok +ALTER SYSTEM RESET default_toast_compression; -- ok +SET default_transaction_deferrable = ON; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = ON; -- ok +ALTER SYSTEM RESET default_transaction_deferrable; -- ok +SET default_transaction_isolation = 'read committed'; -- ok +RESET default_transaction_isolation; -- ok +ALTER SYSTEM SET default_transaction_isolation = 'read committed'; -- ok +ALTER SYSTEM RESET default_transaction_isolation; -- ok +SET default_transaction_read_only = ON; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = ON; -- ok +ALTER SYSTEM RESET default_transaction_read_only; -- ok +SET gin_pending_list_limit = 1073741855; -- ok +RESET gin_pending_list_limit; -- ok +ALTER SYSTEM SET gin_pending_list_limit = 1073741855; -- ok +ALTER SYSTEM RESET gin_pending_list_limit; -- ok +SET idle_in_transaction_session_timeout = 50; -- ok +RESET idle_in_transaction_session_timeout; -- ok +ALTER SYSTEM SET idle_in_transaction_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_in_transaction_session_timeout; -- ok +SET idle_session_timeout = 50; -- ok +RESET idle_session_timeout; -- ok +ALTER SYSTEM SET idle_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_session_timeout; -- ok +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET row_security = ON; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = ON; -- ok +ALTER SYSTEM RESET row_security; -- ok +SET search_path = '"$user", public'; -- ok +RESET search_path; -- ok +ALTER SYSTEM SET search_path = '"$user", public'; -- ok +ALTER SYSTEM RESET search_path; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +SET transaction_deferrable = ON; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = ON; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_deferrable; -- fail, cannot be changed +SET transaction_isolation = 'read committed'; -- ok +RESET transaction_isolation; -- ok +ALTER SYSTEM SET transaction_isolation = 'read committed'; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_isolation; -- fail, cannot be changed +SET transaction_read_only = ON; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = ON; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_read_only; -- fail, cannot be changed +SET vacuum_failsafe_age = 50; -- ok +RESET vacuum_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_failsafe_age; -- ok +SET vacuum_freeze_min_age = 50; -- ok +RESET vacuum_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_min_age; -- ok +SET vacuum_freeze_table_age = 50; -- ok +RESET vacuum_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_table_age; -- ok +SET vacuum_multixact_failsafe_age = 50; -- ok +RESET vacuum_multixact_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_multixact_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_failsafe_age; -- ok +SET vacuum_multixact_freeze_min_age = 50; -- ok +RESET vacuum_multixact_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_min_age; -- ok +SET vacuum_multixact_freeze_table_age = 50; -- ok +RESET vacuum_multixact_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_table_age; -- ok +SET xmlbinary = 'base64'; -- ok +RESET xmlbinary; -- ok +ALTER SYSTEM SET xmlbinary = 'base64'; -- ok +ALTER SYSTEM RESET xmlbinary; -- ok +SET xmloption = 'content'; -- ok +RESET xmloption; -- ok +ALTER SYSTEM SET xmloption = 'content'; -- ok +ALTER SYSTEM RESET xmloption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = ON; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = ON; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = ON; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = ON; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = ON; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = ON; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = ON; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = ON; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = ON; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = ON; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- ok +ALTER SYSTEM RESET password_encryption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- ok +ALTER SYSTEM RESET client_connection_check_interval; -- ok +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_count; -- ok +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_idle; -- ok +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_interval; -- ok +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- ok +ALTER SYSTEM RESET tcp_user_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SSL +SET ssl_renegotiation_limit = 0; -- ok +RESET ssl_renegotiation_limit; -- ok +ALTER SYSTEM SET ssl_renegotiation_limit = 0; -- fail, cannot be changed +ALTER SYSTEM RESET ssl_renegotiation_limit; -- fail, cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET force_parallel_mode = 'off'; -- ok +RESET force_parallel_mode; -- ok +ALTER SYSTEM SET force_parallel_mode = 'off'; -- ok +ALTER SYSTEM RESET force_parallel_mode; -- ok +SET jit_expressions = ON; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = ON; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +SET jit_tuple_deforming = ON; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = ON; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = ON; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = ON; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = ON; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = ON; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET exit_on_error = ON; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = ON; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- ok +ALTER SYSTEM RESET application_name; -- ok +SET debug_pretty_print = ON; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = ON; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = ON; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = ON; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = ON; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = ON; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = ON; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = ON; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +SET log_parameter_max_length_on_error = 50; -- ok +RESET log_parameter_max_length_on_error; -- ok +ALTER SYSTEM SET log_parameter_max_length_on_error = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_COST +SET cpu_index_tuple_cost = 50; -- ok +RESET cpu_index_tuple_cost; -- ok +ALTER SYSTEM SET cpu_index_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_index_tuple_cost; -- ok +SET cpu_operator_cost = 50; -- ok +RESET cpu_operator_cost; -- ok +ALTER SYSTEM SET cpu_operator_cost = 50; -- ok +ALTER SYSTEM RESET cpu_operator_cost; -- ok +SET cpu_tuple_cost = 50; -- ok +RESET cpu_tuple_cost; -- ok +ALTER SYSTEM SET cpu_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_tuple_cost; -- ok +SET effective_cache_size = 1073741824; -- ok +RESET effective_cache_size; -- ok +ALTER SYSTEM SET effective_cache_size = 1073741824; -- ok +ALTER SYSTEM RESET effective_cache_size; -- ok +SET jit_above_cost = 50; -- ok +RESET jit_above_cost; -- ok +ALTER SYSTEM SET jit_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_above_cost; -- ok +SET jit_inline_above_cost = 50; -- ok +RESET jit_inline_above_cost; -- ok +ALTER SYSTEM SET jit_inline_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_inline_above_cost; -- ok +SET jit_optimize_above_cost = 50; -- ok +RESET jit_optimize_above_cost; -- ok +ALTER SYSTEM SET jit_optimize_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_optimize_above_cost; -- ok +SET min_parallel_index_scan_size = 50; -- ok +RESET min_parallel_index_scan_size; -- ok +ALTER SYSTEM SET min_parallel_index_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_index_scan_size; -- ok +SET min_parallel_table_scan_size = 50; -- ok +RESET min_parallel_table_scan_size; -- ok +ALTER SYSTEM SET min_parallel_table_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_table_scan_size; -- ok +SET parallel_setup_cost = 50; -- ok +RESET parallel_setup_cost; -- ok +ALTER SYSTEM SET parallel_setup_cost = 50; -- ok +ALTER SYSTEM RESET parallel_setup_cost; -- ok +SET parallel_tuple_cost = 50; -- ok +RESET parallel_tuple_cost; -- ok +ALTER SYSTEM SET parallel_tuple_cost = 50; -- ok +ALTER SYSTEM RESET parallel_tuple_cost; -- ok +SET random_page_cost = 50; -- ok +RESET random_page_cost; -- ok +ALTER SYSTEM SET random_page_cost = 50; -- ok +ALTER SYSTEM RESET random_page_cost; -- ok +SET seq_page_cost = 50; -- ok +RESET seq_page_cost; -- ok +ALTER SYSTEM SET seq_page_cost = 50; -- ok +ALTER SYSTEM RESET seq_page_cost; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_GEQO +SET geqo = ON; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = ON; -- ok +ALTER SYSTEM RESET geqo; -- ok +SET geqo_effort = 5; -- ok +RESET geqo_effort; -- ok +ALTER SYSTEM SET geqo_effort = 5; -- ok +ALTER SYSTEM RESET geqo_effort; -- ok +SET geqo_generations = 50; -- ok +RESET geqo_generations; -- ok +ALTER SYSTEM SET geqo_generations = 50; -- ok +ALTER SYSTEM RESET geqo_generations; -- ok +SET geqo_pool_size = 50; -- ok +RESET geqo_pool_size; -- ok +ALTER SYSTEM SET geqo_pool_size = 50; -- ok +ALTER SYSTEM RESET geqo_pool_size; -- ok +SET geqo_seed = 0; -- ok +RESET geqo_seed; -- ok +ALTER SYSTEM SET geqo_seed = 0; -- ok +ALTER SYSTEM RESET geqo_seed; -- ok +SET geqo_selection_bias = 2; -- ok +RESET geqo_selection_bias; -- ok +ALTER SYSTEM SET geqo_selection_bias = 2; -- ok +ALTER SYSTEM RESET geqo_selection_bias; -- ok +SET geqo_threshold = 1073741824; -- ok +RESET geqo_threshold; -- ok +ALTER SYSTEM SET geqo_threshold = 1073741824; -- ok +ALTER SYSTEM RESET geqo_threshold; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_METHOD +SET enable_async_append = ON; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = ON; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = ON; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = ON; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = ON; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = ON; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = ON; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = ON; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = ON; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = ON; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = ON; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = ON; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = ON; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = ON; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = ON; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = ON; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = ON; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = ON; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = ON; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = ON; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = ON; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = ON; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = ON; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = ON; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = ON; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = ON; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = ON; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = ON; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = ON; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = ON; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = ON; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = ON; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = ON; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = ON; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = ON; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = ON; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = ON; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = ON; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_OTHER +SET constraint_exclusion = 'partition'; -- ok +RESET constraint_exclusion; -- ok +ALTER SYSTEM SET constraint_exclusion = 'partition'; -- ok +ALTER SYSTEM RESET constraint_exclusion; -- ok +SET cursor_tuple_fraction = 0; -- ok +RESET cursor_tuple_fraction; -- ok +ALTER SYSTEM SET cursor_tuple_fraction = 0; -- ok +ALTER SYSTEM RESET cursor_tuple_fraction; -- ok +SET default_statistics_target = 5000; -- ok +RESET default_statistics_target; -- ok +ALTER SYSTEM SET default_statistics_target = 5000; -- ok +ALTER SYSTEM RESET default_statistics_target; -- ok +SET from_collapse_limit = 1073741824; -- ok +RESET from_collapse_limit; -- ok +ALTER SYSTEM SET from_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET from_collapse_limit; -- ok +SET jit = ON; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = ON; -- ok +ALTER SYSTEM RESET jit; -- ok +SET join_collapse_limit = 1073741824; -- ok +RESET join_collapse_limit; -- ok +ALTER SYSTEM SET join_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET join_collapse_limit; -- ok +SET plan_cache_mode = 'force_generic_plan'; -- ok +RESET plan_cache_mode; -- ok +ALTER SYSTEM SET plan_cache_mode = 'force_generic_plan'; -- ok +ALTER SYSTEM RESET plan_cache_mode; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- ok +ALTER SYSTEM RESET wal_sender_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- ok +ALTER SYSTEM RESET backend_flush_after; -- ok +SET max_parallel_maintenance_workers = 50; -- ok +RESET max_parallel_maintenance_workers; -- ok +ALTER SYSTEM SET max_parallel_maintenance_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_maintenance_workers; -- ok +SET max_parallel_workers = 50; -- ok +RESET max_parallel_workers; -- ok +ALTER SYSTEM SET max_parallel_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers; -- ok +SET max_parallel_workers_per_gather = 50; -- ok +RESET max_parallel_workers_per_gather; -- ok +ALTER SYSTEM SET max_parallel_workers_per_gather = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers_per_gather; -- ok +SET parallel_leader_participation = ON; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = ON; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_MEM +SET hash_mem_multiplier = 500; -- ok +RESET hash_mem_multiplier; -- ok +ALTER SYSTEM SET hash_mem_multiplier = 500; -- ok +ALTER SYSTEM RESET hash_mem_multiplier; -- ok +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- ok +ALTER SYSTEM RESET logical_decoding_work_mem; -- ok +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- ok +ALTER SYSTEM RESET maintenance_work_mem; -- ok +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- ok +ALTER SYSTEM RESET temp_buffers; -- ok +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- ok +ALTER SYSTEM RESET work_mem; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_VACUUM_DELAY +SET vacuum_cost_delay = 50; -- ok +RESET vacuum_cost_delay; -- ok +ALTER SYSTEM SET vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_delay; -- ok +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- ok +ALTER SYSTEM RESET vacuum_cost_limit; -- ok +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- ok +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_hit; -- ok +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_miss; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / UNGROUPED +SET seed = 0; -- ok +RESET seed; -- ok +ALTER SYSTEM SET seed = 0; -- fail, cannot be changed +ALTER SYSTEM RESET seed; -- fail, cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- ok +ALTER SYSTEM RESET commit_siblings; -- ok +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- ok +ALTER SYSTEM RESET wal_skip_threshold; -- ok +-- PGC_USERSET / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET effective_io_concurrency = 0; -- ok +RESET effective_io_concurrency; -- ok +ALTER SYSTEM SET effective_io_concurrency = 0; -- ok +ALTER SYSTEM RESET effective_io_concurrency; -- ok +SET maintenance_io_concurrency = 0; -- ok +RESET maintenance_io_concurrency; -- ok +ALTER SYSTEM SET maintenance_io_concurrency = 0; -- ok +ALTER SYSTEM RESET maintenance_io_concurrency; -- ok +RESET statement_timeout; +RESET SESSION AUTHORIZATION; +DROP ROLE admin; diff --git a/src/test/regress/sql/guc_priv_tenant.sql b/src/test/regress/sql/guc_priv_tenant.sql new file mode 100644 index 0000000000..b4d2c23a2f --- /dev/null +++ b/src/test/regress/sql/guc_priv_tenant.sql @@ -0,0 +1,1461 @@ + +-- Role operating exclusively within the sandbox +CREATE ROLE tenant; +GRANT pg_internal_settings TO tenant; +GRANT pg_stats_settings TO tenant; +GRANT pg_maintenance_settings TO tenant; +-- Perform all operations as user 'tenant' -- +SET SESSION AUTHORIZATION tenant; +-- PGC_BACKEND / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET post_auth_delay = 50; -- fail, cannot be set after connection start +RESET post_auth_delay; -- fail, cannot be set after connection start +ALTER SYSTEM SET post_auth_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET post_auth_delay; -- fail, tenant has insufficient privileges +-- PGC_BACKEND / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET ignore_system_indexes = ON; -- fail, cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = ON; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / PRESET_OPTIONS +SET block_size = 50; -- fail, cannot be changed +RESET block_size; -- fail, cannot be changed +ALTER SYSTEM SET block_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET block_size; -- fail, cannot be changed +SET data_checksums = ON; -- fail, cannot be changed +RESET data_checksums; -- fail, cannot be changed +ALTER SYSTEM SET data_checksums = ON; -- fail, cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +SET data_directory_mode = 50; -- fail, cannot be changed +RESET data_directory_mode; -- fail, cannot be changed +ALTER SYSTEM SET data_directory_mode = 50; -- fail, cannot be changed +ALTER SYSTEM RESET data_directory_mode; -- fail, cannot be changed +SET debug_assertions = ON; -- fail, cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ALTER SYSTEM SET debug_assertions = ON; -- fail, cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +SET in_hot_standby = ON; -- fail, cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ALTER SYSTEM SET in_hot_standby = ON; -- fail, cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +SET integer_datetimes = ON; -- fail, cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ALTER SYSTEM SET integer_datetimes = ON; -- fail, cannot be changed +ALTER SYSTEM RESET integer_datetimes; -- fail, cannot be changed +SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +RESET lc_collate; -- fail, cannot be changed +ALTER SYSTEM SET lc_collate = 'en_US.UTF-8'; -- fail, cannot be changed +ALTER SYSTEM RESET lc_collate; -- fail, cannot be changed +SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +RESET lc_ctype; -- fail, cannot be changed +ALTER SYSTEM SET lc_ctype = 'en_US.UTF-8'; -- fail, cannot be changed +ALTER SYSTEM RESET lc_ctype; -- fail, cannot be changed +SET max_function_args = 50; -- fail, cannot be changed +RESET max_function_args; -- fail, cannot be changed +ALTER SYSTEM SET max_function_args = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_function_args; -- fail, cannot be changed +SET max_identifier_length = 50; -- fail, cannot be changed +RESET max_identifier_length; -- fail, cannot be changed +ALTER SYSTEM SET max_identifier_length = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_identifier_length; -- fail, cannot be changed +SET max_index_keys = 50; -- fail, cannot be changed +RESET max_index_keys; -- fail, cannot be changed +ALTER SYSTEM SET max_index_keys = 50; -- fail, cannot be changed +ALTER SYSTEM RESET max_index_keys; -- fail, cannot be changed +SET segment_size = 50; -- fail, cannot be changed +RESET segment_size; -- fail, cannot be changed +ALTER SYSTEM SET segment_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET segment_size; -- fail, cannot be changed +SET server_encoding = 'UTF8'; -- fail, cannot be changed +RESET server_encoding; -- fail, cannot be changed +ALTER SYSTEM SET server_encoding = 'UTF8'; -- fail, cannot be changed +ALTER SYSTEM RESET server_encoding; -- fail, cannot be changed +SET server_version = '9.1'; -- fail, cannot be changed +RESET server_version; -- fail, cannot be changed +ALTER SYSTEM SET server_version = '9.1'; -- fail, cannot be changed +ALTER SYSTEM RESET server_version; -- fail, cannot be changed +SET server_version_num = 50; -- fail, cannot be changed +RESET server_version_num; -- fail, cannot be changed +ALTER SYSTEM SET server_version_num = 50; -- fail, cannot be changed +ALTER SYSTEM RESET server_version_num; -- fail, cannot be changed +SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +RESET ssl_library; -- fail, cannot be changed +ALTER SYSTEM SET ssl_library = 'OpenSSL'; -- fail, cannot be changed +ALTER SYSTEM RESET ssl_library; -- fail, cannot be changed +SET wal_block_size = 50; -- fail, cannot be changed +RESET wal_block_size; -- fail, cannot be changed +ALTER SYSTEM SET wal_block_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET wal_block_size; -- fail, cannot be changed +SET wal_segment_size = 50; -- fail, cannot be changed +RESET wal_segment_size; -- fail, cannot be changed +ALTER SYSTEM SET wal_segment_size = 50; -- fail, cannot be changed +ALTER SYSTEM RESET wal_segment_size; -- fail, cannot be changed +-- PGC_INTERNAL / GUC_INTERNAL_SETTINGS / UNGROUPED +SET is_superuser = ON; -- fail, cannot be changed +RESET is_superuser; -- fail, cannot be changed +ALTER SYSTEM SET is_superuser = ON; -- fail, cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET shared_preload_libraries = 'iconv, pcre'; -- fail, requires restart +RESET shared_preload_libraries; -- fail, requires restart +ALTER SYSTEM SET shared_preload_libraries = 'iconv, pcre'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET shared_preload_libraries; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY / FILE_LOCATIONS +SET config_file = '/usr/local/data/postgresql.conf'; -- fail, requires restart +RESET config_file; -- fail, requires restart +ALTER SYSTEM SET config_file = '/usr/local/data/postgresql.conf'; -- fail, cannot be changed +ALTER SYSTEM RESET config_file; -- fail, cannot be changed +SET data_directory = '/usr/local/data'; -- fail, requires restart +RESET data_directory; -- fail, requires restart +ALTER SYSTEM SET data_directory = '/usr/local/data'; -- fail, cannot be changed +ALTER SYSTEM RESET data_directory; -- fail, cannot be changed +SET external_pid_file = '/var/postgres/master.pid'; -- fail, requires restart +RESET external_pid_file; -- fail, requires restart +ALTER SYSTEM SET external_pid_file = '/var/postgres/master.pid'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET external_pid_file; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET unix_socket_directories = '/tmp'; -- fail, requires restart +RESET unix_socket_directories; -- fail, requires restart +ALTER SYSTEM SET unix_socket_directories = '/tmp'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET unix_socket_directories; -- fail, tenant has insufficient privileges +SET unix_socket_group = 'tenant'; -- fail, requires restart +RESET unix_socket_group; -- fail, requires restart +ALTER SYSTEM SET unix_socket_group = 'tenant'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET unix_socket_group; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET logging_collector = ON; -- fail, requires restart +RESET logging_collector; -- fail, requires restart +ALTER SYSTEM SET logging_collector = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET logging_collector; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_INTERFACE_SETTINGS / CONN_AUTH_SETTINGS +SET bonjour = ON; -- fail, requires restart +RESET bonjour; -- fail, requires restart +ALTER SYSTEM SET bonjour = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bonjour; -- fail, tenant has insufficient privileges +SET bonjour_name = 'BonneNuit'; -- fail, requires restart +RESET bonjour_name; -- fail, requires restart +ALTER SYSTEM SET bonjour_name = 'BonneNuit'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bonjour_name; -- fail, tenant has insufficient privileges +SET listen_addresses = 'localhost'; -- fail, requires restart +RESET listen_addresses; -- fail, requires restart +ALTER SYSTEM SET listen_addresses = 'localhost'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET listen_addresses; -- fail, tenant has insufficient privileges +SET max_connections = 50; -- fail, requires restart +RESET max_connections; -- fail, requires restart +ALTER SYSTEM SET max_connections = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_connections; -- fail, tenant has insufficient privileges +SET port = 50; -- fail, requires restart +RESET port; -- fail, requires restart +ALTER SYSTEM SET port = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET port; -- fail, tenant has insufficient privileges +SET superuser_reserved_connections = 50; -- fail, requires restart +RESET superuser_reserved_connections; -- fail, requires restart +ALTER SYSTEM SET superuser_reserved_connections = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET superuser_reserved_connections; -- fail, tenant has insufficient privileges +SET unix_socket_permissions = 50; -- fail, requires restart +RESET unix_socket_permissions; -- fail, requires restart +ALTER SYSTEM SET unix_socket_permissions = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET unix_socket_permissions; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET huge_pages = 'try'; -- fail, requires restart +RESET huge_pages; -- fail, requires restart +ALTER SYSTEM SET huge_pages = 'try'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET huge_pages; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / CLIENT_CONN_PRELOAD +SET jit_provider = 'llvmjit'; -- fail, requires restart +RESET jit_provider; -- fail, requires restart +ALTER SYSTEM SET jit_provider = 'llvmjit'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_provider; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS / PROCESS_TITLE +SET cluster_name = 'BonCluster'; -- fail, requires restart +RESET cluster_name; -- fail, requires restart +ALTER SYSTEM SET cluster_name = 'BonCluster'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET cluster_name; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET event_source = 'PostgreSQL'; -- fail, requires restart +RESET event_source; -- fail, requires restart +ALTER SYSTEM SET event_source = 'PostgreSQL'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET event_source; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_freeze_max_age = 1000050000; -- fail, requires restart +RESET autovacuum_freeze_max_age; -- fail, requires restart +ALTER SYSTEM SET autovacuum_freeze_max_age = 1000050000; -- ok +ALTER SYSTEM RESET autovacuum_freeze_max_age; -- ok +SET autovacuum_multixact_freeze_max_age = 1000005000; -- fail, requires restart +RESET autovacuum_multixact_freeze_max_age; -- fail, requires restart +ALTER SYSTEM SET autovacuum_multixact_freeze_max_age = 1000005000; -- ok +ALTER SYSTEM RESET autovacuum_multixact_freeze_max_age; -- ok +-- PGC_POSTMASTER / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum_max_workers = 50; -- fail, requires restart +RESET autovacuum_max_workers; -- fail, requires restart +ALTER SYSTEM SET autovacuum_max_workers = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET autovacuum_max_workers; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_locks_per_transaction = 50; -- fail, requires restart +RESET max_locks_per_transaction; -- fail, requires restart +ALTER SYSTEM SET max_locks_per_transaction = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_locks_per_transaction; -- fail, tenant has insufficient privileges +SET max_pred_locks_per_transaction = 50; -- fail, requires restart +RESET max_pred_locks_per_transaction; -- fail, requires restart +ALTER SYSTEM SET max_pred_locks_per_transaction = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_pred_locks_per_transaction; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_logical_replication_workers = 50; -- fail, requires restart +RESET max_logical_replication_workers; -- fail, requires restart +ALTER SYSTEM SET max_logical_replication_workers = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_logical_replication_workers; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET max_worker_processes = 50; -- fail, requires restart +RESET max_worker_processes; -- fail, requires restart +ALTER SYSTEM SET max_worker_processes = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_worker_processes; -- fail, tenant has insufficient privileges +SET old_snapshot_threshold = 50; -- fail, requires restart +RESET old_snapshot_threshold; -- fail, requires restart +ALTER SYSTEM SET old_snapshot_threshold = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET old_snapshot_threshold; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_KERNEL +SET max_files_per_process = 1073741855; -- fail, requires restart +RESET max_files_per_process; -- fail, requires restart +ALTER SYSTEM SET max_files_per_process = 1073741855; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_files_per_process; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_prepared_transactions = 50; -- fail, requires restart +RESET max_prepared_transactions; -- fail, requires restart +ALTER SYSTEM SET max_prepared_transactions = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_prepared_transactions; -- fail, tenant has insufficient privileges +SET min_dynamic_shared_memory = 50; -- fail, requires restart +RESET min_dynamic_shared_memory; -- fail, requires restart +ALTER SYSTEM SET min_dynamic_shared_memory = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET min_dynamic_shared_memory; -- fail, tenant has insufficient privileges +SET shared_buffers = 50; -- fail, requires restart +RESET shared_buffers; -- fail, requires restart +ALTER SYSTEM SET shared_buffers = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET shared_buffers; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE / STATS_COLLECTOR +SET track_activity_query_size = 524338; -- fail, requires restart +RESET track_activity_query_size; -- fail, requires restart +ALTER SYSTEM SET track_activity_query_size = 524338; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET track_activity_query_size; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_replication_slots = 50; -- fail, requires restart +RESET max_replication_slots; -- fail, requires restart +ALTER SYSTEM SET max_replication_slots = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_replication_slots; -- fail, tenant has insufficient privileges +SET max_wal_senders = 50; -- fail, requires restart +RESET max_wal_senders; -- fail, requires restart +ALTER SYSTEM SET max_wal_senders = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_wal_senders; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_buffers = 50; -- fail, requires restart +RESET wal_buffers; -- fail, requires restart +ALTER SYSTEM SET wal_buffers = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_buffers; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_SERVER_CONFIGURATION / RESOURCES_MEM +SET dynamic_shared_memory_type = 'posix'; -- fail, requires restart +RESET dynamic_shared_memory_type; -- fail, requires restart +ALTER SYSTEM SET dynamic_shared_memory_type = 'posix'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET dynamic_shared_memory_type; -- fail, tenant has insufficient privileges +SET shared_memory_type = 'mmap'; -- fail, requires restart +RESET shared_memory_type; -- fail, requires restart +ALTER SYSTEM SET shared_memory_type = 'mmap'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET shared_memory_type; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_invalid_pages = ON; -- fail, requires restart +RESET ignore_invalid_pages; -- fail, requires restart +ALTER SYSTEM SET ignore_invalid_pages = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ignore_invalid_pages; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_STORAGE_SETTINGS / ERROR_HANDLING_OPTIONS +SET data_sync_retry = ON; -- fail, requires restart +RESET data_sync_retry; -- fail, requires restart +ALTER SYSTEM SET data_sync_retry = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET data_sync_retry; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET recovery_init_sync_method = 'fsync'; -- fail, requires restart +RESET recovery_init_sync_method; -- fail, requires restart +ALTER SYSTEM SET recovery_init_sync_method = 'fsync'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_init_sync_method; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET track_commit_timestamp = ON; -- fail, requires restart +RESET track_commit_timestamp; -- fail, requires restart +ALTER SYSTEM SET track_commit_timestamp = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET track_commit_timestamp; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby = ON; -- fail, requires restart +RESET hot_standby; -- fail, requires restart +ALTER SYSTEM SET hot_standby = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET hot_standby; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_mode = 'off'; -- fail, requires restart +RESET archive_mode; -- fail, requires restart +ALTER SYSTEM SET archive_mode = 'off'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET archive_mode; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_RECOVERY_TARGET +SET recovery_target_action = 'pause'; -- fail, requires restart +RESET recovery_target_action; -- fail, requires restart +ALTER SYSTEM SET recovery_target_action = 'pause'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_action; -- fail, tenant has insufficient privileges +SET recovery_target_inclusive = ON; -- fail, requires restart +RESET recovery_target_inclusive; -- fail, requires restart +ALTER SYSTEM SET recovery_target_inclusive = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_inclusive; -- fail, tenant has insufficient privileges +SET recovery_target_lsn = '16/B374D848'; -- fail, requires restart +RESET recovery_target_lsn; -- fail, requires restart +ALTER SYSTEM SET recovery_target_lsn = '16/B374D848'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_lsn; -- fail, tenant has insufficient privileges +SET recovery_target_name = 'BonPoint'; -- fail, requires restart +RESET recovery_target_name; -- fail, requires restart +ALTER SYSTEM SET recovery_target_name = 'BonPoint'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_name; -- fail, tenant has insufficient privileges +SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, requires restart +RESET recovery_target_time; -- fail, requires restart +ALTER SYSTEM SET recovery_target_time = '2001-02-03 04:05:06.789 Europe/Helsinki'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_time; -- fail, tenant has insufficient privileges +SET recovery_target_timeline = 'latest'; -- fail, requires restart +RESET recovery_target_timeline; -- fail, requires restart +ALTER SYSTEM SET recovery_target_timeline = 'latest'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_timeline; -- fail, tenant has insufficient privileges +SET recovery_target_xid = '12345678'; -- fail, requires restart +RESET recovery_target_xid; -- fail, requires restart +ALTER SYSTEM SET recovery_target_xid = '12345678'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_target_xid; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_WAL_SETTINGS / WAL_SETTINGS +SET wal_level = 'replica'; -- fail, requires restart +RESET wal_level; -- fail, requires restart +ALTER SYSTEM SET wal_level = 'replica'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_level; -- fail, tenant has insufficient privileges +SET wal_log_hints = ON; -- fail, requires restart +RESET wal_log_hints; -- fail, requires restart +ALTER SYSTEM SET wal_log_hints = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_log_hints; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVE_RECOVERY +SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, requires reload +RESET archive_cleanup_command; -- fail, requires reload +ALTER SYSTEM SET archive_cleanup_command = '/bin/cleanup my stuff'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET archive_cleanup_command; -- fail, tenant has insufficient privileges +SET recovery_end_command = '/bin/recover my stuff'; -- fail, requires reload +RESET recovery_end_command; -- fail, requires reload +ALTER SYSTEM SET recovery_end_command = '/bin/recover my stuff'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_end_command; -- fail, tenant has insufficient privileges +SET restore_command = '/bin/restore my stuff'; -- fail, requires reload +RESET restore_command; -- fail, requires reload +ALTER SYSTEM SET restore_command = '/bin/restore my stuff'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET restore_command; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_EXEC_COMMAND / WAL_ARCHIVING +SET archive_command = '/bin/archive my stuff'; -- fail, requires reload +RESET archive_command; -- fail, requires reload +ALTER SYSTEM SET archive_command = '/bin/archive my stuff'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET archive_command; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / CONN_AUTH_SSL +SET ssl_ca_file = 'ca/server.ca'; -- fail, requires reload +RESET ssl_ca_file; -- fail, requires reload +ALTER SYSTEM SET ssl_ca_file = 'ca/server.ca'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_ca_file; -- fail, tenant has insufficient privileges +SET ssl_cert_file = 'crt/server.crt'; -- fail, requires reload +RESET ssl_cert_file; -- fail, requires reload +ALTER SYSTEM SET ssl_cert_file = 'crt/server.crt'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_cert_file; -- fail, tenant has insufficient privileges +SET ssl_crl_file = 'crl/server.crl'; -- fail, requires reload +RESET ssl_crl_file; -- fail, requires reload +ALTER SYSTEM SET ssl_crl_file = 'crl/server.crl'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_crl_file; -- fail, tenant has insufficient privileges +SET ssl_key_file = 'crl/server.key'; -- fail, requires reload +RESET ssl_key_file; -- fail, requires reload +ALTER SYSTEM SET ssl_key_file = 'crl/server.key'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_key_file; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY / STATS_COLLECTOR +SET stats_temp_directory = 'pg_stat_tmp'; -- fail, requires reload +RESET stats_temp_directory; -- fail, requires reload +ALTER SYSTEM SET stats_temp_directory = 'pg_stat_tmp'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET stats_temp_directory; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET krb_server_keyfile = 'krb/server.key'; -- fail, requires reload +RESET krb_server_keyfile; -- fail, requires reload +ALTER SYSTEM SET krb_server_keyfile = 'krb/server.key'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET krb_server_keyfile; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS / LOGGING_WHERE +SET log_file_mode = 50; -- fail, requires reload +RESET log_file_mode; -- fail, requires reload +ALTER SYSTEM SET log_file_mode = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_file_mode; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_LOGGING_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_rotation_age = 50; -- fail, requires reload +RESET log_rotation_age; -- fail, requires reload +ALTER SYSTEM SET log_rotation_age = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_rotation_age; -- fail, tenant has insufficient privileges +SET log_rotation_size = 50; -- fail, requires reload +RESET log_rotation_size; -- fail, requires reload +ALTER SYSTEM SET log_rotation_size = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_rotation_size; -- fail, tenant has insufficient privileges +SET log_truncate_on_rotation = ON; -- fail, requires reload +RESET log_truncate_on_rotation; -- fail, requires reload +ALTER SYSTEM SET log_truncate_on_rotation = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_truncate_on_rotation; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / CONN_AUTH_SSL +SET ssl_crl_dir = 'crl/'; -- fail, requires reload +RESET ssl_crl_dir; -- fail, requires reload +ALTER SYSTEM SET ssl_crl_dir = 'crl/'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_crl_dir; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET log_directory = 'log'; -- fail, requires reload +RESET log_directory; -- fail, requires reload +ALTER SYSTEM SET log_directory = 'log'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_directory; -- fail, tenant has insufficient privileges +SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, requires reload +RESET log_filename; -- fail, requires reload +ALTER SYSTEM SET log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_filename; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_AUTH +SET authentication_timeout = 50; -- fail, requires reload +RESET authentication_timeout; -- fail, requires reload +ALTER SYSTEM SET authentication_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET authentication_timeout; -- fail, tenant has insufficient privileges +SET db_user_namespace = ON; -- fail, requires reload +RESET db_user_namespace; -- fail, requires reload +ALTER SYSTEM SET db_user_namespace = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET db_user_namespace; -- fail, tenant has insufficient privileges +SET krb_caseins_users = ON; -- fail, requires reload +RESET krb_caseins_users; -- fail, requires reload +ALTER SYSTEM SET krb_caseins_users = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET krb_caseins_users; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / CONN_AUTH_SSL +SET ssl_ciphers = 'none'; -- fail, requires reload +RESET ssl_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_ciphers = 'none'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_ciphers; -- fail, tenant has insufficient privileges +SET ssl_dh_params_file = 'ssl/params'; -- fail, requires reload +RESET ssl_dh_params_file; -- fail, requires reload +ALTER SYSTEM SET ssl_dh_params_file = 'ssl/params'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_dh_params_file; -- fail, tenant has insufficient privileges +SET ssl_ecdh_curve = 'none'; -- fail, requires reload +RESET ssl_ecdh_curve; -- fail, requires reload +ALTER SYSTEM SET ssl_ecdh_curve = 'none'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_ecdh_curve; -- fail, tenant has insufficient privileges +SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, requires reload +RESET ssl_min_protocol_version; -- fail, requires reload +ALTER SYSTEM SET ssl_min_protocol_version = 'TLSv1.2'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_min_protocol_version; -- fail, tenant has insufficient privileges +SET ssl_passphrase_command = '/bin/passphrase'; -- fail, requires reload +RESET ssl_passphrase_command; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command = '/bin/passphrase'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_passphrase_command; -- fail, tenant has insufficient privileges +SET ssl_passphrase_command_supports_reload = ON; -- fail, requires reload +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- fail, tenant has insufficient privileges +SET ssl_prefer_server_ciphers = ON; -- fail, requires reload +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_prefer_server_ciphers = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS / DEVELOPER_OPTIONS +SET pre_auth_delay = 50; -- fail, requires reload +RESET pre_auth_delay; -- fail, requires reload +ALTER SYSTEM SET pre_auth_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET pre_auth_delay; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_INTERFACE_SETTINGS | GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_hostname = ON; -- fail, requires reload +RESET log_hostname; -- fail, requires reload +ALTER SYSTEM SET log_hostname = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_hostname; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_autovacuum_min_duration = 50; -- fail, requires reload +RESET log_autovacuum_min_duration; -- fail, requires reload +ALTER SYSTEM SET log_autovacuum_min_duration = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_autovacuum_min_duration; -- fail, tenant has insufficient privileges +SET log_checkpoints = ON; -- fail, requires reload +RESET log_checkpoints; -- fail, requires reload +ALTER SYSTEM SET log_checkpoints = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_checkpoints; -- fail, tenant has insufficient privileges +SET log_line_prefix = '%m [%p] '; -- fail, requires reload +RESET log_line_prefix; -- fail, requires reload +ALTER SYSTEM SET log_line_prefix = '%m [%p] '; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_line_prefix; -- fail, tenant has insufficient privileges +SET log_recovery_conflict_waits = ON; -- fail, requires reload +RESET log_recovery_conflict_waits; -- fail, requires reload +ALTER SYSTEM SET log_recovery_conflict_waits = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_recovery_conflict_waits; -- fail, tenant has insufficient privileges +SET log_timezone = 'Europe/Helsinki'; -- fail, requires reload +RESET log_timezone; -- fail, requires reload +ALTER SYSTEM SET log_timezone = 'Europe/Helsinki'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_timezone; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / LOGGING_WHERE +SET syslog_ident = 'postgres'; -- fail, requires reload +RESET syslog_ident; -- fail, requires reload +ALTER SYSTEM SET syslog_ident = 'postgres'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET syslog_ident; -- fail, tenant has insufficient privileges +SET syslog_sequence_numbers = ON; -- fail, requires reload +RESET syslog_sequence_numbers; -- fail, requires reload +ALTER SYSTEM SET syslog_sequence_numbers = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET syslog_sequence_numbers; -- fail, tenant has insufficient privileges +SET syslog_split_messages = ON; -- fail, requires reload +RESET syslog_split_messages; -- fail, requires reload +ALTER SYSTEM SET syslog_split_messages = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET syslog_split_messages; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET trace_recovery_messages = 'log'; -- fail, requires reload +RESET trace_recovery_messages; -- fail, requires reload +ALTER SYSTEM SET trace_recovery_messages = 'log'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET trace_recovery_messages; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_LOGGING_SETTINGS | GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_warning = 50; -- fail, requires reload +RESET checkpoint_warning; -- fail, requires reload +ALTER SYSTEM SET checkpoint_warning = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET checkpoint_warning; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / AUTOVACUUM +SET autovacuum_analyze_scale_factor = 50; -- fail, requires reload +RESET autovacuum_analyze_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_analyze_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_scale_factor; -- ok +SET autovacuum_analyze_threshold = 50; -- fail, requires reload +RESET autovacuum_analyze_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_analyze_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_analyze_threshold; -- ok +SET autovacuum_naptime = 50; -- fail, requires reload +RESET autovacuum_naptime; -- fail, requires reload +ALTER SYSTEM SET autovacuum_naptime = 50; -- ok +ALTER SYSTEM RESET autovacuum_naptime; -- ok +SET autovacuum_vacuum_cost_delay = 50; -- fail, requires reload +RESET autovacuum_vacuum_cost_delay; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_delay; -- ok +SET autovacuum_vacuum_cost_limit = 50; -- fail, requires reload +RESET autovacuum_vacuum_cost_limit; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_cost_limit = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- ok +SET autovacuum_vacuum_insert_scale_factor = 50; -- fail, requires reload +RESET autovacuum_vacuum_insert_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_insert_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_scale_factor; -- ok +SET autovacuum_vacuum_insert_threshold = 50; -- fail, requires reload +RESET autovacuum_vacuum_insert_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_insert_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_insert_threshold; -- ok +SET autovacuum_vacuum_scale_factor = 50; -- fail, requires reload +RESET autovacuum_vacuum_scale_factor; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_scale_factor = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_scale_factor; -- ok +SET autovacuum_vacuum_threshold = 50; -- fail, requires reload +RESET autovacuum_vacuum_threshold; -- fail, requires reload +ALTER SYSTEM SET autovacuum_vacuum_threshold = 50; -- ok +ALTER SYSTEM RESET autovacuum_vacuum_threshold; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS / REPLICATION_PRIMARY +SET vacuum_defer_cleanup_age = 50; -- fail, requires reload +RESET vacuum_defer_cleanup_age; -- fail, requires reload +ALTER SYSTEM SET vacuum_defer_cleanup_age = 50; -- ok +ALTER SYSTEM RESET vacuum_defer_cleanup_age; -- ok +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / AUTOVACUUM +SET autovacuum = ON; -- fail, requires reload +RESET autovacuum; -- fail, requires reload +ALTER SYSTEM SET autovacuum = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET autovacuum; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_MAINTENANCE_SETTINGS | GUC_RESOURCE_USAGE / RESOURCES_MEM +SET autovacuum_work_mem = 50; -- fail, requires reload +RESET autovacuum_work_mem; -- fail, requires reload +ALTER SYSTEM SET autovacuum_work_mem = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET autovacuum_work_mem; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / LOCK_MANAGEMENT +SET max_pred_locks_per_page = 50; -- fail, requires reload +RESET max_pred_locks_per_page; -- fail, requires reload +ALTER SYSTEM SET max_pred_locks_per_page = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_pred_locks_per_page; -- fail, tenant has insufficient privileges +SET max_pred_locks_per_relation = 50; -- fail, requires reload +RESET max_pred_locks_per_relation; -- fail, requires reload +ALTER SYSTEM SET max_pred_locks_per_relation = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_pred_locks_per_relation; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / REPLICATION_SUBSCRIBERS +SET max_sync_workers_per_subscription = 50; -- fail, requires reload +RESET max_sync_workers_per_subscription; -- fail, requires reload +ALTER SYSTEM SET max_sync_workers_per_subscription = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_sync_workers_per_subscription; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_RESOURCE_USAGE / RESOURCES_BGWRITER +SET bgwriter_delay = 50; -- fail, requires reload +RESET bgwriter_delay; -- fail, requires reload +ALTER SYSTEM SET bgwriter_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bgwriter_delay; -- fail, tenant has insufficient privileges +SET bgwriter_flush_after = 50; -- fail, requires reload +RESET bgwriter_flush_after; -- fail, requires reload +ALTER SYSTEM SET bgwriter_flush_after = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bgwriter_flush_after; -- fail, tenant has insufficient privileges +SET bgwriter_lru_maxpages = 50; -- fail, requires reload +RESET bgwriter_lru_maxpages; -- fail, requires reload +ALTER SYSTEM SET bgwriter_lru_maxpages = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bgwriter_lru_maxpages; -- fail, tenant has insufficient privileges +SET bgwriter_lru_multiplier = 5; -- fail, requires reload +RESET bgwriter_lru_multiplier; -- fail, requires reload +ALTER SYSTEM SET bgwriter_lru_multiplier = 5; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET bgwriter_lru_multiplier; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_RESOURCE_USAGE | GUC_WAL_SETTINGS / REPLICATION_SENDING +SET max_slot_wal_keep_size = 50; -- fail, requires reload +RESET max_slot_wal_keep_size; -- fail, requires reload +ALTER SYSTEM SET max_slot_wal_keep_size = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_slot_wal_keep_size; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = ON; -- fail, requires reload +RESET remove_temp_files_after_crash; -- fail, requires reload +ALTER SYSTEM SET remove_temp_files_after_crash = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET remove_temp_files_after_crash; -- fail, tenant has insufficient privileges +SET restart_after_crash = ON; -- fail, requires reload +RESET restart_after_crash; -- fail, requires reload +ALTER SYSTEM SET restart_after_crash = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET restart_after_crash; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_PRIMARY +SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, requires reload +RESET synchronous_standby_names; -- fail, requires reload +ALTER SYSTEM SET synchronous_standby_names = 'fee, fi, fo, fum'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET synchronous_standby_names; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_SENDING +SET wal_keep_size = 50; -- fail, requires reload +RESET wal_keep_size; -- fail, requires reload +ALTER SYSTEM SET wal_keep_size = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_keep_size; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / REPLICATION_STANDBY +SET hot_standby_feedback = ON; -- fail, requires reload +RESET hot_standby_feedback; -- fail, requires reload +ALTER SYSTEM SET hot_standby_feedback = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET hot_standby_feedback; -- fail, tenant has insufficient privileges +SET max_standby_archive_delay = 50; -- fail, requires reload +RESET max_standby_archive_delay; -- fail, requires reload +ALTER SYSTEM SET max_standby_archive_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_standby_archive_delay; -- fail, tenant has insufficient privileges +SET max_standby_streaming_delay = 50; -- fail, requires reload +RESET max_standby_streaming_delay; -- fail, requires reload +ALTER SYSTEM SET max_standby_streaming_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_standby_streaming_delay; -- fail, tenant has insufficient privileges +SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, requires reload +RESET primary_conninfo; -- fail, requires reload +ALTER SYSTEM SET primary_conninfo = 'postgresql://other@localhost/otherdb?connect_timeout=10&application_name=myapp'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET primary_conninfo; -- fail, tenant has insufficient privileges +SET primary_slot_name = 'bonne_fente'; -- fail, requires reload +RESET primary_slot_name; -- fail, requires reload +ALTER SYSTEM SET primary_slot_name = 'bonne_fente'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET primary_slot_name; -- fail, tenant has insufficient privileges +SET promote_trigger_file = 'promote.trigger'; -- fail, requires reload +RESET promote_trigger_file; -- fail, requires reload +ALTER SYSTEM SET promote_trigger_file = 'promote.trigger'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET promote_trigger_file; -- fail, tenant has insufficient privileges +SET recovery_min_apply_delay = 50; -- fail, requires reload +RESET recovery_min_apply_delay; -- fail, requires reload +ALTER SYSTEM SET recovery_min_apply_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET recovery_min_apply_delay; -- fail, tenant has insufficient privileges +SET wal_receiver_create_temp_slot = ON; -- fail, requires reload +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_create_temp_slot = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_receiver_create_temp_slot; -- fail, tenant has insufficient privileges +SET wal_receiver_status_interval = 50; -- fail, requires reload +RESET wal_receiver_status_interval; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_status_interval = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_receiver_status_interval; -- fail, tenant has insufficient privileges +SET wal_receiver_timeout = 50; -- fail, requires reload +RESET wal_receiver_timeout; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_receiver_timeout; -- fail, tenant has insufficient privileges +SET wal_retrieve_retry_interval = 50; -- fail, requires reload +RESET wal_retrieve_retry_interval; -- fail, requires reload +ALTER SYSTEM SET wal_retrieve_retry_interval = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_retrieve_retry_interval; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_ARCHIVING +SET archive_timeout = 50; -- fail, requires reload +RESET archive_timeout; -- fail, requires reload +ALTER SYSTEM SET archive_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET archive_timeout; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_CHECKPOINTS +SET checkpoint_completion_target = 0; -- fail, requires reload +RESET checkpoint_completion_target; -- fail, requires reload +ALTER SYSTEM SET checkpoint_completion_target = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET checkpoint_completion_target; -- fail, tenant has insufficient privileges +SET checkpoint_flush_after = 50; -- fail, requires reload +RESET checkpoint_flush_after; -- fail, requires reload +ALTER SYSTEM SET checkpoint_flush_after = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET checkpoint_flush_after; -- fail, tenant has insufficient privileges +SET checkpoint_timeout = 50; -- fail, requires reload +RESET checkpoint_timeout; -- fail, requires reload +ALTER SYSTEM SET checkpoint_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET checkpoint_timeout; -- fail, tenant has insufficient privileges +SET max_wal_size = 50; -- fail, requires reload +RESET max_wal_size; -- fail, requires reload +ALTER SYSTEM SET max_wal_size = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_wal_size; -- fail, tenant has insufficient privileges +SET min_wal_size = 50; -- fail, requires reload +RESET min_wal_size; -- fail, requires reload +ALTER SYSTEM SET min_wal_size = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET min_wal_size; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_WAL_SETTINGS / WAL_SETTINGS +SET fsync = ON; -- fail, requires reload +RESET fsync; -- fail, requires reload +ALTER SYSTEM SET fsync = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET fsync; -- fail, tenant has insufficient privileges +SET full_page_writes = ON; -- fail, requires reload +RESET full_page_writes; -- fail, requires reload +ALTER SYSTEM SET full_page_writes = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET full_page_writes; -- fail, tenant has insufficient privileges +SET wal_sync_method = 'open_datasync'; -- fail, requires reload +RESET wal_sync_method; -- fail, requires reload +ALTER SYSTEM SET wal_sync_method = 'open_datasync'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_sync_method; -- fail, tenant has insufficient privileges +SET wal_writer_delay = 50; -- fail, requires reload +RESET wal_writer_delay; -- fail, requires reload +ALTER SYSTEM SET wal_writer_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_writer_delay; -- fail, tenant has insufficient privileges +SET wal_writer_flush_after = 50; -- fail, requires reload +RESET wal_writer_flush_after; -- fail, requires reload +ALTER SYSTEM SET wal_writer_flush_after = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_writer_flush_after; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_ALL_PRIVILEGES / DEVELOPER_OPTIONS +SET allow_system_table_mods = ON; -- fail, tenant has insufficient privileges +RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET allow_system_table_mods = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_OTHER +SET dynamic_library_path = '$libdir'; -- fail, tenant has insufficient privileges +RESET dynamic_library_path; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET dynamic_library_path = '$libdir'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET dynamic_library_path; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY / CLIENT_CONN_PRELOAD +SET session_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +RESET session_preload_libraries; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET session_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET session_preload_libraries; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_dump_bitcode = ON; -- fail, tenant has insufficient privileges +RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET jit_dump_bitcode = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET lc_messages = 'en_US.UTF-8'; -- ok +RESET lc_messages; -- ok +ALTER SYSTEM SET lc_messages = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_messages; -- ok +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_RESOURCE_USAGE | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET debug_invalidate_system_caches_always = 2; -- fail, tenant has insufficient privileges +RESET debug_invalidate_system_caches_always; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET debug_invalidate_system_caches_always = 2; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET debug_invalidate_system_caches_always; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / LOCK_MANAGEMENT +SET deadlock_timeout = 1073741824; -- fail, tenant has insufficient privileges +RESET deadlock_timeout; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET deadlock_timeout = 1073741824; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET deadlock_timeout; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_LOGGING_SETTINGS / DEVELOPER_OPTIONS +SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- fail, tenant has insufficient privileges +RESET backtrace_functions; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET backtrace_functions = 'partition_list_bsearch,partition_range_datum_bsearch,partition_hash_bsearch'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET backtrace_functions; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_duration = ON; -- fail, tenant has insufficient privileges +RESET log_duration; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_duration = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_duration; -- fail, tenant has insufficient privileges +SET log_error_verbosity = 'default'; -- fail, tenant has insufficient privileges +RESET log_error_verbosity; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_error_verbosity = 'default'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_error_verbosity; -- fail, tenant has insufficient privileges +SET log_lock_waits = ON; -- fail, tenant has insufficient privileges +RESET log_lock_waits; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_lock_waits = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_lock_waits; -- fail, tenant has insufficient privileges +SET log_parameter_max_length = 50; -- fail, tenant has insufficient privileges +RESET log_parameter_max_length; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_parameter_max_length = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_parameter_max_length; -- fail, tenant has insufficient privileges +SET log_replication_commands = ON; -- fail, tenant has insufficient privileges +RESET log_replication_commands; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_replication_commands = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_replication_commands; -- fail, tenant has insufficient privileges +SET log_statement = 'none'; -- fail, tenant has insufficient privileges +RESET log_statement; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_statement = 'none'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_statement; -- fail, tenant has insufficient privileges +SET log_temp_files = 50; -- fail, tenant has insufficient privileges +RESET log_temp_files; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_temp_files = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_temp_files; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_LOGGING_SETTINGS / LOGGING_WHEN +SET log_min_duration_sample = 50; -- fail, tenant has insufficient privileges +RESET log_min_duration_sample; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_min_duration_sample = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_min_duration_sample; -- fail, tenant has insufficient privileges +SET log_min_duration_statement = 50; -- fail, tenant has insufficient privileges +RESET log_min_duration_statement; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_min_duration_statement = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_min_duration_statement; -- fail, tenant has insufficient privileges +SET log_min_error_statement = 'error'; -- fail, tenant has insufficient privileges +RESET log_min_error_statement; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_min_error_statement = 'error'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_min_error_statement; -- fail, tenant has insufficient privileges +SET log_min_messages = 'warning'; -- fail, tenant has insufficient privileges +RESET log_min_messages; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_min_messages = 'warning'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_min_messages; -- fail, tenant has insufficient privileges +SET log_statement_sample_rate = 0; -- fail, tenant has insufficient privileges +RESET log_statement_sample_rate; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_statement_sample_rate = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_statement_sample_rate; -- fail, tenant has insufficient privileges +SET log_transaction_sample_rate = 0; -- fail, tenant has insufficient privileges +RESET log_transaction_sample_rate; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_transaction_sample_rate = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_transaction_sample_rate; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_LOGGING_SETTINGS / STATS_MONITORING +SET log_executor_stats = ON; -- fail, tenant has insufficient privileges +RESET log_executor_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_executor_stats = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_executor_stats; -- fail, tenant has insufficient privileges +SET log_parser_stats = ON; -- fail, tenant has insufficient privileges +RESET log_parser_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_parser_stats = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_parser_stats; -- fail, tenant has insufficient privileges +SET log_planner_stats = ON; -- fail, tenant has insufficient privileges +RESET log_planner_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_planner_stats = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_planner_stats; -- fail, tenant has insufficient privileges +SET log_statement_stats = ON; -- fail, tenant has insufficient privileges +RESET log_statement_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_statement_stats = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_statement_stats; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_LOGGING_SETTINGS | GUC_SECURITY_SETTINGS / PROCESS_TITLE +SET update_process_title = ON; -- fail, tenant has insufficient privileges +RESET update_process_title; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET update_process_title = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET update_process_title; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_DISK +SET temp_file_limit = 50; -- fail, tenant has insufficient privileges +RESET temp_file_limit; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET temp_file_limit = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET temp_file_limit; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_RESOURCE_USAGE / RESOURCES_MEM +SET max_stack_depth = 3890; -- fail, tenant has insufficient privileges +RESET max_stack_depth; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET max_stack_depth = 3890; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET max_stack_depth; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_SECURITY_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = ON; -- fail, tenant has insufficient privileges +RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET lo_compat_privileges = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_COLLECTOR +SET track_activities = ON; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = ON; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = ON; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = ON; -- ok +ALTER SYSTEM RESET track_counts; -- ok +SET track_functions = 'none'; -- ok +RESET track_functions; -- ok +ALTER SYSTEM SET track_functions = 'none'; -- ok +ALTER SYSTEM RESET track_functions; -- ok +SET track_io_timing = ON; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = ON; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = ON; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = ON; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_STATS_SETTINGS / STATS_MONITORING +SET compute_query_id = ON; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = ON; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_STORAGE_SETTINGS / DEVELOPER_OPTIONS +SET ignore_checksum_failure = ON; -- fail, tenant has insufficient privileges +RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET ignore_checksum_failure = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +SET zero_damaged_pages = ON; -- fail, tenant has insufficient privileges +RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET zero_damaged_pages = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_WAL_SETTINGS / CLIENT_CONN_STATEMENT +SET session_replication_role = 'origin'; -- fail, tenant has insufficient privileges +RESET session_replication_role; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET session_replication_role = 'origin'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET session_replication_role; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_WAL_SETTINGS / DEVELOPER_OPTIONS +SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- fail, tenant has insufficient privileges +RESET wal_consistency_checking; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_consistency_checking = 'heap, heap2, btree, hash, gin, gist, sequence, spgist, brin, generic'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_consistency_checking; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_WAL_SETTINGS / WAL_SETTINGS +SET commit_delay = 50; -- fail, tenant has insufficient privileges +RESET commit_delay; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET commit_delay = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET commit_delay; -- fail, tenant has insufficient privileges +SET wal_compression = ON; -- fail, tenant has insufficient privileges +RESET wal_compression; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_compression = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_compression; -- fail, tenant has insufficient privileges +SET wal_init_zero = ON; -- fail, tenant has insufficient privileges +RESET wal_init_zero; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_init_zero = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_init_zero; -- fail, tenant has insufficient privileges +SET wal_recycle = ON; -- fail, tenant has insufficient privileges +RESET wal_recycle; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_recycle = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_recycle; -- fail, tenant has insufficient privileges +-- PGC_SU_BACKEND / GUC_FILESYSTEM_SECURITY | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_profiling_support = ON; -- fail, cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_profiling_support; -- fail, tenant has insufficient privileges +-- PGC_SU_BACKEND / GUC_INTERNAL_SETTINGS | GUC_SECURITY_SETTINGS / DEVELOPER_OPTIONS +SET jit_debugging_support = ON; -- fail, cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_debugging_support; -- fail, tenant has insufficient privileges +-- PGC_SU_BACKEND / GUC_LOGGING_SETTINGS / LOGGING_WHAT +SET log_connections = ON; -- fail, cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_connections = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_connections; -- fail, tenant has insufficient privileges +SET log_disconnections = ON; -- fail, cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_disconnections = ON; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_disconnections; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_LOCALE +SET DateStyle = 'ISO, MDY'; -- ok +RESET DateStyle; -- ok +ALTER SYSTEM SET DateStyle = 'ISO, MDY'; -- ok +ALTER SYSTEM RESET DateStyle; -- ok +SET IntervalStyle = 'postgres'; -- ok +RESET IntervalStyle; -- ok +ALTER SYSTEM SET IntervalStyle = 'postgres'; -- ok +ALTER SYSTEM RESET IntervalStyle; -- ok +SET TimeZone = 'Europe/Helsinki'; -- ok +RESET TimeZone; -- ok +ALTER SYSTEM SET TimeZone = 'Europe/Helsinki'; -- ok +ALTER SYSTEM RESET TimeZone; -- ok +SET client_encoding = 'UTF8'; -- ok +RESET client_encoding; -- ok +ALTER SYSTEM SET client_encoding = 'UTF8'; -- ok +ALTER SYSTEM RESET client_encoding; -- ok +SET default_text_search_config = 'pg_catalog.english'; -- ok +RESET default_text_search_config; -- ok +ALTER SYSTEM SET default_text_search_config = 'pg_catalog.english'; -- ok +ALTER SYSTEM RESET default_text_search_config; -- ok +SET extra_float_digits = -6; -- ok +RESET extra_float_digits; -- ok +ALTER SYSTEM SET extra_float_digits = -6; -- ok +ALTER SYSTEM RESET extra_float_digits; -- ok +SET lc_monetary = 'en_US.UTF-8'; -- ok +RESET lc_monetary; -- ok +ALTER SYSTEM SET lc_monetary = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_monetary; -- ok +SET lc_numeric = 'en_US.UTF-8'; -- ok +RESET lc_numeric; -- ok +ALTER SYSTEM SET lc_numeric = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_numeric; -- ok +SET lc_time = 'en_US.UTF-8'; -- ok +RESET lc_time; -- ok +ALTER SYSTEM SET lc_time = 'en_US.UTF-8'; -- ok +ALTER SYSTEM RESET lc_time; -- ok +SET timezone_abbreviations = 'Default'; -- ok +RESET timezone_abbreviations; -- ok +ALTER SYSTEM SET timezone_abbreviations = 'Default'; -- ok +ALTER SYSTEM RESET timezone_abbreviations; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_OTHER +SET gin_fuzzy_search_limit = 50; -- ok +RESET gin_fuzzy_search_limit; -- ok +ALTER SYSTEM SET gin_fuzzy_search_limit = 50; -- ok +ALTER SYSTEM RESET gin_fuzzy_search_limit; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- ok +ALTER SYSTEM RESET local_preload_libraries; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CLIENT_CONN_STATEMENT +SET bytea_output = 'hex'; -- ok +RESET bytea_output; -- ok +ALTER SYSTEM SET bytea_output = 'hex'; -- ok +ALTER SYSTEM RESET bytea_output; -- ok +SET check_function_bodies = ON; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = ON; -- ok +ALTER SYSTEM RESET check_function_bodies; -- ok +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- ok +ALTER SYSTEM RESET client_min_messages; -- ok +SET default_table_access_method = 'heap'; -- ok +RESET default_table_access_method; -- ok +ALTER SYSTEM SET default_table_access_method = 'heap'; -- ok +ALTER SYSTEM RESET default_table_access_method; -- ok +SET default_toast_compression = 'pglz'; -- ok +RESET default_toast_compression; -- ok +ALTER SYSTEM SET default_toast_compression = 'pglz'; -- ok +ALTER SYSTEM RESET default_toast_compression; -- ok +SET default_transaction_deferrable = ON; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = ON; -- ok +ALTER SYSTEM RESET default_transaction_deferrable; -- ok +SET default_transaction_isolation = 'read committed'; -- ok +RESET default_transaction_isolation; -- ok +ALTER SYSTEM SET default_transaction_isolation = 'read committed'; -- ok +ALTER SYSTEM RESET default_transaction_isolation; -- ok +SET default_transaction_read_only = ON; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = ON; -- ok +ALTER SYSTEM RESET default_transaction_read_only; -- ok +SET gin_pending_list_limit = 1073741855; -- ok +RESET gin_pending_list_limit; -- ok +ALTER SYSTEM SET gin_pending_list_limit = 1073741855; -- ok +ALTER SYSTEM RESET gin_pending_list_limit; -- ok +SET idle_in_transaction_session_timeout = 50; -- ok +RESET idle_in_transaction_session_timeout; -- ok +ALTER SYSTEM SET idle_in_transaction_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_in_transaction_session_timeout; -- ok +SET idle_session_timeout = 50; -- ok +RESET idle_session_timeout; -- ok +ALTER SYSTEM SET idle_session_timeout = 50; -- ok +ALTER SYSTEM RESET idle_session_timeout; -- ok +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET row_security = ON; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = ON; -- ok +ALTER SYSTEM RESET row_security; -- ok +SET search_path = '"$user", public'; -- ok +RESET search_path; -- ok +ALTER SYSTEM SET search_path = '"$user", public'; -- ok +ALTER SYSTEM RESET search_path; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +SET transaction_deferrable = ON; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = ON; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_deferrable; -- fail, cannot be changed +SET transaction_isolation = 'read committed'; -- ok +RESET transaction_isolation; -- ok +ALTER SYSTEM SET transaction_isolation = 'read committed'; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_isolation; -- fail, cannot be changed +SET transaction_read_only = ON; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = ON; -- fail, cannot be changed +ALTER SYSTEM RESET transaction_read_only; -- fail, cannot be changed +SET vacuum_failsafe_age = 50; -- ok +RESET vacuum_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_failsafe_age; -- ok +SET vacuum_freeze_min_age = 50; -- ok +RESET vacuum_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_min_age; -- ok +SET vacuum_freeze_table_age = 50; -- ok +RESET vacuum_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_freeze_table_age; -- ok +SET vacuum_multixact_failsafe_age = 50; -- ok +RESET vacuum_multixact_failsafe_age; -- ok +ALTER SYSTEM SET vacuum_multixact_failsafe_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_failsafe_age; -- ok +SET vacuum_multixact_freeze_min_age = 50; -- ok +RESET vacuum_multixact_freeze_min_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_min_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_min_age; -- ok +SET vacuum_multixact_freeze_table_age = 50; -- ok +RESET vacuum_multixact_freeze_table_age; -- ok +ALTER SYSTEM SET vacuum_multixact_freeze_table_age = 50; -- ok +ALTER SYSTEM RESET vacuum_multixact_freeze_table_age; -- ok +SET xmlbinary = 'base64'; -- ok +RESET xmlbinary; -- ok +ALTER SYSTEM SET xmlbinary = 'base64'; -- ok +ALTER SYSTEM RESET xmlbinary; -- ok +SET xmloption = 'content'; -- ok +RESET xmloption; -- ok +ALTER SYSTEM SET xmloption = 'content'; -- ok +ALTER SYSTEM RESET xmloption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = ON; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = ON; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = ON; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = ON; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = ON; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = ON; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = ON; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = ON; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = ON; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = ON; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- ok +ALTER SYSTEM RESET password_encryption; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- ok +ALTER SYSTEM RESET client_connection_check_interval; -- ok +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_count; -- ok +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_idle; -- ok +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- ok +ALTER SYSTEM RESET tcp_keepalives_interval; -- ok +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- ok +ALTER SYSTEM RESET tcp_user_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / CONN_AUTH_SSL +SET ssl_renegotiation_limit = 0; -- ok +RESET ssl_renegotiation_limit; -- ok +ALTER SYSTEM SET ssl_renegotiation_limit = 0; -- fail, cannot be changed +ALTER SYSTEM RESET ssl_renegotiation_limit; -- fail, cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / DEVELOPER_OPTIONS +SET force_parallel_mode = 'off'; -- ok +RESET force_parallel_mode; -- ok +ALTER SYSTEM SET force_parallel_mode = 'off'; -- ok +ALTER SYSTEM RESET force_parallel_mode; -- ok +SET jit_expressions = ON; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = ON; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +SET jit_tuple_deforming = ON; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = ON; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = ON; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = ON; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = ON; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = ON; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / ERROR_HANDLING_OPTIONS +SET exit_on_error = ON; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = ON; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- ok +ALTER SYSTEM RESET application_name; -- ok +SET debug_pretty_print = ON; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = ON; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = ON; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = ON; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = ON; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = ON; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = ON; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = ON; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +SET log_parameter_max_length_on_error = 50; -- ok +RESET log_parameter_max_length_on_error; -- ok +ALTER SYSTEM SET log_parameter_max_length_on_error = 50; -- ok +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_COST +SET cpu_index_tuple_cost = 50; -- ok +RESET cpu_index_tuple_cost; -- ok +ALTER SYSTEM SET cpu_index_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_index_tuple_cost; -- ok +SET cpu_operator_cost = 50; -- ok +RESET cpu_operator_cost; -- ok +ALTER SYSTEM SET cpu_operator_cost = 50; -- ok +ALTER SYSTEM RESET cpu_operator_cost; -- ok +SET cpu_tuple_cost = 50; -- ok +RESET cpu_tuple_cost; -- ok +ALTER SYSTEM SET cpu_tuple_cost = 50; -- ok +ALTER SYSTEM RESET cpu_tuple_cost; -- ok +SET effective_cache_size = 1073741824; -- ok +RESET effective_cache_size; -- ok +ALTER SYSTEM SET effective_cache_size = 1073741824; -- ok +ALTER SYSTEM RESET effective_cache_size; -- ok +SET jit_above_cost = 50; -- ok +RESET jit_above_cost; -- ok +ALTER SYSTEM SET jit_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_above_cost; -- ok +SET jit_inline_above_cost = 50; -- ok +RESET jit_inline_above_cost; -- ok +ALTER SYSTEM SET jit_inline_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_inline_above_cost; -- ok +SET jit_optimize_above_cost = 50; -- ok +RESET jit_optimize_above_cost; -- ok +ALTER SYSTEM SET jit_optimize_above_cost = 50; -- ok +ALTER SYSTEM RESET jit_optimize_above_cost; -- ok +SET min_parallel_index_scan_size = 50; -- ok +RESET min_parallel_index_scan_size; -- ok +ALTER SYSTEM SET min_parallel_index_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_index_scan_size; -- ok +SET min_parallel_table_scan_size = 50; -- ok +RESET min_parallel_table_scan_size; -- ok +ALTER SYSTEM SET min_parallel_table_scan_size = 50; -- ok +ALTER SYSTEM RESET min_parallel_table_scan_size; -- ok +SET parallel_setup_cost = 50; -- ok +RESET parallel_setup_cost; -- ok +ALTER SYSTEM SET parallel_setup_cost = 50; -- ok +ALTER SYSTEM RESET parallel_setup_cost; -- ok +SET parallel_tuple_cost = 50; -- ok +RESET parallel_tuple_cost; -- ok +ALTER SYSTEM SET parallel_tuple_cost = 50; -- ok +ALTER SYSTEM RESET parallel_tuple_cost; -- ok +SET random_page_cost = 50; -- ok +RESET random_page_cost; -- ok +ALTER SYSTEM SET random_page_cost = 50; -- ok +ALTER SYSTEM RESET random_page_cost; -- ok +SET seq_page_cost = 50; -- ok +RESET seq_page_cost; -- ok +ALTER SYSTEM SET seq_page_cost = 50; -- ok +ALTER SYSTEM RESET seq_page_cost; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_GEQO +SET geqo = ON; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = ON; -- ok +ALTER SYSTEM RESET geqo; -- ok +SET geqo_effort = 5; -- ok +RESET geqo_effort; -- ok +ALTER SYSTEM SET geqo_effort = 5; -- ok +ALTER SYSTEM RESET geqo_effort; -- ok +SET geqo_generations = 50; -- ok +RESET geqo_generations; -- ok +ALTER SYSTEM SET geqo_generations = 50; -- ok +ALTER SYSTEM RESET geqo_generations; -- ok +SET geqo_pool_size = 50; -- ok +RESET geqo_pool_size; -- ok +ALTER SYSTEM SET geqo_pool_size = 50; -- ok +ALTER SYSTEM RESET geqo_pool_size; -- ok +SET geqo_seed = 0; -- ok +RESET geqo_seed; -- ok +ALTER SYSTEM SET geqo_seed = 0; -- ok +ALTER SYSTEM RESET geqo_seed; -- ok +SET geqo_selection_bias = 2; -- ok +RESET geqo_selection_bias; -- ok +ALTER SYSTEM SET geqo_selection_bias = 2; -- ok +ALTER SYSTEM RESET geqo_selection_bias; -- ok +SET geqo_threshold = 1073741824; -- ok +RESET geqo_threshold; -- ok +ALTER SYSTEM SET geqo_threshold = 1073741824; -- ok +ALTER SYSTEM RESET geqo_threshold; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_METHOD +SET enable_async_append = ON; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = ON; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = ON; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = ON; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = ON; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = ON; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = ON; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = ON; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = ON; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = ON; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = ON; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = ON; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = ON; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = ON; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = ON; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = ON; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = ON; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = ON; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = ON; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = ON; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = ON; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = ON; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = ON; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = ON; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = ON; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = ON; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = ON; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = ON; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = ON; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = ON; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = ON; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = ON; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = ON; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = ON; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = ON; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = ON; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = ON; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = ON; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = ON; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / QUERY_TUNING_OTHER +SET constraint_exclusion = 'partition'; -- ok +RESET constraint_exclusion; -- ok +ALTER SYSTEM SET constraint_exclusion = 'partition'; -- ok +ALTER SYSTEM RESET constraint_exclusion; -- ok +SET cursor_tuple_fraction = 0; -- ok +RESET cursor_tuple_fraction; -- ok +ALTER SYSTEM SET cursor_tuple_fraction = 0; -- ok +ALTER SYSTEM RESET cursor_tuple_fraction; -- ok +SET default_statistics_target = 5000; -- ok +RESET default_statistics_target; -- ok +ALTER SYSTEM SET default_statistics_target = 5000; -- ok +ALTER SYSTEM RESET default_statistics_target; -- ok +SET from_collapse_limit = 1073741824; -- ok +RESET from_collapse_limit; -- ok +ALTER SYSTEM SET from_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET from_collapse_limit; -- ok +SET jit = ON; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = ON; -- ok +ALTER SYSTEM RESET jit; -- ok +SET join_collapse_limit = 1073741824; -- ok +RESET join_collapse_limit; -- ok +ALTER SYSTEM SET join_collapse_limit = 1073741824; -- ok +ALTER SYSTEM RESET join_collapse_limit; -- ok +SET plan_cache_mode = 'force_generic_plan'; -- ok +RESET plan_cache_mode; -- ok +ALTER SYSTEM SET plan_cache_mode = 'force_generic_plan'; -- ok +ALTER SYSTEM RESET plan_cache_mode; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- ok +ALTER SYSTEM RESET wal_sender_timeout; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- ok +ALTER SYSTEM RESET backend_flush_after; -- ok +SET max_parallel_maintenance_workers = 50; -- ok +RESET max_parallel_maintenance_workers; -- ok +ALTER SYSTEM SET max_parallel_maintenance_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_maintenance_workers; -- ok +SET max_parallel_workers = 50; -- ok +RESET max_parallel_workers; -- ok +ALTER SYSTEM SET max_parallel_workers = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers; -- ok +SET max_parallel_workers_per_gather = 50; -- ok +RESET max_parallel_workers_per_gather; -- ok +ALTER SYSTEM SET max_parallel_workers_per_gather = 50; -- ok +ALTER SYSTEM RESET max_parallel_workers_per_gather; -- ok +SET parallel_leader_participation = ON; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = ON; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_MEM +SET hash_mem_multiplier = 500; -- ok +RESET hash_mem_multiplier; -- ok +ALTER SYSTEM SET hash_mem_multiplier = 500; -- ok +ALTER SYSTEM RESET hash_mem_multiplier; -- ok +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- ok +ALTER SYSTEM RESET logical_decoding_work_mem; -- ok +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- ok +ALTER SYSTEM RESET maintenance_work_mem; -- ok +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- ok +ALTER SYSTEM RESET temp_buffers; -- ok +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- ok +ALTER SYSTEM RESET work_mem; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / RESOURCES_VACUUM_DELAY +SET vacuum_cost_delay = 50; -- ok +RESET vacuum_cost_delay; -- ok +ALTER SYSTEM SET vacuum_cost_delay = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_delay; -- ok +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- ok +ALTER SYSTEM RESET vacuum_cost_limit; -- ok +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- ok +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_hit; -- ok +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- ok +ALTER SYSTEM RESET vacuum_cost_page_miss; -- ok +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / UNGROUPED +SET seed = 0; -- ok +RESET seed; -- ok +ALTER SYSTEM SET seed = 0; -- fail, cannot be changed +ALTER SYSTEM RESET seed; -- fail, cannot be changed +-- PGC_USERSET / GUC_INTERNAL_SETTINGS / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- ok +ALTER SYSTEM RESET commit_siblings; -- ok +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- ok +ALTER SYSTEM RESET wal_skip_threshold; -- ok +-- PGC_USERSET / GUC_RESOURCE_USAGE / RESOURCES_ASYNCHRONOUS +SET effective_io_concurrency = 0; -- ok +RESET effective_io_concurrency; -- ok +ALTER SYSTEM SET effective_io_concurrency = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET effective_io_concurrency; -- fail, tenant has insufficient privileges +SET maintenance_io_concurrency = 0; -- ok +RESET maintenance_io_concurrency; -- ok +ALTER SYSTEM SET maintenance_io_concurrency = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET maintenance_io_concurrency; -- fail, tenant has insufficient privileges +RESET statement_timeout; +RESET SESSION AUTHORIZATION; +DROP ROLE tenant; -- 2.21.1 (Apple Git-122.3)