From 8eda6d2b60fe996152e7d97a3df990e91f6ce443 Mon Sep 17 00:00:00 2001 From: Mark Dilger Date: Tue, 25 May 2021 11:14:17 -0700 Subject: [PATCH v3 5/5] Allow SET and ALTER SYSTEM SET by non-superusers Reducing the number of administrative tasks that require superuser privileges by allowing non-superusers to execute SET and ALTER SYSTEM SET on most GUC variables, provided the user is a member of the appropriate security role. Each GUC variables, even USERSET ones, are associated with one or more of pg_database_security, pg_host_security, and pg_network_security. Users must be a member of the associated role(s) to perform ALTER SYSTEM SET on the variable. For non-USERSET variables, the same requirement is enforced to SET the variable. In no case does this prevent a user who previously could perform a SET or ALTER SYSTEM SET operation from doing so now. --- contrib/auth_delay/auth_delay.c | 1 + contrib/auto_explain/auto_explain.c | 12 + contrib/dblink/expected/dblink.out | 2 +- 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 | 756 ++++-- src/include/utils/guc.h | 13 + src/include/utils/guc_tables.h | 1 + src/pl/plperl/expected/plperl_setup.out | 4 +- 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 | 1823 +++++++++++++ src/test/regress/expected/guc_priv_tenant.out | 2275 +++++++++++++++++ src/test/regress/parallel_schedule | 2 +- src/test/regress/sql/guc_priv_admin.sql | 1449 +++++++++++ src/test/regress/sql/guc_priv_tenant.sql | 1447 +++++++++++ 22 files changed, 7625 insertions(+), 199 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..56a32ff2c3 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_NETWORK_SECURITY, GUC_UNIT_MS, NULL, NULL, diff --git a/contrib/auto_explain/auto_explain.c b/contrib/auto_explain/auto_explain.c index e9092ba359..1c9b77a91a 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_HOST_SECURITY, GUC_UNIT_MS, NULL, NULL, @@ -111,6 +112,7 @@ _PG_init(void) &auto_explain_log_analyze, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -122,6 +124,7 @@ _PG_init(void) &auto_explain_log_settings, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -133,6 +136,7 @@ _PG_init(void) &auto_explain_log_verbose, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -144,6 +148,7 @@ _PG_init(void) &auto_explain_log_buffers, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -155,6 +160,7 @@ _PG_init(void) &auto_explain_log_wal, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -166,6 +172,7 @@ _PG_init(void) &auto_explain_log_triggers, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -178,6 +185,7 @@ _PG_init(void) EXPLAIN_FORMAT_TEXT, format_options, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -190,6 +198,7 @@ _PG_init(void) LOG, loglevel_options, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -201,6 +210,7 @@ _PG_init(void) &auto_explain_log_nested_statements, false, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -212,6 +222,7 @@ _PG_init(void) &auto_explain_log_timing, true, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, @@ -225,6 +236,7 @@ _PG_init(void) 0.0, 1.0, PGC_SUSET, + GUC_HOST_SECURITY, 0, NULL, NULL, diff --git a/contrib/dblink/expected/dblink.out b/contrib/dblink/expected/dblink.out index 6516d4f131..d575891ad1 100644 --- a/contrib/dblink/expected/dblink.out +++ b/contrib/dblink/expected/dblink.out @@ -887,7 +887,7 @@ SET SESSION AUTHORIZATION regress_dblink_user; -- should fail SELECT dblink_connect('myconn', 'fdtest'); ERROR: password is required -DETAIL: Non-superusers must provide a password in the connection string. +DETAIL: Non-superusers other than pg_network_security must provide a password in the connection string. -- should succeed SELECT dblink_connect_u('myconn', 'fdtest'); dblink_connect_u diff --git a/contrib/pg_prewarm/autoprewarm.c b/contrib/pg_prewarm/autoprewarm.c index b3f73ea92d..ec9952c243 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_HOST_SECURITY, GUC_UNIT_S, NULL, NULL, @@ -131,6 +132,7 @@ _PG_init(void) &autoprewarm, true, PGC_POSTMASTER, + GUC_HOST_SECURITY, 0, NULL, NULL, diff --git a/contrib/pg_stat_statements/pg_stat_statements.c b/contrib/pg_stat_statements/pg_stat_statements.c index 09433c8c96..0a43d7346b 100644 --- a/contrib/pg_stat_statements/pg_stat_statements.c +++ b/contrib/pg_stat_statements/pg_stat_statements.c @@ -386,6 +386,7 @@ _PG_init(void) 100, INT_MAX, PGC_POSTMASTER, + GUC_DATABASE_SECURITY, 0, NULL, NULL, @@ -398,6 +399,7 @@ _PG_init(void) PGSS_TRACK_TOP, track_options, PGC_SUSET, + GUC_DATABASE_SECURITY, 0, NULL, NULL, @@ -409,6 +411,7 @@ _PG_init(void) &pgss_track_utility, true, PGC_SUSET, + GUC_DATABASE_SECURITY, 0, NULL, NULL, @@ -420,6 +423,7 @@ _PG_init(void) &pgss_track_planning, false, PGC_SUSET, + GUC_DATABASE_SECURITY, 0, NULL, NULL, @@ -431,6 +435,7 @@ _PG_init(void) &pgss_save, true, PGC_SIGHUP, + GUC_DATABASE_SECURITY, 0, NULL, NULL, diff --git a/contrib/pg_trgm/trgm_op.c b/contrib/pg_trgm/trgm_op.c index fb38135f7a..cc06df268b 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_DATABASE_SECURITY, 0, NULL, NULL, @@ -84,6 +85,7 @@ _PG_init(void) 0.0, 1.0, PGC_USERSET, + GUC_DATABASE_SECURITY, 0, NULL, NULL, @@ -96,6 +98,7 @@ _PG_init(void) 0.0, 1.0, PGC_USERSET, + GUC_DATABASE_SECURITY, 0, NULL, NULL, diff --git a/contrib/sepgsql/hooks.c b/contrib/sepgsql/hooks.c index 34de6158d6..912765e4c3 100644 --- a/contrib/sepgsql/hooks.c +++ b/contrib/sepgsql/hooks.c @@ -431,6 +431,7 @@ _PG_init(void) &sepgsql_permissive, false, PGC_SIGHUP, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE, NULL, NULL, @@ -449,6 +450,7 @@ _PG_init(void) &sepgsql_debug_audit, false, PGC_USERSET, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE, NULL, NULL, diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index ee731044b6..efc1d73540 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -956,6 +956,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_seqscan, @@ -966,6 +967,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_indexscan, @@ -976,6 +978,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_indexonlyscan, @@ -986,6 +989,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_bitmapscan, @@ -996,6 +1000,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_tidscan, @@ -1006,6 +1011,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_sort, @@ -1015,7 +1021,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_DATABASE_SECURITY }, &enable_incremental_sort, true, @@ -1025,6 +1032,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_hashagg, @@ -1035,6 +1043,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_material", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables the planner's use of materialization."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_material, @@ -1045,6 +1054,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_resultcache, @@ -1055,6 +1065,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_nestloop, @@ -1065,6 +1076,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_mergejoin, @@ -1075,6 +1087,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_hashjoin, @@ -1085,6 +1098,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_gathermerge, @@ -1095,6 +1109,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_partitionwise_join", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables partitionwise join."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_partitionwise_join, @@ -1105,6 +1120,7 @@ static struct config_bool ConfigureNamesBool[] = {"enable_partitionwise_aggregate", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enables partitionwise aggregation and grouping."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_partitionwise_aggregate, @@ -1115,6 +1131,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_parallel_append, @@ -1125,6 +1142,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_parallel_hash, @@ -1137,6 +1155,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_partition_pruning, @@ -1147,6 +1166,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_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_async_append, @@ -1158,6 +1178,7 @@ static struct config_bool ConfigureNamesBool[] = gettext_noop("Enables genetic query optimization."), gettext_noop("This algorithm attempts to do planning without " "exhaustive searching."), + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &enable_geqo, @@ -1169,6 +1190,7 @@ static struct config_bool ConfigureNamesBool[] = {"is_superuser", PGC_INTERNAL, UNGROUPED, gettext_noop("Shows whether the current user is a superuser."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT | GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &session_auth_is_superuser, @@ -1178,7 +1200,8 @@ static struct config_bool ConfigureNamesBool[] = { {"bonjour", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Enables advertising the server via Bonjour."), - NULL + NULL, + GUC_NETWORK_SECURITY }, &enable_bonjour, false, @@ -1187,7 +1210,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_commit_timestamp", PGC_POSTMASTER, REPLICATION_SENDING, gettext_noop("Collects transaction commit time."), - NULL + NULL, + GUC_HOST_SECURITY }, &track_commit_timestamp, false, @@ -1196,7 +1220,8 @@ static struct config_bool ConfigureNamesBool[] = { {"ssl", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Enables SSL connections."), - NULL + NULL, + GUC_NETWORK_SECURITY }, &EnableSSL, false, @@ -1205,7 +1230,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_NETWORK_SECURITY }, &ssl_passphrase_command_supports_reload, false, @@ -1214,7 +1240,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_NETWORK_SECURITY }, &SSLPreferServerCiphers, true, @@ -1226,7 +1253,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_HOST_SECURITY }, &enableFsync, true, @@ -1241,6 +1269,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &ignore_checksum_failure, @@ -1255,6 +1284,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &zero_damaged_pages, @@ -1274,6 +1304,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &ignore_invalid_pages, @@ -1287,7 +1318,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_HOST_SECURITY }, &fullPageWrites, true, @@ -1297,7 +1329,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_HOST_SECURITY }, &wal_log_hints, false, @@ -1307,7 +1340,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_HOST_SECURITY }, &wal_compression, false, @@ -1317,7 +1351,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_HOST_SECURITY }, &wal_init_zero, true, @@ -1327,7 +1362,8 @@ static struct config_bool ConfigureNamesBool[] = { {"wal_recycle", PGC_SUSET, WAL_SETTINGS, gettext_noop("Recycles WAL files by renaming them."), - NULL + NULL, + GUC_HOST_SECURITY }, &wal_recycle, true, @@ -1337,7 +1373,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_checkpoints", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Logs each checkpoint."), - NULL + NULL, + GUC_HOST_SECURITY }, &log_checkpoints, false, @@ -1346,7 +1383,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_connections", PGC_SU_BACKEND, LOGGING_WHAT, gettext_noop("Logs each successful connection."), - NULL + NULL, + GUC_HOST_SECURITY | GUC_NETWORK_SECURITY }, &Log_connections, false, @@ -1355,7 +1393,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &Log_disconnections, false, @@ -1364,7 +1403,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_replication_commands", PGC_SUSET, LOGGING_WHAT, gettext_noop("Logs each replication command."), - NULL + NULL, + GUC_HOST_SECURITY }, &log_replication_commands, false, @@ -1374,6 +1414,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &assert_enabled, @@ -1388,7 +1429,8 @@ static struct config_bool ConfigureNamesBool[] = { {"exit_on_error", PGC_USERSET, ERROR_HANDLING_OPTIONS, gettext_noop("Terminate session on any error."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &ExitOnAnyError, false, @@ -1397,7 +1439,8 @@ static struct config_bool ConfigureNamesBool[] = { {"restart_after_crash", PGC_SIGHUP, ERROR_HANDLING_OPTIONS, gettext_noop("Reinitialize server after backend crash."), - NULL + NULL, + GUC_HOST_SECURITY }, &restart_after_crash, true, @@ -1406,7 +1449,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_HOST_SECURITY }, &remove_temp_files_after_crash, true, @@ -1416,7 +1460,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_HOST_SECURITY }, &log_duration, false, @@ -1425,7 +1470,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_print_parse", PGC_USERSET, LOGGING_WHAT, gettext_noop("Logs each query's parse tree."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &Debug_print_parse, false, @@ -1434,7 +1480,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_DATABASE_SECURITY }, &Debug_print_rewritten, false, @@ -1443,7 +1490,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_print_plan", PGC_USERSET, LOGGING_WHAT, gettext_noop("Logs each query's execution plan."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &Debug_print_plan, false, @@ -1452,7 +1500,8 @@ static struct config_bool ConfigureNamesBool[] = { {"debug_pretty_print", PGC_USERSET, LOGGING_WHAT, gettext_noop("Indents parse and plan tree displays."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &Debug_pretty_print, true, @@ -1461,7 +1510,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_HOST_SECURITY }, &log_parser_stats, false, @@ -1470,7 +1520,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_HOST_SECURITY }, &log_planner_stats, false, @@ -1479,7 +1530,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_HOST_SECURITY }, &log_executor_stats, false, @@ -1488,7 +1540,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_HOST_SECURITY }, &log_statement_stats, false, @@ -1499,6 +1552,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &log_btree_build_stats, @@ -1512,7 +1566,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_DATABASE_SECURITY }, &pgstat_track_activities, true, @@ -1521,7 +1576,8 @@ static struct config_bool ConfigureNamesBool[] = { {"track_counts", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects statistics on database activity."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &pgstat_track_counts, true, @@ -1530,7 +1586,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_DATABASE_SECURITY }, &track_io_timing, false, @@ -1539,7 +1596,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_DATABASE_SECURITY }, &track_wal_io_timing, false, @@ -1549,7 +1607,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_HOST_SECURITY }, &update_process_title, #ifdef WIN32 @@ -1563,7 +1622,8 @@ static struct config_bool ConfigureNamesBool[] = { {"autovacuum", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Starts the autovacuum subprocess."), - NULL + NULL, + GUC_HOST_SECURITY }, &autovacuum_start_daemon, true, @@ -1574,6 +1634,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_notify", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Generates debugging output for LISTEN and NOTIFY."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_notify, @@ -1586,6 +1647,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_locks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about lock usage."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_locks, @@ -1596,6 +1658,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_userlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about user lock usage."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_userlocks, @@ -1606,6 +1669,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_lwlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emits information about lightweight lock usage."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_lwlocks, @@ -1616,6 +1680,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &Debug_deadlocks, @@ -1627,7 +1692,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_lock_waits", PGC_SUSET, LOGGING_WHAT, gettext_noop("Logs long lock waits."), - NULL + NULL, + GUC_HOST_SECURITY }, &log_lock_waits, false, @@ -1636,7 +1702,8 @@ static struct config_bool ConfigureNamesBool[] = { {"log_recovery_conflict_waits", PGC_SIGHUP, LOGGING_WHAT, gettext_noop("Logs standby recovery conflict waits."), - NULL + NULL, + GUC_HOST_SECURITY }, &log_recovery_conflict_waits, false, @@ -1648,7 +1715,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_HOST_SECURITY }, &log_hostname, false, @@ -1661,7 +1729,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_DATABASE_SECURITY }, &Transform_null_equals, false, @@ -1670,7 +1739,8 @@ static struct config_bool ConfigureNamesBool[] = { {"db_user_namespace", PGC_SIGHUP, CONN_AUTH_AUTH, gettext_noop("Enables per-database user names."), - NULL + NULL, + GUC_HOST_SECURITY }, &Db_user_namespace, false, @@ -1680,6 +1750,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_DATABASE_SECURITY, GUC_REPORT }, &DefaultXactReadOnly, @@ -1690,6 +1761,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_DATABASE_SECURITY, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactReadOnly, @@ -1699,7 +1771,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_DATABASE_SECURITY }, &DefaultXactDeferrable, false, @@ -1709,6 +1782,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_DATABASE_SECURITY, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactDeferrable, @@ -1718,7 +1792,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_DATABASE_SECURITY }, &row_security, true, @@ -1727,7 +1802,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_DATABASE_SECURITY }, &check_function_bodies, true, @@ -1738,7 +1814,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_DATABASE_SECURITY }, &Array_nulls, true, @@ -1754,6 +1831,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_DATABASE_SECURITY, GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE }, &default_with_oids, @@ -1763,7 +1841,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_HOST_SECURITY }, &Logging_collector, false, @@ -1772,7 +1851,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_HOST_SECURITY }, &Log_truncate_on_rotation, false, @@ -1784,6 +1864,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_sort", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Emit information about resource usage in sorting."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &trace_sort, @@ -1798,6 +1879,7 @@ static struct config_bool ConfigureNamesBool[] = {"trace_syncscan", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Generate debugging output for synchronized scanning."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &trace_syncscan, @@ -1813,6 +1895,7 @@ static struct config_bool ConfigureNamesBool[] = "optimize_bounded_sort", PGC_USERSET, QUERY_TUNING_METHOD, gettext_noop("Enable bounded sorting using heap sort."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_EXPLAIN }, &optimize_bounded_sort, @@ -1826,6 +1909,7 @@ static struct config_bool ConfigureNamesBool[] = {"wal_debug", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Emit WAL-related debugging output."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &XLOG_DEBUG, @@ -1838,6 +1922,7 @@ static struct config_bool ConfigureNamesBool[] = {"integer_datetimes", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether datetimes are integer based."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &integer_datetimes, @@ -1848,7 +1933,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_NETWORK_SECURITY }, &pg_krb_caseins_users, false, @@ -1858,7 +1944,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_DATABASE_SECURITY }, &escape_string_warning, true, @@ -1869,6 +1956,7 @@ static struct config_bool ConfigureNamesBool[] = {"standard_conforming_strings", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Causes '...' strings to treat backslashes literally."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT }, &standard_conforming_strings, @@ -1879,7 +1967,8 @@ static struct config_bool ConfigureNamesBool[] = { {"synchronize_seqscans", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS, gettext_noop("Enable synchronized sequential scans."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &synchronize_seqscans, true, @@ -1889,7 +1978,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_HOST_SECURITY }, &recoveryTargetInclusive, true, @@ -1899,7 +1989,8 @@ static struct config_bool ConfigureNamesBool[] = { {"hot_standby", PGC_POSTMASTER, REPLICATION_STANDBY, gettext_noop("Allows connections and queries during recovery."), - NULL + NULL, + GUC_NETWORK_SECURITY }, &EnableHotStandby, true, @@ -1909,7 +2000,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_NETWORK_SECURITY }, &hot_standby_feedback, false, @@ -1920,6 +2012,7 @@ static struct config_bool ConfigureNamesBool[] = {"in_hot_standby", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows whether hot standby is currently active."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &in_hot_standby, @@ -1931,6 +2024,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_DATABASE_SECURITY | GUC_HOST_SECURITY | GUC_NETWORK_SECURITY, GUC_NOT_IN_SAMPLE }, &allowSystemTableMods, @@ -1943,6 +2037,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &IgnoreSystemIndexes, @@ -1954,7 +2049,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_HOST_SECURITY }, &lo_compat_privileges, false, @@ -1965,6 +2061,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_DATABASE_SECURITY, }, "e_all_identifiers, false, @@ -1975,6 +2072,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &data_checksums, @@ -1985,7 +2083,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_HOST_SECURITY }, &syslog_sequence_numbers, true, @@ -1995,7 +2094,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_HOST_SECURITY }, &syslog_split_messages, true, @@ -2006,6 +2106,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_DATABASE_SECURITY, GUC_EXPLAIN }, ¶llel_leader_participation, @@ -2017,6 +2118,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit", PGC_USERSET, QUERY_TUNING_OTHER, gettext_noop("Allow JIT compilation."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &jit_enabled, @@ -2028,6 +2130,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_debugging_support", PGC_SU_BACKEND, DEVELOPER_OPTIONS, gettext_noop("Register JIT-compiled functions with debugger."), NULL, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &jit_debugging_support, @@ -2045,6 +2148,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &jit_dump_bitcode, @@ -2056,6 +2160,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_expressions", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Allow JIT compilation of expressions."), NULL, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &jit_expressions, @@ -2067,6 +2172,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &jit_profiling_support, @@ -2084,6 +2190,7 @@ static struct config_bool ConfigureNamesBool[] = {"jit_tuple_deforming", PGC_USERSET, DEVELOPER_OPTIONS, gettext_noop("Allow JIT compilation of tuple deforming."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE }, &jit_tuple_deforming, @@ -2094,6 +2201,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_HOST_SECURITY }, &data_sync_retry, false, @@ -2103,6 +2212,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_NETWORK_SECURITY }, &wal_receiver_create_temp_slot, false, @@ -2123,6 +2234,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_HOST_SECURITY, GUC_UNIT_S }, &XLogArchiveTimeout, @@ -2133,6 +2245,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_NETWORK_SECURITY, GUC_NOT_IN_SAMPLE | GUC_UNIT_S }, &PostAuthDelay, @@ -2143,7 +2256,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_DATABASE_SECURITY }, &default_statistics_target, 100, 1, 10000, @@ -2156,6 +2270,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_DATABASE_SECURITY, GUC_EXPLAIN }, &from_collapse_limit, @@ -2169,6 +2284,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_DATABASE_SECURITY, GUC_EXPLAIN }, &join_collapse_limit, @@ -2179,6 +2295,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_DATABASE_SECURITY, GUC_EXPLAIN }, &geqo_threshold, @@ -2189,6 +2306,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_DATABASE_SECURITY, GUC_EXPLAIN }, &Geqo_effort, @@ -2199,6 +2317,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_DATABASE_SECURITY, GUC_EXPLAIN }, &Geqo_pool_size, @@ -2209,6 +2328,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_DATABASE_SECURITY, GUC_EXPLAIN }, &Geqo_generations, @@ -2221,6 +2341,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_HOST_SECURITY, GUC_UNIT_MS }, &DeadlockTimeout, @@ -2232,6 +2353,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_NETWORK_SECURITY, GUC_UNIT_MS }, &max_standby_archive_delay, @@ -2243,6 +2365,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_NETWORK_SECURITY, GUC_UNIT_MS }, &max_standby_streaming_delay, @@ -2254,6 +2377,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_NETWORK_SECURITY, GUC_UNIT_MS }, &recovery_min_apply_delay, @@ -2265,6 +2389,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_NETWORK_SECURITY, GUC_UNIT_S }, &wal_receiver_status_interval, @@ -2276,6 +2401,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_NETWORK_SECURITY, GUC_UNIT_MS }, &wal_receiver_timeout, @@ -2286,7 +2412,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_NETWORK_SECURITY }, &MaxConnections, 100, 1, MAX_BACKENDS, @@ -2297,7 +2424,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_NETWORK_SECURITY }, &ReservedBackends, 3, 0, MAX_BACKENDS, @@ -2308,6 +2436,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_HOST_SECURITY, GUC_UNIT_MB }, &min_dynamic_shared_memory, @@ -2323,6 +2452,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_HOST_SECURITY, GUC_UNIT_BLOCKS }, &NBuffers, @@ -2334,6 +2464,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_HOST_SECURITY, GUC_UNIT_BLOCKS | GUC_EXPLAIN }, &num_temp_buffers, @@ -2344,7 +2475,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_NETWORK_SECURITY }, &PostPortNumber, DEF_PGPORT, 1, 65535, @@ -2359,7 +2491,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_NETWORK_SECURITY }, &Unix_socket_permissions, 0777, 0000, 0777, @@ -2373,7 +2506,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_HOST_SECURITY }, &Log_file_mode, 0600, 0000, 0777, @@ -2388,6 +2522,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &data_directory_mode, @@ -2401,6 +2536,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_HOST_SECURITY, GUC_UNIT_KB | GUC_EXPLAIN }, &work_mem, @@ -2412,6 +2548,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_HOST_SECURITY, GUC_UNIT_KB }, &maintenance_work_mem, @@ -2424,6 +2561,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_HOST_SECURITY, GUC_UNIT_KB }, &logical_decoding_work_mem, @@ -2440,6 +2578,7 @@ static struct config_int ConfigureNamesInt[] = {"max_stack_depth", PGC_SUSET, RESOURCES_MEM, gettext_noop("Sets the maximum stack depth, in kilobytes."), NULL, + GUC_HOST_SECURITY, GUC_UNIT_KB }, &max_stack_depth, @@ -2451,6 +2590,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_HOST_SECURITY, GUC_UNIT_KB }, &temp_file_limit, @@ -2461,7 +2601,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_HOST_SECURITY }, &VacuumCostPageHit, 1, 0, 10000, @@ -2471,7 +2612,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_HOST_SECURITY }, &VacuumCostPageMiss, 2, 0, 10000, @@ -2481,7 +2623,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_HOST_SECURITY }, &VacuumCostPageDirty, 20, 0, 10000, @@ -2491,7 +2634,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_HOST_SECURITY }, &VacuumCostLimit, 200, 1, 10000, @@ -2501,7 +2645,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_HOST_SECURITY }, &autovacuum_vac_cost_limit, -1, -1, 10000, @@ -2511,7 +2656,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_HOST_SECURITY }, &max_files_per_process, 1000, 64, INT_MAX, @@ -2524,7 +2670,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_HOST_SECURITY }, &max_prepared_xacts, 0, 0, MAX_BACKENDS, @@ -2536,6 +2683,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_lock_oidmin, @@ -2546,6 +2694,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_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &Trace_lock_table, @@ -2558,6 +2707,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_HOST_SECURITY, GUC_UNIT_MS }, &StatementTimeout, @@ -2569,6 +2719,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_HOST_SECURITY, GUC_UNIT_MS }, &LockTimeout, @@ -2580,6 +2731,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_DATABASE_SECURITY, GUC_UNIT_MS }, &IdleInTransactionSessionTimeout, @@ -2591,6 +2743,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_DATABASE_SECURITY, GUC_UNIT_MS }, &IdleSessionTimeout, @@ -2601,7 +2754,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_DATABASE_SECURITY }, &vacuum_freeze_min_age, 50000000, 0, 1000000000, @@ -2611,7 +2765,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_DATABASE_SECURITY }, &vacuum_freeze_table_age, 150000000, 0, 2000000000, @@ -2621,7 +2776,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_DATABASE_SECURITY }, &vacuum_multixact_freeze_min_age, 5000000, 0, 1000000000, @@ -2631,7 +2787,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_DATABASE_SECURITY }, &vacuum_multixact_freeze_table_age, 150000000, 0, 2000000000, @@ -2641,7 +2798,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_DATABASE_SECURITY }, &vacuum_defer_cleanup_age, 0, 0, 1000000, /* see ComputeXidHorizons */ @@ -2650,7 +2808,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_DATABASE_SECURITY }, &vacuum_failsafe_age, 1600000000, 0, 2100000000, @@ -2659,7 +2818,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_DATABASE_SECURITY }, &vacuum_multixact_failsafe_age, 1600000000, 0, 2100000000, @@ -2674,7 +2834,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_HOST_SECURITY }, &max_locks_per_xact, 64, 10, INT_MAX, @@ -2686,7 +2847,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_HOST_SECURITY }, &max_predicate_locks_per_xact, 64, 10, INT_MAX, @@ -2697,7 +2859,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_HOST_SECURITY }, &max_predicate_locks_per_relation, -2, INT_MIN, INT_MAX, @@ -2708,7 +2871,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_HOST_SECURITY }, &max_predicate_locks_per_page, 2, 0, INT_MAX, @@ -2719,6 +2883,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_NETWORK_SECURITY, GUC_UNIT_S }, &AuthenticationTimeout, @@ -2731,6 +2896,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_NETWORK_SECURITY, GUC_NOT_IN_SAMPLE | GUC_UNIT_S }, &PreAuthDelay, @@ -2742,6 +2908,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_HOST_SECURITY, GUC_UNIT_MB }, &wal_keep_size_mb, @@ -2753,6 +2920,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_HOST_SECURITY, GUC_UNIT_MB }, &min_wal_size_mb, @@ -2765,6 +2933,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_HOST_SECURITY, GUC_UNIT_MB }, &max_wal_size_mb, @@ -2777,6 +2946,7 @@ static struct config_int ConfigureNamesInt[] = {"checkpoint_timeout", PGC_SIGHUP, WAL_CHECKPOINTS, gettext_noop("Sets the maximum time between automatic WAL checkpoints."), NULL, + GUC_HOST_SECURITY, GUC_UNIT_S }, &CheckPointTimeout, @@ -2791,6 +2961,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_HOST_SECURITY, GUC_UNIT_S }, &CheckPointWarning, @@ -2802,6 +2973,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_HOST_SECURITY, GUC_UNIT_BLOCKS }, &checkpoint_flush_after, @@ -2813,6 +2985,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_HOST_SECURITY, GUC_UNIT_XBLOCKS }, &XLOGbuffers, @@ -2824,6 +2997,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_HOST_SECURITY, GUC_UNIT_MS }, &WalWriterDelay, @@ -2835,6 +3009,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_HOST_SECURITY, GUC_UNIT_XBLOCKS }, &WalWriterFlushAfter, @@ -2846,6 +3021,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_HOST_SECURITY, GUC_UNIT_KB }, &wal_skip_threshold, @@ -2856,7 +3032,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_HOST_SECURITY }, &max_wal_senders, 10, 0, MAX_BACKENDS, @@ -2867,7 +3044,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_HOST_SECURITY }, &max_replication_slots, 10, 0, MAX_BACKENDS /* XXX? */ , @@ -2880,6 +3058,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_HOST_SECURITY, GUC_UNIT_MB }, &max_slot_wal_keep_size_mb, @@ -2891,6 +3070,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_HOST_SECURITY, GUC_UNIT_MS }, &wal_sender_timeout, @@ -2902,7 +3082,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_HOST_SECURITY /* we have no microseconds designation, so can't supply units here */ }, &CommitDelay, @@ -2914,7 +3095,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_HOST_SECURITY }, &CommitSiblings, 5, 0, 1000, @@ -2927,7 +3109,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_DATABASE_SECURITY }, &extra_float_digits, 1, -15, 3, @@ -2940,6 +3123,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_HOST_SECURITY, GUC_UNIT_MS }, &log_min_duration_sample, @@ -2952,6 +3136,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_HOST_SECURITY, GUC_UNIT_MS }, &log_min_duration_statement, @@ -2964,6 +3149,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_HOST_SECURITY, GUC_UNIT_MS }, &Log_autovacuum_min_duration, @@ -2975,6 +3161,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_HOST_SECURITY, GUC_UNIT_BYTE }, &log_parameter_max_length, @@ -2986,6 +3173,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_HOST_SECURITY, GUC_UNIT_BYTE }, &log_parameter_max_length_on_error, @@ -2997,6 +3185,7 @@ static struct config_int ConfigureNamesInt[] = {"bgwriter_delay", PGC_SIGHUP, RESOURCES_BGWRITER, gettext_noop("Background writer sleep time between rounds."), NULL, + GUC_HOST_SECURITY, GUC_UNIT_MS }, &BgWriterDelay, @@ -3007,7 +3196,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_HOST_SECURITY }, &bgwriter_lru_maxpages, 100, 0, INT_MAX / 2, /* Same upper limit as shared_buffers */ @@ -3018,6 +3208,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_HOST_SECURITY, GUC_UNIT_BLOCKS }, &bgwriter_flush_after, @@ -3031,6 +3222,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_HOST_SECURITY, GUC_EXPLAIN }, &effective_io_concurrency, @@ -3049,6 +3241,7 @@ static struct config_int ConfigureNamesInt[] = RESOURCES_ASYNCHRONOUS, gettext_noop("A variant of effective_io_concurrency that is used for maintenance work."), NULL, + GUC_HOST_SECURITY, GUC_EXPLAIN }, &maintenance_io_concurrency, @@ -3065,6 +3258,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_HOST_SECURITY, GUC_UNIT_BLOCKS }, &backend_flush_after, @@ -3078,6 +3272,7 @@ static struct config_int ConfigureNamesInt[] = RESOURCES_ASYNCHRONOUS, gettext_noop("Maximum number of concurrent worker processes."), NULL, + GUC_HOST_SECURITY }, &max_worker_processes, 8, 0, MAX_BACKENDS, @@ -3090,6 +3285,7 @@ static struct config_int ConfigureNamesInt[] = REPLICATION_SUBSCRIBERS, gettext_noop("Maximum number of logical replication worker processes."), NULL, + GUC_HOST_SECURITY }, &max_logical_replication_workers, 4, 0, MAX_BACKENDS, @@ -3102,6 +3298,7 @@ static struct config_int ConfigureNamesInt[] = REPLICATION_SUBSCRIBERS, gettext_noop("Maximum number of table synchronization workers per subscription."), NULL, + GUC_HOST_SECURITY }, &max_sync_workers_per_subscription, 2, 0, MAX_BACKENDS, @@ -3112,6 +3309,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_HOST_SECURITY, GUC_UNIT_MIN }, &Log_RotationAge, @@ -3123,6 +3321,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_HOST_SECURITY, GUC_UNIT_KB }, &Log_RotationSize, @@ -3134,6 +3333,7 @@ static struct config_int ConfigureNamesInt[] = {"max_function_args", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum number of function arguments."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_function_args, @@ -3145,6 +3345,7 @@ static struct config_int ConfigureNamesInt[] = {"max_index_keys", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum number of index keys."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_index_keys, @@ -3156,6 +3357,7 @@ static struct config_int ConfigureNamesInt[] = {"max_identifier_length", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the maximum identifier length."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &max_identifier_length, @@ -3167,6 +3369,7 @@ static struct config_int ConfigureNamesInt[] = {"block_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the size of a disk block."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &block_size, @@ -3178,6 +3381,7 @@ static struct config_int ConfigureNamesInt[] = {"segment_size", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the number of pages per disk file."), NULL, + GUC_DATABASE_SECURITY, GUC_UNIT_BLOCKS | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &segment_size, @@ -3189,6 +3393,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &wal_block_size, @@ -3201,6 +3406,7 @@ static struct config_int ConfigureNamesInt[] = gettext_noop("Sets the time to wait before retrying to retrieve WAL " "after a failed attempt."), NULL, + GUC_HOST_SECURITY, GUC_UNIT_MS }, &wal_retrieve_retry_interval, @@ -3212,6 +3418,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_HOST_SECURITY, GUC_UNIT_BYTE | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &wal_segment_size, @@ -3225,6 +3432,7 @@ static struct config_int ConfigureNamesInt[] = {"autovacuum_naptime", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Time to sleep between autovacuum runs."), NULL, + GUC_DATABASE_SECURITY, GUC_UNIT_S }, &autovacuum_naptime, @@ -3234,7 +3442,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_DATABASE_SECURITY }, &autovacuum_vac_thresh, 50, 0, INT_MAX, @@ -3243,7 +3452,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_DATABASE_SECURITY }, &autovacuum_vac_ins_thresh, 1000, -1, INT_MAX, @@ -3252,7 +3462,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_DATABASE_SECURITY }, &autovacuum_anl_thresh, 50, 0, INT_MAX, @@ -3262,7 +3473,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_DATABASE_SECURITY }, &autovacuum_freeze_max_age, @@ -3277,7 +3489,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_DATABASE_SECURITY }, &autovacuum_multixact_freeze_max_age, 400000000, 10000, 2000000000, @@ -3287,7 +3500,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_HOST_SECURITY }, &autovacuum_max_workers, 3, 1, MAX_BACKENDS, @@ -3297,7 +3511,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_DATABASE_SECURITY }, &max_parallel_maintenance_workers, 2, 0, 1024, @@ -3308,6 +3523,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_DATABASE_SECURITY, GUC_EXPLAIN }, &max_parallel_workers_per_gather, @@ -3319,6 +3535,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_DATABASE_SECURITY, GUC_EXPLAIN }, &max_parallel_workers, @@ -3330,6 +3547,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_HOST_SECURITY, GUC_UNIT_KB }, &autovacuum_work_mem, @@ -3341,6 +3559,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_HOST_SECURITY, GUC_UNIT_MIN }, &old_snapshot_threshold, @@ -3352,6 +3571,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_NETWORK_SECURITY, GUC_UNIT_S }, &tcp_keepalives_idle, @@ -3363,6 +3583,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_NETWORK_SECURITY, GUC_UNIT_S }, &tcp_keepalives_interval, @@ -3374,6 +3595,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_NETWORK_SECURITY, GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE, }, &ssl_renegotiation_limit, @@ -3387,6 +3609,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_NETWORK_SECURITY }, &tcp_keepalives_count, 0, 0, INT_MAX, @@ -3397,6 +3620,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_DATABASE_SECURITY, 0 }, &GinFuzzySearchLimit, @@ -3409,6 +3633,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_DATABASE_SECURITY, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &effective_cache_size, @@ -3420,6 +3645,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_DATABASE_SECURITY, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &min_parallel_table_scan_size, @@ -3431,6 +3657,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_DATABASE_SECURITY, GUC_UNIT_BLOCKS | GUC_EXPLAIN, }, &min_parallel_index_scan_size, @@ -3443,6 +3670,7 @@ static struct config_int ConfigureNamesInt[] = {"server_version_num", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server version as an integer."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_version_num, @@ -3454,6 +3682,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_HOST_SECURITY, GUC_UNIT_KB }, &log_temp_files, @@ -3465,6 +3694,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_HOST_SECURITY, GUC_UNIT_BYTE }, &pgstat_track_activity_query_size, @@ -3476,6 +3706,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_DATABASE_SECURITY, GUC_UNIT_KB }, &gin_pending_list_limit, @@ -3487,6 +3718,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_NETWORK_SECURITY, GUC_UNIT_MS }, &tcp_user_timeout, @@ -3498,6 +3730,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_HOST_SECURITY, GUC_UNIT_KB }, &huge_page_size, @@ -3509,6 +3742,7 @@ static struct config_int ConfigureNamesInt[] = {"debug_invalidate_system_caches_always", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Aggressively invalidate system caches for debugging purposes."), NULL, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE }, &debug_invalidate_system_caches_always, @@ -3532,6 +3766,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_NETWORK_SECURITY, GUC_UNIT_MS }, &client_connection_check_interval, @@ -3553,6 +3788,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of a " "sequentially fetched disk page."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &seq_page_cost, @@ -3564,6 +3800,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of a " "nonsequentially fetched disk page."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &random_page_cost, @@ -3575,6 +3812,7 @@ static struct config_real ConfigureNamesReal[] = gettext_noop("Sets the planner's estimate of the cost of " "processing each tuple (row)."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &cpu_tuple_cost, @@ -3586,6 +3824,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_DATABASE_SECURITY, GUC_EXPLAIN }, &cpu_index_tuple_cost, @@ -3597,6 +3836,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_DATABASE_SECURITY, GUC_EXPLAIN }, &cpu_operator_cost, @@ -3608,6 +3848,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_DATABASE_SECURITY, GUC_EXPLAIN }, ¶llel_tuple_cost, @@ -3619,6 +3860,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_DATABASE_SECURITY, GUC_EXPLAIN }, ¶llel_setup_cost, @@ -3630,6 +3872,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_DATABASE_SECURITY, GUC_EXPLAIN }, &jit_above_cost, @@ -3641,6 +3884,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_DATABASE_SECURITY, GUC_EXPLAIN }, &jit_optimize_above_cost, @@ -3652,6 +3896,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_DATABASE_SECURITY, GUC_EXPLAIN }, &jit_inline_above_cost, @@ -3664,6 +3909,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_DATABASE_SECURITY, GUC_EXPLAIN }, &cursor_tuple_fraction, @@ -3675,6 +3921,7 @@ static struct config_real ConfigureNamesReal[] = {"geqo_selection_bias", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: selective pressure within the population."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &Geqo_selection_bias, @@ -3686,6 +3933,7 @@ static struct config_real ConfigureNamesReal[] = {"geqo_seed", PGC_USERSET, QUERY_TUNING_GEQO, gettext_noop("GEQO: seed for random path selection."), NULL, + GUC_DATABASE_SECURITY, GUC_EXPLAIN }, &Geqo_seed, @@ -3697,6 +3945,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_DATABASE_SECURITY, GUC_EXPLAIN }, &hash_mem_multiplier, @@ -3707,7 +3956,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_HOST_SECURITY }, &bgwriter_lru_multiplier, 2.0, 0.0, 10.0, @@ -3718,6 +3968,7 @@ static struct config_real ConfigureNamesReal[] = {"seed", PGC_USERSET, UNGROUPED, gettext_noop("Sets the seed for random-number generation."), NULL, + GUC_DATABASE_SECURITY, GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &phony_random_seed, @@ -3729,6 +3980,7 @@ static struct config_real ConfigureNamesReal[] = {"vacuum_cost_delay", PGC_USERSET, RESOURCES_VACUUM_DELAY, gettext_noop("Vacuum cost delay in milliseconds."), NULL, + GUC_DATABASE_SECURITY, GUC_UNIT_MS }, &VacuumCostDelay, @@ -3740,6 +3992,7 @@ static struct config_real ConfigureNamesReal[] = {"autovacuum_vacuum_cost_delay", PGC_SIGHUP, AUTOVACUUM, gettext_noop("Vacuum cost delay in milliseconds, for autovacuum."), NULL, + GUC_DATABASE_SECURITY, GUC_UNIT_MS }, &autovacuum_vac_cost_delay, @@ -3750,7 +4003,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_DATABASE_SECURITY }, &autovacuum_vac_scale, 0.2, 0.0, 100.0, @@ -3760,7 +4014,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_DATABASE_SECURITY }, &autovacuum_vac_ins_scale, 0.2, 0.0, 100.0, @@ -3770,7 +4025,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_DATABASE_SECURITY }, &autovacuum_anl_scale, 0.1, 0.0, 100.0, @@ -3780,7 +4036,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_HOST_SECURITY }, &CheckPointCompletionTarget, 0.9, 0.0, 1.0, @@ -3790,7 +4047,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_HOST_SECURITY }, &log_statement_sample_rate, 1.0, 0.0, 1.0, @@ -3801,7 +4059,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_HOST_SECURITY }, &log_xact_sample_rate, 0.0, 0.0, 1.0, @@ -3820,7 +4079,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_HOST_SECURITY }, &XLogArchiveCommand, "", @@ -3830,7 +4090,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_HOST_SECURITY }, &recoveryRestoreCommand, "", @@ -3840,7 +4101,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_HOST_SECURITY }, &archiveCleanupCommand, "", @@ -3850,7 +4112,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_HOST_SECURITY }, &recoveryEndCommand, "", @@ -3860,7 +4123,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_HOST_SECURITY }, &recovery_target_timeline_string, "latest", @@ -3870,7 +4134,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_HOST_SECURITY }, &recovery_target_string, "", @@ -3879,7 +4144,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_HOST_SECURITY }, &recovery_target_xid_string, "", @@ -3888,7 +4154,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_HOST_SECURITY }, &recovery_target_time_string, "", @@ -3897,7 +4164,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_HOST_SECURITY }, &recovery_target_name_string, "", @@ -3906,7 +4174,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_HOST_SECURITY }, &recovery_target_lsn_string, "", @@ -3916,7 +4185,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_HOST_SECURITY }, &PromoteTriggerFile, "", @@ -3927,7 +4197,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_SUPERUSER_ONLY + GUC_NETWORK_SECURITY }, &PrimaryConnInfo, "", @@ -3937,7 +4207,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_NETWORK_SECURITY }, &PrimarySlotName, "", @@ -3948,6 +4219,7 @@ static struct config_string ConfigureNamesString[] = {"client_encoding", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the client's character set encoding."), NULL, + GUC_DATABASE_SECURITY, GUC_IS_NAME | GUC_REPORT }, &client_encoding_string, @@ -3958,7 +4230,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_HOST_SECURITY }, &Log_line_prefix, "%m [%p] ", @@ -3968,7 +4241,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_HOST_SECURITY }, &log_timezone_string, "GMT", @@ -3980,6 +4254,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_DATABASE_SECURITY, GUC_LIST_INPUT | GUC_REPORT }, &datestyle_string, @@ -3991,6 +4266,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_DATABASE_SECURITY, GUC_IS_NAME }, &default_table_access_method, @@ -4002,6 +4278,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_DATABASE_SECURITY, GUC_IS_NAME }, &default_tablespace, @@ -4013,6 +4290,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_DATABASE_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE }, &temp_tablespaces, @@ -4027,7 +4305,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_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &Dynamic_library_path, "$libdir", @@ -4038,7 +4316,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_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &pg_krb_server_keyfile, PG_KRB_SRVTAB, @@ -4048,7 +4326,8 @@ static struct config_string ConfigureNamesString[] = { {"bonjour_name", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the Bonjour service name."), - NULL + NULL, + GUC_NETWORK_SECURITY }, &bonjour_name, "", @@ -4061,6 +4340,7 @@ static struct config_string ConfigureNamesString[] = {"lc_collate", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the collation order locale."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &locale_collate, @@ -4072,6 +4352,7 @@ static struct config_string ConfigureNamesString[] = {"lc_ctype", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the character classification and case conversion locale."), NULL, + GUC_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &locale_ctype, @@ -4082,7 +4363,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_DATABASE_SECURITY }, &locale_messages, "", @@ -4092,7 +4374,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_DATABASE_SECURITY }, &locale_monetary, "C", @@ -4102,7 +4385,8 @@ static struct config_string ConfigureNamesString[] = { {"lc_numeric", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the locale for formatting numbers."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &locale_numeric, "C", @@ -4112,7 +4396,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_DATABASE_SECURITY }, &locale_time, "C", @@ -4123,6 +4408,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_HOST_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &session_preload_libraries_string, @@ -4134,6 +4420,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_HOST_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &shared_preload_libraries_string, @@ -4145,6 +4432,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_HOST_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE }, &local_preload_libraries_string, @@ -4156,6 +4444,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_DATABASE_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_EXPLAIN }, &namespace_search_path, @@ -4168,6 +4457,7 @@ static struct config_string ConfigureNamesString[] = {"server_encoding", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server (database) character set encoding."), NULL, + GUC_DATABASE_SECURITY, GUC_IS_NAME | GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_encoding_string, @@ -4180,6 +4470,7 @@ static struct config_string ConfigureNamesString[] = {"server_version", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the server version."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &server_version_string, @@ -4192,6 +4483,7 @@ static struct config_string ConfigureNamesString[] = {"role", PGC_USERSET, UNGROUPED, gettext_noop("Sets the current role."), NULL, + GUC_DATABASE_SECURITY, 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, @@ -4204,6 +4496,7 @@ static struct config_string ConfigureNamesString[] = {"session_authorization", PGC_USERSET, UNGROUPED, gettext_noop("Sets the session user name."), NULL, + GUC_NETWORK_SECURITY, 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, @@ -4217,6 +4510,7 @@ static struct config_string ConfigureNamesString[] = gettext_noop("Valid values are combinations of \"stderr\", " "\"syslog\", \"csvlog\", and \"eventlog\", " "depending on the platform."), + GUC_HOST_SECURITY, GUC_LIST_INPUT }, &Log_destination_string, @@ -4228,6 +4522,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_HOST_SECURITY, GUC_SUPERUSER_ONLY }, &Log_directory, @@ -4238,6 +4533,7 @@ static struct config_string ConfigureNamesString[] = {"log_filename", PGC_SIGHUP, LOGGING_WHERE, gettext_noop("Sets the file name pattern for log files."), NULL, + GUC_HOST_SECURITY, GUC_SUPERUSER_ONLY }, &Log_filename, @@ -4249,7 +4545,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_HOST_SECURITY }, &syslog_ident_str, "postgres", @@ -4260,7 +4557,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_HOST_SECURITY }, &event_source, DEFAULT_EVENT_SOURCE, @@ -4271,6 +4569,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_DATABASE_SECURITY, GUC_REPORT }, &timezone_string, @@ -4280,7 +4579,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_DATABASE_SECURITY }, &timezone_abbreviations_string, NULL, @@ -4291,7 +4591,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_NETWORK_SECURITY }, &Unix_socket_group, "", @@ -4302,6 +4603,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_NETWORK_SECURITY, GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &Unix_socket_directories, @@ -4317,6 +4619,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_NETWORK_SECURITY, GUC_LIST_INPUT }, &ListenAddresses, @@ -4332,6 +4635,7 @@ static struct config_string ConfigureNamesString[] = {"data_directory", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's data directory."), NULL, + GUC_HOST_SECURITY, GUC_SUPERUSER_ONLY | GUC_DISALLOW_IN_AUTO_FILE }, &data_directory, @@ -4343,6 +4647,7 @@ static struct config_string ConfigureNamesString[] = {"config_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's main configuration file."), NULL, + GUC_HOST_SECURITY, GUC_DISALLOW_IN_FILE | GUC_SUPERUSER_ONLY }, &ConfigFileName, @@ -4354,7 +4659,7 @@ static struct config_string ConfigureNamesString[] = {"hba_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's \"hba\" configuration file."), NULL, - GUC_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &HbaFileName, NULL, @@ -4365,7 +4670,7 @@ static struct config_string ConfigureNamesString[] = {"ident_file", PGC_POSTMASTER, FILE_LOCATIONS, gettext_noop("Sets the server's \"ident\" configuration file."), NULL, - GUC_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &IdentFileName, NULL, @@ -4376,7 +4681,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_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &external_pid_file, NULL, @@ -4387,6 +4692,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_library", PGC_INTERNAL, PRESET_OPTIONS, gettext_noop("Shows the name of the SSL library."), NULL, + GUC_HOST_SECURITY, GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &ssl_library, @@ -4401,7 +4707,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_cert_file, "server.crt", @@ -4411,7 +4718,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_key_file, "server.key", @@ -4421,7 +4729,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_ca_file, "", @@ -4431,7 +4740,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_crl_file, "", @@ -4441,7 +4751,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_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_crl_dir, "", @@ -4452,7 +4763,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_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &pgstat_temp_directory, PG_STAT_TMP_DIR, @@ -4463,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_NETWORK_SECURITY, GUC_LIST_INPUT }, &SyncRepStandbyNames, @@ -4473,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_DATABASE_SECURITY }, &TSCurrentConfig, "pg_catalog.simple", @@ -4484,7 +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_SUPERUSER_ONLY + GUC_NETWORK_SECURITY }, &SSLCipherSuites, #ifdef USE_OPENSSL @@ -4499,7 +4812,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_SUPERUSER_ONLY + GUC_NETWORK_SECURITY }, &SSLECDHCurve, #ifdef USE_SSL @@ -4514,7 +4827,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_SUPERUSER_ONLY + GUC_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_dh_params_file, "", @@ -4525,7 +4838,7 @@ static struct config_string ConfigureNamesString[] = {"ssl_passphrase_command", PGC_SIGHUP, CONN_AUTH_SSL, gettext_noop("Command to obtain passphrases for SSL."), NULL, - GUC_SUPERUSER_ONLY + GUC_HOST_SECURITY | GUC_NETWORK_SECURITY }, &ssl_passphrase_command, "", @@ -4536,6 +4849,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_HOST_SECURITY, GUC_IS_NAME | GUC_REPORT | GUC_NOT_IN_SAMPLE }, &application_name, @@ -4547,6 +4861,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_HOST_SECURITY, GUC_IS_NAME }, &cluster_name, @@ -4558,6 +4873,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_HOST_SECURITY, GUC_LIST_INPUT | GUC_NOT_IN_SAMPLE }, &wal_consistency_checking_string, @@ -4569,7 +4885,7 @@ static struct config_string ConfigureNamesString[] = {"jit_provider", PGC_POSTMASTER, CLIENT_CONN_PRELOAD, gettext_noop("JIT provider to use."), NULL, - GUC_SUPERUSER_ONLY + GUC_HOST_SECURITY }, &jit_provider, "llvmjit", @@ -4580,7 +4896,7 @@ static struct config_string ConfigureNamesString[] = {"backtrace_functions", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("Log backtrace for errors in these functions."), NULL, - GUC_NOT_IN_SAMPLE + GUC_HOST_SECURITY }, &backtrace_functions, "", @@ -4599,7 +4915,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_DATABASE_SECURITY }, &backslash_quote, BACKSLASH_QUOTE_SAFE_ENCODING, backslash_quote_options, @@ -4609,7 +4926,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"bytea_output", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the output format for bytea."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &bytea_output, BYTEA_OUTPUT_HEX, bytea_output_options, @@ -4620,7 +4938,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_NETWORK_SECURITY }, &client_min_messages, NOTICE, client_message_level_options, @@ -4630,7 +4949,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"compute_query_id", PGC_SUSET, STATS_MONITORING, gettext_noop("Compute query identifiers."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &compute_query_id, COMPUTE_QUERY_ID_AUTO, compute_query_id_options, @@ -4642,6 +4962,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_DATABASE_SECURITY, GUC_EXPLAIN }, &constraint_exclusion, @@ -4653,6 +4974,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_DATABASE_SECURITY, GUC_IS_NAME }, &default_toast_compression, @@ -4663,7 +4985,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_DATABASE_SECURITY }, &DefaultXactIsoLevel, XACT_READ_COMMITTED, isolation_level_options, @@ -4674,6 +4997,7 @@ static struct config_enum ConfigureNamesEnum[] = {"transaction_isolation", PGC_USERSET, CLIENT_CONN_STATEMENT, gettext_noop("Sets the current transaction's isolation level."), NULL, + GUC_DATABASE_SECURITY, GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE }, &XactIsoLevel, @@ -4685,6 +5009,7 @@ static struct config_enum ConfigureNamesEnum[] = {"IntervalStyle", PGC_USERSET, CLIENT_CONN_LOCALE, gettext_noop("Sets the display format for interval values."), NULL, + GUC_DATABASE_SECURITY, GUC_REPORT }, &IntervalStyle, @@ -4695,7 +5020,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"log_error_verbosity", PGC_SUSET, LOGGING_WHAT, gettext_noop("Sets the verbosity of logged messages."), - NULL + NULL, + GUC_HOST_SECURITY }, &Log_error_verbosity, PGERROR_DEFAULT, log_error_verbosity_options, @@ -4706,7 +5032,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_HOST_SECURITY }, &log_min_messages, WARNING, server_message_level_options, @@ -4717,7 +5044,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_HOST_SECURITY }, &log_min_error_statement, ERROR, server_message_level_options, @@ -4727,7 +5055,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"log_statement", PGC_SUSET, LOGGING_WHAT, gettext_noop("Sets the type of statements logged."), - NULL + NULL, + GUC_HOST_SECURITY }, &log_statement, LOGSTMT_NONE, log_statement_options, @@ -4737,7 +5066,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_HOST_SECURITY }, &syslog_facility, #ifdef HAVE_SYSLOG @@ -4752,7 +5082,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_NETWORK_SECURITY }, &SessionReplicationRole, SESSION_REPLICATION_ROLE_ORIGIN, session_replication_role_options, @@ -4762,7 +5093,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"synchronous_commit", PGC_USERSET, WAL_SETTINGS, gettext_noop("Sets the current transaction's synchronization level."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &synchronous_commit, SYNCHRONOUS_COMMIT_ON, synchronous_commit_options, @@ -4772,7 +5104,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_HOST_SECURITY }, &XLogArchiveMode, ARCHIVE_MODE_OFF, archive_mode_options, @@ -4782,7 +5115,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_HOST_SECURITY }, &recoveryTargetAction, RECOVERY_TARGET_ACTION_PAUSE, recovery_target_action_options, @@ -4793,7 +5127,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_HOST_SECURITY }, &trace_recovery_messages, @@ -4808,7 +5143,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"track_functions", PGC_SUSET, STATS_COLLECTOR, gettext_noop("Collects function-level statistics on database activity."), - NULL + NULL, + GUC_DATABASE_SECURITY }, &pgstat_track_functions, TRACK_FUNC_OFF, track_function_options, @@ -4818,7 +5154,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_HOST_SECURITY }, &wal_level, WAL_LEVEL_REPLICA, wal_level_options, @@ -4828,7 +5165,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_HOST_SECURITY }, &dynamic_shared_memory_type, DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE, dynamic_shared_memory_options, @@ -4838,7 +5176,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_HOST_SECURITY }, &shared_memory_type, DEFAULT_SHARED_MEMORY_TYPE, shared_memory_options, @@ -4848,7 +5187,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_HOST_SECURITY }, &sync_method, DEFAULT_SYNC_METHOD, sync_method_options, @@ -4858,7 +5198,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_DATABASE_SECURITY }, &xmlbinary, XMLBINARY_BASE64, xmlbinary_options, @@ -4869,7 +5210,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_DATABASE_SECURITY }, &xmloption, XMLOPTION_CONTENT, xmloption_options, @@ -4879,7 +5221,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_HOST_SECURITY }, &huge_pages, HUGE_PAGES_TRY, huge_pages_options, @@ -4890,6 +5233,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_DATABASE_SECURITY, GUC_NOT_IN_SAMPLE | GUC_EXPLAIN }, &force_parallel_mode, @@ -4900,7 +5244,8 @@ static struct config_enum ConfigureNamesEnum[] = { {"password_encryption", PGC_USERSET, CONN_AUTH_AUTH, gettext_noop("Chooses the algorithm for encrypting passwords."), - NULL + NULL, + GUC_NETWORK_SECURITY }, &Password_encryption, PASSWORD_TYPE_SCRAM_SHA_256, password_encryption_options, @@ -4913,6 +5258,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_DATABASE_SECURITY, GUC_EXPLAIN }, &plan_cache_mode, @@ -4924,7 +5270,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_SUPERUSER_ONLY + GUC_NETWORK_SECURITY }, &ssl_min_protocol_version, PG_TLS1_2_VERSION, @@ -4936,7 +5282,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_SUPERUSER_ONLY + GUC_NETWORK_SECURITY }, &ssl_max_protocol_version, PG_TLS_ANY, @@ -4947,6 +5293,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_HOST_SECURITY, }, &recovery_init_sync_method, RECOVERY_INIT_SYNC_METHOD_FSYNC, recovery_init_sync_method_options, @@ -7233,6 +7581,24 @@ parse_and_validate_value(struct config_generic *record, return true; } +static bool +role_has_privileges(Oid roleid, int privileges) +{ + if ((privileges & GUC_DATABASE_SECURITY) && + ! has_privs_of_role(roleid, ROLE_PG_DATABASE_SECURITY)) + return false; + + if ((privileges & GUC_HOST_SECURITY) && + ! has_privs_of_role(roleid, ROLE_PG_HOST_SECURITY)) + return false; + + if ((privileges & GUC_NETWORK_SECURITY) && + ! has_privs_of_role(roleid, ROLE_PG_NETWORK_SECURITY)) + return false; + + return true; +} + /* * Sets option `name' to given value. @@ -7380,7 +7746,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), @@ -7427,7 +7794,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), @@ -8469,26 +8837,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); @@ -8532,6 +8904,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. */ @@ -8893,6 +9274,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) @@ -8938,6 +9320,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; @@ -9136,6 +9519,7 @@ DefineCustomBoolVariable(const char *name, bool *valueAddr, bool bootValue, GucContext context, + int privileges, int flags, GucBoolCheckHook check_hook, GucBoolAssignHook assign_hook, @@ -9144,8 +9528,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; @@ -9164,6 +9548,7 @@ DefineCustomIntVariable(const char *name, int minValue, int maxValue, GucContext context, + int privileges, int flags, GucIntCheckHook check_hook, GucIntAssignHook assign_hook, @@ -9172,8 +9557,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; @@ -9194,6 +9579,7 @@ DefineCustomRealVariable(const char *name, double minValue, double maxValue, GucContext context, + int privileges, int flags, GucRealCheckHook check_hook, GucRealAssignHook assign_hook, @@ -9202,8 +9588,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; @@ -9222,6 +9608,7 @@ DefineCustomStringVariable(const char *name, char **valueAddr, const char *bootValue, GucContext context, + int privileges, int flags, GucStringCheckHook check_hook, GucStringAssignHook assign_hook, @@ -9230,8 +9617,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; @@ -9248,6 +9635,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, @@ -9256,8 +9644,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/utils/guc.h b/src/include/utils/guc.h index a7c3a4958e..87e49b8960 100644 --- a/src/include/utils/guc.h +++ b/src/include/utils/guc.h @@ -198,6 +198,14 @@ typedef enum #define GUC_QUALIFIER_SEPARATOR '.' +/* + * privilege bits required to modify a GUC variable + */ +#define GUC_DATABASE_SECURITY 0x0001 /* internal behavior */ +#define GUC_HOST_SECURITY 0x0002 /* storage error behavior */ +#define GUC_NETWORK_SECURITY 0x0004 /* connection and authentication */ +#define GUC_ALL_PRIVILEGES 0x0007 /* all of the above */ + /* * bit values in "flags" of a GUC variable */ @@ -294,6 +302,7 @@ extern void DefineCustomBoolVariable(const char *name, bool *valueAddr, bool bootValue, GucContext context, + int privileges, int flags, GucBoolCheckHook check_hook, GucBoolAssignHook assign_hook, @@ -307,6 +316,7 @@ extern void DefineCustomIntVariable(const char *name, int minValue, int maxValue, GucContext context, + int privileges, int flags, GucIntCheckHook check_hook, GucIntAssignHook assign_hook, @@ -320,6 +330,7 @@ extern void DefineCustomRealVariable(const char *name, double minValue, double maxValue, GucContext context, + int privileges, int flags, GucRealCheckHook check_hook, GucRealAssignHook assign_hook, @@ -331,6 +342,7 @@ extern void DefineCustomStringVariable(const char *name, char **valueAddr, const char *bootValue, GucContext context, + int privileges, int flags, GucStringCheckHook check_hook, GucStringAssignHook assign_hook, @@ -343,6 +355,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/expected/plperl_setup.out b/src/pl/plperl/expected/plperl_setup.out index a1a24dfb41..bab9b3db53 100644 --- a/src/pl/plperl/expected/plperl_setup.out +++ b/src/pl/plperl/expected/plperl_setup.out @@ -12,7 +12,7 @@ ERROR: permission denied to create extension "plperl" HINT: Must have CREATE privilege on current database to create this extension. CREATE EXTENSION plperlu; -- fail ERROR: permission denied to create extension "plperlu" -HINT: Must be superuser to create this extension. +HINT: Must be superuser or a member of the pg_host_security role to create this extension. RESET ROLE; DO $$ begin @@ -24,7 +24,7 @@ SET ROLE regress_user1; CREATE EXTENSION plperl; CREATE EXTENSION plperlu; -- fail ERROR: permission denied to create extension "plperlu" -HINT: Must be superuser to create this extension. +HINT: Must be superuser or a member of the pg_host_security role to create this extension. CREATE FUNCTION foo1() returns int language plperl as '1;'; SELECT foo1(); foo1 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..84fcb9672d --- /dev/null +++ b/src/test/regress/expected/guc_priv_admin.out @@ -0,0 +1,1823 @@ +-- Role with all GUC permissions +CREATE ROLE admin; +GRANT pg_database_security TO admin; +GRANT pg_host_security TO admin; +GRANT pg_network_security TO admin; +-- Perform all operations as user 'admin' -- +SET SESSION AUTHORIZATION admin; +-- PGC_BACKEND / GUC_DATABASE_SECURITY / DEVELOPER_OPTIONS +SET ignore_system_indexes = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_BACKEND / GUC_NETWORK_SECURITY / 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_INTERNAL / GUC_DATABASE_SECURITY / 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 = OFF; -- 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 = OFF; -- 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 debug_assertions = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 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 +-- PGC_INTERNAL / GUC_DATABASE_SECURITY / UNGROUPED +SET is_superuser = OFF; -- 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 = OFF; -- 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_INTERNAL / GUC_HOST_SECURITY / PRESET_OPTIONS +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 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_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_POSTMASTER / GUC_DATABASE_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / DEVELOPER_OPTIONS +SET ignore_invalid_pages = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET ignore_invalid_pages; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET data_sync_retry = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET data_sync_retry; -- ok +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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET logging_collector = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET logging_collector; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET track_commit_timestamp = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET track_commit_timestamp; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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 +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 +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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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 +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 = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET wal_log_hints; -- ok +-- PGC_POSTMASTER / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET bonjour = OFF; -- 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 = OFF; -- 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_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 +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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET hot_standby; -- ok +-- PGC_SIGHUP / GUC_DATABASE_SECURITY / 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_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_DATABASE_SECURITY / 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_HOST_SECURITY / AUTOVACUUM +SET autovacuum = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET autovacuum; -- 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 +-- PGC_SIGHUP / GUC_HOST_SECURITY / CONN_AUTH_AUTH +SET db_user_namespace = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET db_user_namespace; -- ok +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_HOST_SECURITY / 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_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET remove_temp_files_after_crash; -- ok +SET restart_after_crash = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET restart_after_crash; -- ok +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET log_checkpoints; -- ok +SET log_hostname = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET log_hostname; -- 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_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 +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 +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 = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET log_truncate_on_rotation; -- ok +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 = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET syslog_sequence_numbers; -- ok +SET syslog_split_messages = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET syslog_split_messages; -- ok +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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 +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_HOST_SECURITY / REPLICATION_STANDBY +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 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / 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 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 +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_HOST_SECURITY / WAL_SETTINGS +SET fsync = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET fsync; -- ok +SET full_page_writes = OFF; -- 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 = OFF; -- 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_SIGHUP / GUC_HOST_SECURITY | GUC_NETWORK_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_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 +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_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_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 +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 +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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 krb_caseins_users = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET krb_caseins_users; -- ok +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_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_supports_reload = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- ok +SET ssl_prefer_server_ciphers = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- ok +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby_feedback = OFF; -- 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 = OFF; -- 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 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 = OFF; -- 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 = OFF; -- 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 +-- PGC_SUSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / STATS_COLLECTOR +SET track_activities = OFF; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = OFF; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = OFF; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = OFF; -- 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 = OFF; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = OFF; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY / STATS_MONITORING +SET compute_query_id = 'auto'; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = 'auto'; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY | GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / DEVELOPER_OPTIONS +SET allow_system_table_mods = OFF; -- ok +RESET allow_system_table_mods; -- ok +ALTER SYSTEM SET allow_system_table_mods = OFF; -- ok +ALTER SYSTEM RESET allow_system_table_mods; -- ok +-- PGC_SUSET / GUC_HOST_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_HOST_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_HOST_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = OFF; -- ok +RESET lo_compat_privileges; -- ok +ALTER SYSTEM SET lo_compat_privileges = OFF; -- ok +ALTER SYSTEM RESET lo_compat_privileges; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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 +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 +SET ignore_checksum_failure = OFF; -- ok +RESET ignore_checksum_failure; -- ok +ALTER SYSTEM SET ignore_checksum_failure = OFF; -- ok +ALTER SYSTEM RESET ignore_checksum_failure; -- ok +SET jit_dump_bitcode = OFF; -- ok +RESET jit_dump_bitcode; -- ok +ALTER SYSTEM SET jit_dump_bitcode = OFF; -- ok +ALTER SYSTEM RESET jit_dump_bitcode; -- ok +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 +SET zero_damaged_pages = OFF; -- ok +RESET zero_damaged_pages; -- ok +ALTER SYSTEM SET zero_damaged_pages = OFF; -- ok +ALTER SYSTEM RESET zero_damaged_pages; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / LOGGING_WHAT +SET log_duration = OFF; -- ok +RESET log_duration; -- ok +ALTER SYSTEM SET log_duration = OFF; -- 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 = OFF; -- ok +RESET log_lock_waits; -- ok +ALTER SYSTEM SET log_lock_waits = OFF; -- 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 = OFF; -- ok +RESET log_replication_commands; -- ok +ALTER SYSTEM SET log_replication_commands = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / PROCESS_TITLE +SET update_process_title = OFF; -- ok +RESET update_process_title; -- ok +ALTER SYSTEM SET update_process_title = OFF; -- ok +ALTER SYSTEM RESET update_process_title; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / STATS_MONITORING +SET log_executor_stats = OFF; -- ok +RESET log_executor_stats; -- ok +ALTER SYSTEM SET log_executor_stats = OFF; -- ok +ALTER SYSTEM RESET log_executor_stats; -- ok +SET log_parser_stats = OFF; -- ok +RESET log_parser_stats; -- ok +ALTER SYSTEM SET log_parser_stats = OFF; -- ok +ALTER SYSTEM RESET log_parser_stats; -- ok +SET log_planner_stats = OFF; -- ok +RESET log_planner_stats; -- ok +ALTER SYSTEM SET log_planner_stats = OFF; -- ok +ALTER SYSTEM RESET log_planner_stats; -- ok +SET log_statement_stats = OFF; -- ok +RESET log_statement_stats; -- ok +ALTER SYSTEM SET log_statement_stats = OFF; -- ok +ALTER SYSTEM RESET log_statement_stats; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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 = OFF; -- ok +RESET wal_compression; -- ok +ALTER SYSTEM SET wal_compression = OFF; -- ok +ALTER SYSTEM RESET wal_compression; -- ok +SET wal_init_zero = OFF; -- ok +RESET wal_init_zero; -- ok +ALTER SYSTEM SET wal_init_zero = OFF; -- ok +ALTER SYSTEM RESET wal_init_zero; -- ok +SET wal_recycle = OFF; -- ok +RESET wal_recycle; -- ok +ALTER SYSTEM SET wal_recycle = OFF; -- ok +ALTER SYSTEM RESET wal_recycle; -- ok +-- PGC_SUSET / GUC_NETWORK_SECURITY / 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_SU_BACKEND / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_debugging_support = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET jit_debugging_support; -- ok +SET jit_profiling_support = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET jit_profiling_support; -- ok +-- PGC_SU_BACKEND / GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / LOGGING_WHAT +SET log_connections = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET log_connections; -- ok +SET log_disconnections = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET log_disconnections; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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 = OFF; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = OFF; -- ok +ALTER SYSTEM RESET check_function_bodies; -- 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 = OFF; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = OFF; -- 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 row_security = OFF; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = OFF; -- 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 transaction_deferrable = OFF; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = OFF; -- 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_DATABASE_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = OFF; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = OFF; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = OFF; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = OFF; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = OFF; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = OFF; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = OFF; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = OFF; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = OFF; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = OFF; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_tuple_deforming = OFF; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = OFF; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = OFF; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = OFF; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = OFF; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = OFF; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / ERROR_HANDLING_OPTIONS +SET exit_on_error = OFF; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = OFF; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / LOGGING_WHAT +SET debug_pretty_print = OFF; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = OFF; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = OFF; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = OFF; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = OFF; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = OFF; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = OFF; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = OFF; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / QUERY_TUNING_GEQO +SET geqo = OFF; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = OFF; -- 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_DATABASE_SECURITY / QUERY_TUNING_METHOD +SET enable_async_append = OFF; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = OFF; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = OFF; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = OFF; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = OFF; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = OFF; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = OFF; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = OFF; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = OFF; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = OFF; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = OFF; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = OFF; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = OFF; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = OFF; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = OFF; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = OFF; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = OFF; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = OFF; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = OFF; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = OFF; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = OFF; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = OFF; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = OFF; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = OFF; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = OFF; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = OFF; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = OFF; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = OFF; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = OFF; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = OFF; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = OFF; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = OFF; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = OFF; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = OFF; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 = OFF; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = OFF; -- 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_DATABASE_SECURITY / RESOURCES_ASYNCHRONOUS +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 = OFF; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = OFF; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / WAL_SETTINGS +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / CLIENT_CONN_STATEMENT +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_expressions = OFF; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = OFF; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / 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 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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 +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_MEM +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_HOST_SECURITY / RESOURCES_VACUUM_DELAY +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_HOST_SECURITY / 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 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_NETWORK_SECURITY / CLIENT_CONN_STATEMENT +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 +-- PGC_USERSET / GUC_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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 +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..4a8d735d0f --- /dev/null +++ b/src/test/regress/expected/guc_priv_tenant.out @@ -0,0 +1,2275 @@ +-- Role operating exclusively within the sandbox +CREATE ROLE tenant; +GRANT pg_database_security TO tenant; +-- Perform all operations as user 'tenant' -- +SET SESSION AUTHORIZATION tenant; +-- PGC_BACKEND / GUC_DATABASE_SECURITY / DEVELOPER_OPTIONS +SET ignore_system_indexes = OFF; -- 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 = OFF; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_BACKEND / GUC_NETWORK_SECURITY / 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_INTERNAL / GUC_DATABASE_SECURITY / 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 = OFF; -- 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 = OFF; -- 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 debug_assertions = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 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 +-- PGC_INTERNAL / GUC_DATABASE_SECURITY / UNGROUPED +SET is_superuser = OFF; -- 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 = OFF; -- 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_INTERNAL / GUC_HOST_SECURITY / PRESET_OPTIONS +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 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_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_POSTMASTER / GUC_DATABASE_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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" +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_HOST_SECURITY / DEVELOPER_OPTIONS +SET ignore_invalid_pages = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET data_sync_retry = OFF; -- 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 = OFF; -- 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" +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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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" +SET logging_collector = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / 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" +SET track_commit_timestamp = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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" +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" +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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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" +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 = OFF; -- 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 = OFF; -- 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_POSTMASTER / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET bonjour = OFF; -- 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 = OFF; -- 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_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" +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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby = OFF; -- 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 = OFF; -- 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_SIGHUP / GUC_DATABASE_SECURITY / 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_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_DATABASE_SECURITY / 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_HOST_SECURITY / AUTOVACUUM +SET autovacuum = OFF; -- 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 = OFF; -- 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" +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; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_vacuum_cost_limit" +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "autovacuum_vacuum_cost_limit" +-- PGC_SIGHUP / GUC_HOST_SECURITY / CONN_AUTH_AUTH +SET db_user_namespace = OFF; -- 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 = OFF; -- 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_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_HOST_SECURITY / 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_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- 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 = OFF; -- 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_hostname = OFF; -- 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 = OFF; -- 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" +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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_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" +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" +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 = OFF; -- 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 = OFF; -- 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" +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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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" +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_HOST_SECURITY / REPLICATION_STANDBY +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 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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" +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_HOST_SECURITY / 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 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" +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_HOST_SECURITY / WAL_SETTINGS +SET fsync = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_SIGHUP / GUC_HOST_SECURITY | GUC_NETWORK_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_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" +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_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_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" +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" +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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 krb_caseins_users = OFF; -- 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 = OFF; -- 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_NETWORK_SECURITY / 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_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_supports_reload = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby_feedback = OFF; -- 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 = OFF; -- 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 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 = OFF; -- 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 = OFF; -- 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" +-- PGC_SUSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / STATS_COLLECTOR +SET track_activities = OFF; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = OFF; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = OFF; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = OFF; -- 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 = OFF; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = OFF; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY / STATS_MONITORING +SET compute_query_id = 'auto'; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = 'auto'; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY | GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / DEVELOPER_OPTIONS +SET allow_system_table_mods = OFF; -- 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 = OFF; -- 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_HOST_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_HOST_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_HOST_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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" +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" +SET ignore_checksum_failure = OFF; -- 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 = OFF; -- 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 jit_dump_bitcode = OFF; -- 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 = OFF; -- 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" +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" +SET zero_damaged_pages = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / LOGGING_WHAT +SET log_duration = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / PROCESS_TITLE +SET update_process_title = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / STATS_MONITORING +SET log_executor_stats = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_HOST_SECURITY / 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_SUSET / GUC_NETWORK_SECURITY / 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_SU_BACKEND / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_debugging_support = OFF; -- 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 = OFF; -- 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" +SET jit_profiling_support = OFF; -- 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 = OFF; -- 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_HOST_SECURITY | GUC_NETWORK_SECURITY / LOGGING_WHAT +SET log_connections = OFF; -- 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 = OFF; -- 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 = OFF; -- 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 = OFF; -- 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_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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 = OFF; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = OFF; -- ok +ALTER SYSTEM RESET check_function_bodies; -- 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 = OFF; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = OFF; -- 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 row_security = OFF; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = OFF; -- 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 transaction_deferrable = OFF; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = OFF; -- 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_DATABASE_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = OFF; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = OFF; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = OFF; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = OFF; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = OFF; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = OFF; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = OFF; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = OFF; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = OFF; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = OFF; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_tuple_deforming = OFF; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = OFF; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = OFF; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = OFF; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = OFF; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = OFF; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / ERROR_HANDLING_OPTIONS +SET exit_on_error = OFF; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = OFF; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / LOGGING_WHAT +SET debug_pretty_print = OFF; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = OFF; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = OFF; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = OFF; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = OFF; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = OFF; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = OFF; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = OFF; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / QUERY_TUNING_GEQO +SET geqo = OFF; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = OFF; -- 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_DATABASE_SECURITY / QUERY_TUNING_METHOD +SET enable_async_append = OFF; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = OFF; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = OFF; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = OFF; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = OFF; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = OFF; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = OFF; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = OFF; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = OFF; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = OFF; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = OFF; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = OFF; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = OFF; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = OFF; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = OFF; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = OFF; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = OFF; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = OFF; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = OFF; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = OFF; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = OFF; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = OFF; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = OFF; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = OFF; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = OFF; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = OFF; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = OFF; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = OFF; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = OFF; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = OFF; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = OFF; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = OFF; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = OFF; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = OFF; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 = OFF; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = OFF; -- 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_DATABASE_SECURITY / RESOURCES_ASYNCHRONOUS +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 = OFF; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = OFF; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / WAL_SETTINGS +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "local_preload_libraries" +ALTER SYSTEM RESET local_preload_libraries; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "local_preload_libraries" +-- PGC_USERSET / GUC_HOST_SECURITY / CLIENT_CONN_STATEMENT +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lock_timeout" +ALTER SYSTEM RESET lock_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "lock_timeout" +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "statement_timeout" +ALTER SYSTEM RESET statement_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "statement_timeout" +-- PGC_USERSET / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_expressions = OFF; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = OFF; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_expressions" +ALTER SYSTEM RESET jit_expressions; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "jit_expressions" +-- PGC_USERSET / GUC_HOST_SECURITY / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "application_name" +ALTER SYSTEM RESET application_name; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "application_name" +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; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length_on_error" +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "log_parameter_max_length_on_error" +-- PGC_USERSET / GUC_HOST_SECURITY / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_sender_timeout" +ALTER SYSTEM RESET wal_sender_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_sender_timeout" +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backend_flush_after" +ALTER SYSTEM RESET backend_flush_after; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "backend_flush_after" +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" +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_MEM +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "logical_decoding_work_mem" +ALTER SYSTEM RESET logical_decoding_work_mem; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "logical_decoding_work_mem" +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "maintenance_work_mem" +ALTER SYSTEM RESET maintenance_work_mem; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "maintenance_work_mem" +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_buffers" +ALTER SYSTEM RESET temp_buffers; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "temp_buffers" +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "work_mem" +ALTER SYSTEM RESET work_mem; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "work_mem" +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_VACUUM_DELAY +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_limit" +ALTER SYSTEM RESET vacuum_cost_limit; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_limit" +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_dirty" +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_dirty" +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_hit" +ALTER SYSTEM RESET vacuum_cost_page_hit; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_hit" +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_miss" +ALTER SYSTEM RESET vacuum_cost_page_miss; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "vacuum_cost_page_miss" +-- PGC_USERSET / GUC_HOST_SECURITY / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_siblings" +ALTER SYSTEM RESET commit_siblings; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "commit_siblings" +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_skip_threshold" +ALTER SYSTEM RESET wal_skip_threshold; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "wal_skip_threshold" +-- PGC_USERSET / GUC_NETWORK_SECURITY / CLIENT_CONN_STATEMENT +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "client_min_messages" +ALTER SYSTEM RESET client_min_messages; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "client_min_messages" +-- PGC_USERSET / GUC_NETWORK_SECURITY / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "password_encryption" +ALTER SYSTEM RESET password_encryption; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "password_encryption" +-- PGC_USERSET / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "client_connection_check_interval" +ALTER SYSTEM RESET client_connection_check_interval; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "client_connection_check_interval" +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_count" +ALTER SYSTEM RESET tcp_keepalives_count; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_count" +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_idle" +ALTER SYSTEM RESET tcp_keepalives_idle; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_idle" +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_interval" +ALTER SYSTEM RESET tcp_keepalives_interval; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_keepalives_interval" +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_user_timeout" +ALTER SYSTEM RESET tcp_user_timeout; -- fail, tenant has insufficient privileges +ERROR: permission denied to set parameter "tcp_user_timeout" +-- PGC_USERSET / GUC_NETWORK_SECURITY / 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 +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..024f845698 --- /dev/null +++ b/src/test/regress/sql/guc_priv_admin.sql @@ -0,0 +1,1449 @@ +-- Role with all GUC permissions +CREATE ROLE admin; +GRANT pg_database_security TO admin; +GRANT pg_host_security TO admin; +GRANT pg_network_security TO admin; + +-- Perform all operations as user 'admin' -- +SET SESSION AUTHORIZATION admin; +-- PGC_BACKEND / GUC_DATABASE_SECURITY / DEVELOPER_OPTIONS +SET ignore_system_indexes = OFF; -- fail, cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = OFF; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_BACKEND / GUC_NETWORK_SECURITY / 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_INTERNAL / GUC_DATABASE_SECURITY / 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 = OFF; -- fail, cannot be changed +RESET data_checksums; -- fail, cannot be changed +ALTER SYSTEM SET data_checksums = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +SET debug_assertions = OFF; -- fail, cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ALTER SYSTEM SET debug_assertions = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +SET in_hot_standby = OFF; -- fail, cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ALTER SYSTEM SET in_hot_standby = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +SET integer_datetimes = OFF; -- fail, cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ALTER SYSTEM SET integer_datetimes = OFF; -- 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 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 +-- PGC_INTERNAL / GUC_DATABASE_SECURITY / UNGROUPED +SET is_superuser = OFF; -- fail, cannot be changed +RESET is_superuser; -- fail, cannot be changed +ALTER SYSTEM SET is_superuser = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +-- PGC_INTERNAL / GUC_HOST_SECURITY / PRESET_OPTIONS +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 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_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_POSTMASTER / GUC_DATABASE_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / DEVELOPER_OPTIONS +SET ignore_invalid_pages = OFF; -- fail, requires restart +RESET ignore_invalid_pages; -- fail, requires restart +ALTER SYSTEM SET ignore_invalid_pages = OFF; -- ok +ALTER SYSTEM RESET ignore_invalid_pages; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET data_sync_retry = OFF; -- fail, requires restart +RESET data_sync_retry; -- fail, requires restart +ALTER SYSTEM SET data_sync_retry = OFF; -- ok +ALTER SYSTEM RESET data_sync_retry; -- ok +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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET logging_collector = OFF; -- fail, requires restart +RESET logging_collector; -- fail, requires restart +ALTER SYSTEM SET logging_collector = OFF; -- ok +ALTER SYSTEM RESET logging_collector; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET track_commit_timestamp = OFF; -- fail, requires restart +RESET track_commit_timestamp; -- fail, requires restart +ALTER SYSTEM SET track_commit_timestamp = OFF; -- ok +ALTER SYSTEM RESET track_commit_timestamp; -- ok +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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 +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 +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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- fail, requires restart +RESET recovery_target_inclusive; -- fail, requires restart +ALTER SYSTEM SET recovery_target_inclusive = OFF; -- 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_HOST_SECURITY / 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 +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 = OFF; -- fail, requires restart +RESET wal_log_hints; -- fail, requires restart +ALTER SYSTEM SET wal_log_hints = OFF; -- ok +ALTER SYSTEM RESET wal_log_hints; -- ok +-- PGC_POSTMASTER / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET bonjour = OFF; -- fail, requires restart +RESET bonjour; -- fail, requires restart +ALTER SYSTEM SET bonjour = OFF; -- 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_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 +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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby = OFF; -- fail, requires restart +RESET hot_standby; -- fail, requires restart +ALTER SYSTEM SET hot_standby = OFF; -- ok +ALTER SYSTEM RESET hot_standby; -- ok +-- PGC_SIGHUP / GUC_DATABASE_SECURITY / 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_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_DATABASE_SECURITY / 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_HOST_SECURITY / AUTOVACUUM +SET autovacuum = OFF; -- fail, requires reload +RESET autovacuum; -- fail, requires reload +ALTER SYSTEM SET autovacuum = OFF; -- ok +ALTER SYSTEM RESET autovacuum; -- 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 +-- PGC_SIGHUP / GUC_HOST_SECURITY / CONN_AUTH_AUTH +SET db_user_namespace = OFF; -- fail, requires reload +RESET db_user_namespace; -- fail, requires reload +ALTER SYSTEM SET db_user_namespace = OFF; -- ok +ALTER SYSTEM RESET db_user_namespace; -- ok +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_HOST_SECURITY / 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_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = OFF; -- fail, requires reload +RESET remove_temp_files_after_crash; -- fail, requires reload +ALTER SYSTEM SET remove_temp_files_after_crash = OFF; -- ok +ALTER SYSTEM RESET remove_temp_files_after_crash; -- ok +SET restart_after_crash = OFF; -- fail, requires reload +RESET restart_after_crash; -- fail, requires reload +ALTER SYSTEM SET restart_after_crash = OFF; -- ok +ALTER SYSTEM RESET restart_after_crash; -- ok +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- fail, requires reload +RESET log_checkpoints; -- fail, requires reload +ALTER SYSTEM SET log_checkpoints = OFF; -- ok +ALTER SYSTEM RESET log_checkpoints; -- ok +SET log_hostname = OFF; -- fail, requires reload +RESET log_hostname; -- fail, requires reload +ALTER SYSTEM SET log_hostname = OFF; -- ok +ALTER SYSTEM RESET log_hostname; -- 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 = OFF; -- fail, requires reload +RESET log_recovery_conflict_waits; -- fail, requires reload +ALTER SYSTEM SET log_recovery_conflict_waits = OFF; -- 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_HOST_SECURITY / 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_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 +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 +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 = OFF; -- fail, requires reload +RESET log_truncate_on_rotation; -- fail, requires reload +ALTER SYSTEM SET log_truncate_on_rotation = OFF; -- ok +ALTER SYSTEM RESET log_truncate_on_rotation; -- ok +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 = OFF; -- fail, requires reload +RESET syslog_sequence_numbers; -- fail, requires reload +ALTER SYSTEM SET syslog_sequence_numbers = OFF; -- ok +ALTER SYSTEM RESET syslog_sequence_numbers; -- ok +SET syslog_split_messages = OFF; -- fail, requires reload +RESET syslog_split_messages; -- fail, requires reload +ALTER SYSTEM SET syslog_split_messages = OFF; -- ok +ALTER SYSTEM RESET syslog_split_messages; -- ok +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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 +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_HOST_SECURITY / REPLICATION_STANDBY +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 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / 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 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 +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_HOST_SECURITY / WAL_SETTINGS +SET fsync = OFF; -- fail, requires reload +RESET fsync; -- fail, requires reload +ALTER SYSTEM SET fsync = OFF; -- ok +ALTER SYSTEM RESET fsync; -- ok +SET full_page_writes = OFF; -- fail, requires reload +RESET full_page_writes; -- fail, requires reload +ALTER SYSTEM SET full_page_writes = OFF; -- 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_SIGHUP / GUC_HOST_SECURITY | GUC_NETWORK_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_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 +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_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_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 +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 +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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 krb_caseins_users = OFF; -- fail, requires reload +RESET krb_caseins_users; -- fail, requires reload +ALTER SYSTEM SET krb_caseins_users = OFF; -- ok +ALTER SYSTEM RESET krb_caseins_users; -- ok +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_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_supports_reload = OFF; -- fail, requires reload +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = OFF; -- ok +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- ok +SET ssl_prefer_server_ciphers = OFF; -- fail, requires reload +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_prefer_server_ciphers = OFF; -- ok +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- ok +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby_feedback = OFF; -- fail, requires reload +RESET hot_standby_feedback; -- fail, requires reload +ALTER SYSTEM SET hot_standby_feedback = OFF; -- 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 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 = OFF; -- fail, requires reload +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_create_temp_slot = OFF; -- 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 +-- PGC_SUSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / STATS_COLLECTOR +SET track_activities = OFF; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = OFF; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = OFF; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = OFF; -- 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 = OFF; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = OFF; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY / STATS_MONITORING +SET compute_query_id = 'auto'; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = 'auto'; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY | GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / DEVELOPER_OPTIONS +SET allow_system_table_mods = OFF; -- ok +RESET allow_system_table_mods; -- ok +ALTER SYSTEM SET allow_system_table_mods = OFF; -- ok +ALTER SYSTEM RESET allow_system_table_mods; -- ok +-- PGC_SUSET / GUC_HOST_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_HOST_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_HOST_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = OFF; -- ok +RESET lo_compat_privileges; -- ok +ALTER SYSTEM SET lo_compat_privileges = OFF; -- ok +ALTER SYSTEM RESET lo_compat_privileges; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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 +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 +SET ignore_checksum_failure = OFF; -- ok +RESET ignore_checksum_failure; -- ok +ALTER SYSTEM SET ignore_checksum_failure = OFF; -- ok +ALTER SYSTEM RESET ignore_checksum_failure; -- ok +SET jit_dump_bitcode = OFF; -- ok +RESET jit_dump_bitcode; -- ok +ALTER SYSTEM SET jit_dump_bitcode = OFF; -- ok +ALTER SYSTEM RESET jit_dump_bitcode; -- ok +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 +SET zero_damaged_pages = OFF; -- ok +RESET zero_damaged_pages; -- ok +ALTER SYSTEM SET zero_damaged_pages = OFF; -- ok +ALTER SYSTEM RESET zero_damaged_pages; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / LOGGING_WHAT +SET log_duration = OFF; -- ok +RESET log_duration; -- ok +ALTER SYSTEM SET log_duration = OFF; -- 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 = OFF; -- ok +RESET log_lock_waits; -- ok +ALTER SYSTEM SET log_lock_waits = OFF; -- 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 = OFF; -- ok +RESET log_replication_commands; -- ok +ALTER SYSTEM SET log_replication_commands = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / PROCESS_TITLE +SET update_process_title = OFF; -- ok +RESET update_process_title; -- ok +ALTER SYSTEM SET update_process_title = OFF; -- ok +ALTER SYSTEM RESET update_process_title; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / STATS_MONITORING +SET log_executor_stats = OFF; -- ok +RESET log_executor_stats; -- ok +ALTER SYSTEM SET log_executor_stats = OFF; -- ok +ALTER SYSTEM RESET log_executor_stats; -- ok +SET log_parser_stats = OFF; -- ok +RESET log_parser_stats; -- ok +ALTER SYSTEM SET log_parser_stats = OFF; -- ok +ALTER SYSTEM RESET log_parser_stats; -- ok +SET log_planner_stats = OFF; -- ok +RESET log_planner_stats; -- ok +ALTER SYSTEM SET log_planner_stats = OFF; -- ok +ALTER SYSTEM RESET log_planner_stats; -- ok +SET log_statement_stats = OFF; -- ok +RESET log_statement_stats; -- ok +ALTER SYSTEM SET log_statement_stats = OFF; -- ok +ALTER SYSTEM RESET log_statement_stats; -- ok +-- PGC_SUSET / GUC_HOST_SECURITY / 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 = OFF; -- ok +RESET wal_compression; -- ok +ALTER SYSTEM SET wal_compression = OFF; -- ok +ALTER SYSTEM RESET wal_compression; -- ok +SET wal_init_zero = OFF; -- ok +RESET wal_init_zero; -- ok +ALTER SYSTEM SET wal_init_zero = OFF; -- ok +ALTER SYSTEM RESET wal_init_zero; -- ok +SET wal_recycle = OFF; -- ok +RESET wal_recycle; -- ok +ALTER SYSTEM SET wal_recycle = OFF; -- ok +ALTER SYSTEM RESET wal_recycle; -- ok +-- PGC_SUSET / GUC_NETWORK_SECURITY / 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_SU_BACKEND / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_debugging_support = OFF; -- fail, cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = OFF; -- ok +ALTER SYSTEM RESET jit_debugging_support; -- ok +SET jit_profiling_support = OFF; -- fail, cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = OFF; -- ok +ALTER SYSTEM RESET jit_profiling_support; -- ok +-- PGC_SU_BACKEND / GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / LOGGING_WHAT +SET log_connections = OFF; -- fail, cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_connections = OFF; -- ok +ALTER SYSTEM RESET log_connections; -- ok +SET log_disconnections = OFF; -- fail, cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_disconnections = OFF; -- ok +ALTER SYSTEM RESET log_disconnections; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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 = OFF; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = OFF; -- ok +ALTER SYSTEM RESET check_function_bodies; -- 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 = OFF; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = OFF; -- 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 row_security = OFF; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = OFF; -- 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 transaction_deferrable = OFF; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = OFF; -- 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_DATABASE_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = OFF; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = OFF; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = OFF; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = OFF; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = OFF; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = OFF; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = OFF; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = OFF; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = OFF; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = OFF; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_tuple_deforming = OFF; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = OFF; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = OFF; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = OFF; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = OFF; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = OFF; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / ERROR_HANDLING_OPTIONS +SET exit_on_error = OFF; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = OFF; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / LOGGING_WHAT +SET debug_pretty_print = OFF; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = OFF; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = OFF; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = OFF; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = OFF; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = OFF; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = OFF; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = OFF; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / QUERY_TUNING_GEQO +SET geqo = OFF; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = OFF; -- 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_DATABASE_SECURITY / QUERY_TUNING_METHOD +SET enable_async_append = OFF; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = OFF; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = OFF; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = OFF; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = OFF; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = OFF; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = OFF; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = OFF; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = OFF; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = OFF; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = OFF; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = OFF; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = OFF; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = OFF; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = OFF; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = OFF; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = OFF; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = OFF; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = OFF; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = OFF; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = OFF; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = OFF; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = OFF; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = OFF; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = OFF; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = OFF; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = OFF; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = OFF; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = OFF; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = OFF; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = OFF; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = OFF; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = OFF; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = OFF; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 = OFF; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = OFF; -- 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_DATABASE_SECURITY / RESOURCES_ASYNCHRONOUS +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 = OFF; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = OFF; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / WAL_SETTINGS +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / CLIENT_CONN_STATEMENT +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- ok +ALTER SYSTEM RESET lock_timeout; -- ok +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- ok +ALTER SYSTEM RESET statement_timeout; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_expressions = OFF; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = OFF; -- ok +ALTER SYSTEM RESET jit_expressions; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / 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 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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 +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_MEM +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_HOST_SECURITY / RESOURCES_VACUUM_DELAY +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_HOST_SECURITY / 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 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_NETWORK_SECURITY / CLIENT_CONN_STATEMENT +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 +-- PGC_USERSET / GUC_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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 +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..d24e834a44 --- /dev/null +++ b/src/test/regress/sql/guc_priv_tenant.sql @@ -0,0 +1,1447 @@ +-- Role operating exclusively within the sandbox +CREATE ROLE tenant; +GRANT pg_database_security TO tenant; + +-- Perform all operations as user 'tenant' -- +SET SESSION AUTHORIZATION tenant; +-- PGC_BACKEND / GUC_DATABASE_SECURITY / DEVELOPER_OPTIONS +SET ignore_system_indexes = OFF; -- fail, cannot be set after connection start +RESET ignore_system_indexes; -- fail, cannot be set after connection start +ALTER SYSTEM SET ignore_system_indexes = OFF; -- ok +ALTER SYSTEM RESET ignore_system_indexes; -- ok +-- PGC_BACKEND / GUC_NETWORK_SECURITY / 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_INTERNAL / GUC_DATABASE_SECURITY / 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 = OFF; -- fail, cannot be changed +RESET data_checksums; -- fail, cannot be changed +ALTER SYSTEM SET data_checksums = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET data_checksums; -- fail, cannot be changed +SET debug_assertions = OFF; -- fail, cannot be changed +RESET debug_assertions; -- fail, cannot be changed +ALTER SYSTEM SET debug_assertions = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET debug_assertions; -- fail, cannot be changed +SET in_hot_standby = OFF; -- fail, cannot be changed +RESET in_hot_standby; -- fail, cannot be changed +ALTER SYSTEM SET in_hot_standby = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET in_hot_standby; -- fail, cannot be changed +SET integer_datetimes = OFF; -- fail, cannot be changed +RESET integer_datetimes; -- fail, cannot be changed +ALTER SYSTEM SET integer_datetimes = OFF; -- 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 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 +-- PGC_INTERNAL / GUC_DATABASE_SECURITY / UNGROUPED +SET is_superuser = OFF; -- fail, cannot be changed +RESET is_superuser; -- fail, cannot be changed +ALTER SYSTEM SET is_superuser = OFF; -- fail, cannot be changed +ALTER SYSTEM RESET is_superuser; -- fail, cannot be changed +-- PGC_INTERNAL / GUC_HOST_SECURITY / PRESET_OPTIONS +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 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_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_POSTMASTER / GUC_DATABASE_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / DEVELOPER_OPTIONS +SET ignore_invalid_pages = OFF; -- fail, requires restart +RESET ignore_invalid_pages; -- fail, requires restart +ALTER SYSTEM SET ignore_invalid_pages = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ignore_invalid_pages; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET data_sync_retry = OFF; -- fail, requires restart +RESET data_sync_retry; -- fail, requires restart +ALTER SYSTEM SET data_sync_retry = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET data_sync_retry; -- fail, tenant has insufficient privileges +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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET logging_collector = OFF; -- fail, requires restart +RESET logging_collector; -- fail, requires restart +ALTER SYSTEM SET logging_collector = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET logging_collector; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 +SET track_commit_timestamp = OFF; -- fail, requires restart +RESET track_commit_timestamp; -- fail, requires restart +ALTER SYSTEM SET track_commit_timestamp = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET track_commit_timestamp; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 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 +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 +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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- fail, requires restart +RESET recovery_target_inclusive; -- fail, requires restart +ALTER SYSTEM SET recovery_target_inclusive = OFF; -- 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_HOST_SECURITY / 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 +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 = OFF; -- fail, requires restart +RESET wal_log_hints; -- fail, requires restart +ALTER SYSTEM SET wal_log_hints = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_log_hints; -- fail, tenant has insufficient privileges +-- PGC_POSTMASTER / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET bonjour = OFF; -- fail, requires restart +RESET bonjour; -- fail, requires restart +ALTER SYSTEM SET bonjour = OFF; -- 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_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 +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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby = OFF; -- fail, requires restart +RESET hot_standby; -- fail, requires restart +ALTER SYSTEM SET hot_standby = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET hot_standby; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_DATABASE_SECURITY / 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_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_DATABASE_SECURITY / 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_HOST_SECURITY / AUTOVACUUM +SET autovacuum = OFF; -- fail, requires reload +RESET autovacuum; -- fail, requires reload +ALTER SYSTEM SET autovacuum = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET autovacuum; -- fail, tenant has insufficient privileges +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; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET autovacuum_vacuum_cost_limit; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_HOST_SECURITY / CONN_AUTH_AUTH +SET db_user_namespace = OFF; -- fail, requires reload +RESET db_user_namespace; -- fail, requires reload +ALTER SYSTEM SET db_user_namespace = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET db_user_namespace; -- fail, tenant has insufficient privileges +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_HOST_SECURITY / 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_HOST_SECURITY / ERROR_HANDLING_OPTIONS +SET remove_temp_files_after_crash = OFF; -- fail, requires reload +RESET remove_temp_files_after_crash; -- fail, requires reload +ALTER SYSTEM SET remove_temp_files_after_crash = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET remove_temp_files_after_crash; -- fail, tenant has insufficient privileges +SET restart_after_crash = OFF; -- fail, requires reload +RESET restart_after_crash; -- fail, requires reload +ALTER SYSTEM SET restart_after_crash = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET restart_after_crash; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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 = OFF; -- fail, requires reload +RESET log_checkpoints; -- fail, requires reload +ALTER SYSTEM SET log_checkpoints = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_checkpoints; -- fail, tenant has insufficient privileges +SET log_hostname = OFF; -- fail, requires reload +RESET log_hostname; -- fail, requires reload +ALTER SYSTEM SET log_hostname = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_hostname; -- 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 = OFF; -- fail, requires reload +RESET log_recovery_conflict_waits; -- fail, requires reload +ALTER SYSTEM SET log_recovery_conflict_waits = OFF; -- 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_HOST_SECURITY / 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_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 +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 +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 = OFF; -- fail, requires reload +RESET log_truncate_on_rotation; -- fail, requires reload +ALTER SYSTEM SET log_truncate_on_rotation = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_truncate_on_rotation; -- fail, tenant has insufficient privileges +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 = OFF; -- fail, requires reload +RESET syslog_sequence_numbers; -- fail, requires reload +ALTER SYSTEM SET syslog_sequence_numbers = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET syslog_sequence_numbers; -- fail, tenant has insufficient privileges +SET syslog_split_messages = OFF; -- fail, requires reload +RESET syslog_split_messages; -- fail, requires reload +ALTER SYSTEM SET syslog_split_messages = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET syslog_split_messages; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_HOST_SECURITY / 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 +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_HOST_SECURITY / REPLICATION_STANDBY +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 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_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_HOST_SECURITY / 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_HOST_SECURITY / 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 +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_HOST_SECURITY / 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 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 +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_HOST_SECURITY / WAL_SETTINGS +SET fsync = OFF; -- fail, requires reload +RESET fsync; -- fail, requires reload +ALTER SYSTEM SET fsync = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET fsync; -- fail, tenant has insufficient privileges +SET full_page_writes = OFF; -- fail, requires reload +RESET full_page_writes; -- fail, requires reload +ALTER SYSTEM SET full_page_writes = OFF; -- 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_SIGHUP / GUC_HOST_SECURITY | GUC_NETWORK_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_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 +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_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_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 +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 +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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 krb_caseins_users = OFF; -- fail, requires reload +RESET krb_caseins_users; -- fail, requires reload +ALTER SYSTEM SET krb_caseins_users = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET krb_caseins_users; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_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_supports_reload = OFF; -- fail, requires reload +RESET ssl_passphrase_command_supports_reload; -- fail, requires reload +ALTER SYSTEM SET ssl_passphrase_command_supports_reload = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_passphrase_command_supports_reload; -- fail, tenant has insufficient privileges +SET ssl_prefer_server_ciphers = OFF; -- fail, requires reload +RESET ssl_prefer_server_ciphers; -- fail, requires reload +ALTER SYSTEM SET ssl_prefer_server_ciphers = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ssl_prefer_server_ciphers; -- fail, tenant has insufficient privileges +-- PGC_SIGHUP / GUC_NETWORK_SECURITY / 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_NETWORK_SECURITY / 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_NETWORK_SECURITY / REPLICATION_STANDBY +SET hot_standby_feedback = OFF; -- fail, requires reload +RESET hot_standby_feedback; -- fail, requires reload +ALTER SYSTEM SET hot_standby_feedback = OFF; -- 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 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 = OFF; -- fail, requires reload +RESET wal_receiver_create_temp_slot; -- fail, requires reload +ALTER SYSTEM SET wal_receiver_create_temp_slot = OFF; -- 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 +-- PGC_SUSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / STATS_COLLECTOR +SET track_activities = OFF; -- ok +RESET track_activities; -- ok +ALTER SYSTEM SET track_activities = OFF; -- ok +ALTER SYSTEM RESET track_activities; -- ok +SET track_counts = OFF; -- ok +RESET track_counts; -- ok +ALTER SYSTEM SET track_counts = OFF; -- 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 = OFF; -- ok +RESET track_io_timing; -- ok +ALTER SYSTEM SET track_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_io_timing; -- ok +SET track_wal_io_timing = OFF; -- ok +RESET track_wal_io_timing; -- ok +ALTER SYSTEM SET track_wal_io_timing = OFF; -- ok +ALTER SYSTEM RESET track_wal_io_timing; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY / STATS_MONITORING +SET compute_query_id = 'auto'; -- ok +RESET compute_query_id; -- ok +ALTER SYSTEM SET compute_query_id = 'auto'; -- ok +ALTER SYSTEM RESET compute_query_id; -- ok +-- PGC_SUSET / GUC_DATABASE_SECURITY | GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / DEVELOPER_OPTIONS +SET allow_system_table_mods = OFF; -- fail, tenant has insufficient privileges +RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET allow_system_table_mods = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET allow_system_table_mods; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_HOST_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_HOST_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_HOST_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET lo_compat_privileges = OFF; -- fail, tenant has insufficient privileges +RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET lo_compat_privileges = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET lo_compat_privileges; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_HOST_SECURITY / 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 +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 +SET ignore_checksum_failure = OFF; -- fail, tenant has insufficient privileges +RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET ignore_checksum_failure = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET ignore_checksum_failure; -- fail, tenant has insufficient privileges +SET jit_dump_bitcode = OFF; -- fail, tenant has insufficient privileges +RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET jit_dump_bitcode = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_dump_bitcode; -- fail, tenant has insufficient privileges +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 +SET zero_damaged_pages = OFF; -- fail, tenant has insufficient privileges +RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET zero_damaged_pages = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET zero_damaged_pages; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / LOGGING_WHAT +SET log_duration = OFF; -- fail, tenant has insufficient privileges +RESET log_duration; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_duration = OFF; -- 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 = OFF; -- fail, tenant has insufficient privileges +RESET log_lock_waits; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_lock_waits = OFF; -- 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 = OFF; -- fail, tenant has insufficient privileges +RESET log_replication_commands; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_replication_commands = OFF; -- 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_HOST_SECURITY / 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_HOST_SECURITY / PROCESS_TITLE +SET update_process_title = OFF; -- fail, tenant has insufficient privileges +RESET update_process_title; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET update_process_title = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET update_process_title; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_HOST_SECURITY / 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_HOST_SECURITY / 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_HOST_SECURITY / STATS_MONITORING +SET log_executor_stats = OFF; -- fail, tenant has insufficient privileges +RESET log_executor_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_executor_stats = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_executor_stats; -- fail, tenant has insufficient privileges +SET log_parser_stats = OFF; -- fail, tenant has insufficient privileges +RESET log_parser_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_parser_stats = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_parser_stats; -- fail, tenant has insufficient privileges +SET log_planner_stats = OFF; -- fail, tenant has insufficient privileges +RESET log_planner_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_planner_stats = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_planner_stats; -- fail, tenant has insufficient privileges +SET log_statement_stats = OFF; -- fail, tenant has insufficient privileges +RESET log_statement_stats; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET log_statement_stats = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_statement_stats; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_HOST_SECURITY / 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 = OFF; -- fail, tenant has insufficient privileges +RESET wal_compression; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_compression = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_compression; -- fail, tenant has insufficient privileges +SET wal_init_zero = OFF; -- fail, tenant has insufficient privileges +RESET wal_init_zero; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_init_zero = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_init_zero; -- fail, tenant has insufficient privileges +SET wal_recycle = OFF; -- fail, tenant has insufficient privileges +RESET wal_recycle; -- fail, tenant has insufficient privileges +ALTER SYSTEM SET wal_recycle = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_recycle; -- fail, tenant has insufficient privileges +-- PGC_SUSET / GUC_NETWORK_SECURITY / 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_SU_BACKEND / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_debugging_support = OFF; -- fail, cannot be set after connection start +RESET jit_debugging_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_debugging_support = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_debugging_support; -- fail, tenant has insufficient privileges +SET jit_profiling_support = OFF; -- fail, cannot be set after connection start +RESET jit_profiling_support; -- fail, cannot be set after connection start +ALTER SYSTEM SET jit_profiling_support = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_profiling_support; -- fail, tenant has insufficient privileges +-- PGC_SU_BACKEND / GUC_HOST_SECURITY | GUC_NETWORK_SECURITY / LOGGING_WHAT +SET log_connections = OFF; -- fail, cannot be set after connection start +RESET log_connections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_connections = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_connections; -- fail, tenant has insufficient privileges +SET log_disconnections = OFF; -- fail, cannot be set after connection start +RESET log_disconnections; -- fail, cannot be set after connection start +ALTER SYSTEM SET log_disconnections = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_disconnections; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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_DATABASE_SECURITY / 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 = OFF; -- ok +RESET check_function_bodies; -- ok +ALTER SYSTEM SET check_function_bodies = OFF; -- ok +ALTER SYSTEM RESET check_function_bodies; -- 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 = OFF; -- ok +RESET default_transaction_deferrable; -- ok +ALTER SYSTEM SET default_transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET default_transaction_read_only; -- ok +ALTER SYSTEM SET default_transaction_read_only = OFF; -- 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 row_security = OFF; -- ok +RESET row_security; -- ok +ALTER SYSTEM SET row_security = OFF; -- 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 transaction_deferrable = OFF; -- ok +RESET transaction_deferrable; -- ok +ALTER SYSTEM SET transaction_deferrable = OFF; -- 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 = OFF; -- ok +RESET transaction_read_only; -- ok +ALTER SYSTEM SET transaction_read_only = OFF; -- 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_DATABASE_SECURITY / COMPAT_OPTIONS_PREVIOUS +SET array_nulls = OFF; -- ok +RESET array_nulls; -- ok +ALTER SYSTEM SET array_nulls = OFF; -- ok +ALTER SYSTEM RESET array_nulls; -- ok +SET escape_string_warning = OFF; -- ok +RESET escape_string_warning; -- ok +ALTER SYSTEM SET escape_string_warning = OFF; -- ok +ALTER SYSTEM RESET escape_string_warning; -- ok +SET quote_all_identifiers = OFF; -- ok +RESET quote_all_identifiers; -- ok +ALTER SYSTEM SET quote_all_identifiers = OFF; -- ok +ALTER SYSTEM RESET quote_all_identifiers; -- ok +SET standard_conforming_strings = OFF; -- ok +RESET standard_conforming_strings; -- ok +ALTER SYSTEM SET standard_conforming_strings = OFF; -- ok +ALTER SYSTEM RESET standard_conforming_strings; -- ok +SET synchronize_seqscans = OFF; -- ok +RESET synchronize_seqscans; -- ok +ALTER SYSTEM SET synchronize_seqscans = OFF; -- ok +ALTER SYSTEM RESET synchronize_seqscans; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_tuple_deforming = OFF; -- ok +RESET jit_tuple_deforming; -- ok +ALTER SYSTEM SET jit_tuple_deforming = OFF; -- ok +ALTER SYSTEM RESET jit_tuple_deforming; -- ok +SET trace_notify = OFF; -- ok +RESET trace_notify; -- ok +ALTER SYSTEM SET trace_notify = OFF; -- ok +ALTER SYSTEM RESET trace_notify; -- ok +SET trace_sort = OFF; -- ok +RESET trace_sort; -- ok +ALTER SYSTEM SET trace_sort = OFF; -- ok +ALTER SYSTEM RESET trace_sort; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / ERROR_HANDLING_OPTIONS +SET exit_on_error = OFF; -- ok +RESET exit_on_error; -- ok +ALTER SYSTEM SET exit_on_error = OFF; -- ok +ALTER SYSTEM RESET exit_on_error; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / LOGGING_WHAT +SET debug_pretty_print = OFF; -- ok +RESET debug_pretty_print; -- ok +ALTER SYSTEM SET debug_pretty_print = OFF; -- ok +ALTER SYSTEM RESET debug_pretty_print; -- ok +SET debug_print_parse = OFF; -- ok +RESET debug_print_parse; -- ok +ALTER SYSTEM SET debug_print_parse = OFF; -- ok +ALTER SYSTEM RESET debug_print_parse; -- ok +SET debug_print_plan = OFF; -- ok +RESET debug_print_plan; -- ok +ALTER SYSTEM SET debug_print_plan = OFF; -- ok +ALTER SYSTEM RESET debug_print_plan; -- ok +SET debug_print_rewritten = OFF; -- ok +RESET debug_print_rewritten; -- ok +ALTER SYSTEM SET debug_print_rewritten = OFF; -- ok +ALTER SYSTEM RESET debug_print_rewritten; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / QUERY_TUNING_GEQO +SET geqo = OFF; -- ok +RESET geqo; -- ok +ALTER SYSTEM SET geqo = OFF; -- 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_DATABASE_SECURITY / QUERY_TUNING_METHOD +SET enable_async_append = OFF; -- ok +RESET enable_async_append; -- ok +ALTER SYSTEM SET enable_async_append = OFF; -- ok +ALTER SYSTEM RESET enable_async_append; -- ok +SET enable_bitmapscan = OFF; -- ok +RESET enable_bitmapscan; -- ok +ALTER SYSTEM SET enable_bitmapscan = OFF; -- ok +ALTER SYSTEM RESET enable_bitmapscan; -- ok +SET enable_gathermerge = OFF; -- ok +RESET enable_gathermerge; -- ok +ALTER SYSTEM SET enable_gathermerge = OFF; -- ok +ALTER SYSTEM RESET enable_gathermerge; -- ok +SET enable_hashagg = OFF; -- ok +RESET enable_hashagg; -- ok +ALTER SYSTEM SET enable_hashagg = OFF; -- ok +ALTER SYSTEM RESET enable_hashagg; -- ok +SET enable_hashjoin = OFF; -- ok +RESET enable_hashjoin; -- ok +ALTER SYSTEM SET enable_hashjoin = OFF; -- ok +ALTER SYSTEM RESET enable_hashjoin; -- ok +SET enable_incremental_sort = OFF; -- ok +RESET enable_incremental_sort; -- ok +ALTER SYSTEM SET enable_incremental_sort = OFF; -- ok +ALTER SYSTEM RESET enable_incremental_sort; -- ok +SET enable_indexonlyscan = OFF; -- ok +RESET enable_indexonlyscan; -- ok +ALTER SYSTEM SET enable_indexonlyscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexonlyscan; -- ok +SET enable_indexscan = OFF; -- ok +RESET enable_indexscan; -- ok +ALTER SYSTEM SET enable_indexscan = OFF; -- ok +ALTER SYSTEM RESET enable_indexscan; -- ok +SET enable_material = OFF; -- ok +RESET enable_material; -- ok +ALTER SYSTEM SET enable_material = OFF; -- ok +ALTER SYSTEM RESET enable_material; -- ok +SET enable_mergejoin = OFF; -- ok +RESET enable_mergejoin; -- ok +ALTER SYSTEM SET enable_mergejoin = OFF; -- ok +ALTER SYSTEM RESET enable_mergejoin; -- ok +SET enable_nestloop = OFF; -- ok +RESET enable_nestloop; -- ok +ALTER SYSTEM SET enable_nestloop = OFF; -- ok +ALTER SYSTEM RESET enable_nestloop; -- ok +SET enable_parallel_append = OFF; -- ok +RESET enable_parallel_append; -- ok +ALTER SYSTEM SET enable_parallel_append = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_append; -- ok +SET enable_parallel_hash = OFF; -- ok +RESET enable_parallel_hash; -- ok +ALTER SYSTEM SET enable_parallel_hash = OFF; -- ok +ALTER SYSTEM RESET enable_parallel_hash; -- ok +SET enable_partition_pruning = OFF; -- ok +RESET enable_partition_pruning; -- ok +ALTER SYSTEM SET enable_partition_pruning = OFF; -- ok +ALTER SYSTEM RESET enable_partition_pruning; -- ok +SET enable_partitionwise_aggregate = OFF; -- ok +RESET enable_partitionwise_aggregate; -- ok +ALTER SYSTEM SET enable_partitionwise_aggregate = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_aggregate; -- ok +SET enable_partitionwise_join = OFF; -- ok +RESET enable_partitionwise_join; -- ok +ALTER SYSTEM SET enable_partitionwise_join = OFF; -- ok +ALTER SYSTEM RESET enable_partitionwise_join; -- ok +SET enable_resultcache = OFF; -- ok +RESET enable_resultcache; -- ok +ALTER SYSTEM SET enable_resultcache = OFF; -- ok +ALTER SYSTEM RESET enable_resultcache; -- ok +SET enable_seqscan = OFF; -- ok +RESET enable_seqscan; -- ok +ALTER SYSTEM SET enable_seqscan = OFF; -- ok +ALTER SYSTEM RESET enable_seqscan; -- ok +SET enable_sort = OFF; -- ok +RESET enable_sort; -- ok +ALTER SYSTEM SET enable_sort = OFF; -- ok +ALTER SYSTEM RESET enable_sort; -- ok +SET enable_tidscan = OFF; -- ok +RESET enable_tidscan; -- ok +ALTER SYSTEM SET enable_tidscan = OFF; -- ok +ALTER SYSTEM RESET enable_tidscan; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 = OFF; -- ok +RESET jit; -- ok +ALTER SYSTEM SET jit = OFF; -- 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_DATABASE_SECURITY / RESOURCES_ASYNCHRONOUS +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 = OFF; -- ok +RESET parallel_leader_participation; -- ok +ALTER SYSTEM SET parallel_leader_participation = OFF; -- ok +ALTER SYSTEM RESET parallel_leader_participation; -- ok +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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 +-- PGC_USERSET / GUC_DATABASE_SECURITY / 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_DATABASE_SECURITY / WAL_SETTINGS +SET synchronous_commit = 'remote_write'; -- ok +RESET synchronous_commit; -- ok +ALTER SYSTEM SET synchronous_commit = 'remote_write'; -- ok +ALTER SYSTEM RESET synchronous_commit; -- ok +-- PGC_USERSET / GUC_HOST_SECURITY / CLIENT_CONN_PRELOAD +SET local_preload_libraries = 'gssapi_krb5'; -- ok +RESET local_preload_libraries; -- ok +ALTER SYSTEM SET local_preload_libraries = 'gssapi_krb5'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET local_preload_libraries; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / CLIENT_CONN_STATEMENT +SET lock_timeout = 50; -- ok +RESET lock_timeout; -- ok +ALTER SYSTEM SET lock_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET lock_timeout; -- fail, tenant has insufficient privileges +SET statement_timeout = 5250; -- ok +RESET statement_timeout; -- ok +ALTER SYSTEM SET statement_timeout = 5250; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET statement_timeout; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / DEVELOPER_OPTIONS +SET jit_expressions = OFF; -- ok +RESET jit_expressions; -- ok +ALTER SYSTEM SET jit_expressions = OFF; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET jit_expressions; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / LOGGING_WHAT +SET application_name = 'psql'; -- ok +RESET application_name; -- ok +ALTER SYSTEM SET application_name = 'psql'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET application_name; -- fail, tenant has insufficient privileges +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; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET log_parameter_max_length_on_error; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / REPLICATION_SENDING +SET wal_sender_timeout = 50; -- ok +RESET wal_sender_timeout; -- ok +ALTER SYSTEM SET wal_sender_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_sender_timeout; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_ASYNCHRONOUS +SET backend_flush_after = 128; -- ok +RESET backend_flush_after; -- ok +ALTER SYSTEM SET backend_flush_after = 128; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET backend_flush_after; -- fail, tenant has insufficient privileges +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 +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_MEM +SET logical_decoding_work_mem = 1073741855; -- ok +RESET logical_decoding_work_mem; -- ok +ALTER SYSTEM SET logical_decoding_work_mem = 1073741855; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET logical_decoding_work_mem; -- fail, tenant has insufficient privileges +SET maintenance_work_mem = 1073742335; -- ok +RESET maintenance_work_mem; -- ok +ALTER SYSTEM SET maintenance_work_mem = 1073742335; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET maintenance_work_mem; -- fail, tenant has insufficient privileges +SET temp_buffers = 536870961; -- ok +RESET temp_buffers; -- ok +ALTER SYSTEM SET temp_buffers = 536870961; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET temp_buffers; -- fail, tenant has insufficient privileges +SET work_mem = 1073741855; -- ok +RESET work_mem; -- ok +ALTER SYSTEM SET work_mem = 1073741855; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET work_mem; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / RESOURCES_VACUUM_DELAY +SET vacuum_cost_limit = 5000; -- ok +RESET vacuum_cost_limit; -- ok +ALTER SYSTEM SET vacuum_cost_limit = 5000; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET vacuum_cost_limit; -- fail, tenant has insufficient privileges +SET vacuum_cost_page_dirty = 50; -- ok +RESET vacuum_cost_page_dirty; -- ok +ALTER SYSTEM SET vacuum_cost_page_dirty = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET vacuum_cost_page_dirty; -- fail, tenant has insufficient privileges +SET vacuum_cost_page_hit = 50; -- ok +RESET vacuum_cost_page_hit; -- ok +ALTER SYSTEM SET vacuum_cost_page_hit = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET vacuum_cost_page_hit; -- fail, tenant has insufficient privileges +SET vacuum_cost_page_miss = 50; -- ok +RESET vacuum_cost_page_miss; -- ok +ALTER SYSTEM SET vacuum_cost_page_miss = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET vacuum_cost_page_miss; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_HOST_SECURITY / WAL_SETTINGS +SET commit_siblings = 50; -- ok +RESET commit_siblings; -- ok +ALTER SYSTEM SET commit_siblings = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET commit_siblings; -- fail, tenant has insufficient privileges +SET wal_skip_threshold = 50; -- ok +RESET wal_skip_threshold; -- ok +ALTER SYSTEM SET wal_skip_threshold = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET wal_skip_threshold; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_NETWORK_SECURITY / CLIENT_CONN_STATEMENT +SET client_min_messages = 'notice'; -- ok +RESET client_min_messages; -- ok +ALTER SYSTEM SET client_min_messages = 'notice'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET client_min_messages; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_NETWORK_SECURITY / CONN_AUTH_AUTH +SET password_encryption = 'scram-sha-256'; -- ok +RESET password_encryption; -- ok +ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET password_encryption; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_NETWORK_SECURITY / CONN_AUTH_SETTINGS +SET client_connection_check_interval = 0; -- ok +RESET client_connection_check_interval; -- ok +ALTER SYSTEM SET client_connection_check_interval = 0; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET client_connection_check_interval; -- fail, tenant has insufficient privileges +SET tcp_keepalives_count = 50; -- ok +RESET tcp_keepalives_count; -- ok +ALTER SYSTEM SET tcp_keepalives_count = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET tcp_keepalives_count; -- fail, tenant has insufficient privileges +SET tcp_keepalives_idle = 50; -- ok +RESET tcp_keepalives_idle; -- ok +ALTER SYSTEM SET tcp_keepalives_idle = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET tcp_keepalives_idle; -- fail, tenant has insufficient privileges +SET tcp_keepalives_interval = 50; -- ok +RESET tcp_keepalives_interval; -- ok +ALTER SYSTEM SET tcp_keepalives_interval = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET tcp_keepalives_interval; -- fail, tenant has insufficient privileges +SET tcp_user_timeout = 50; -- ok +RESET tcp_user_timeout; -- ok +ALTER SYSTEM SET tcp_user_timeout = 50; -- fail, tenant has insufficient privileges +ALTER SYSTEM RESET tcp_user_timeout; -- fail, tenant has insufficient privileges +-- PGC_USERSET / GUC_NETWORK_SECURITY / 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 +RESET statement_timeout; +RESET SESSION AUTHORIZATION; +DROP ROLE tenant; -- 2.21.1 (Apple Git-122.3)