diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index f9ba148782..909b3e23c5 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -1884,7 +1884,7 @@ include_dir 'conf.d'
- bgwriter_flush_after (int)
+ bgwriter_flush_after (integer)
bgwriter_flush_after> configuration parameter
@@ -2014,7 +2014,7 @@ include_dir 'conf.d'
- backend_flush_after (int)
+ backend_flush_after (integer)
backend_flush_after> configuration parameter
@@ -2036,8 +2036,6 @@ include_dir 'conf.d'
and 2MB. The default is 128Kb> on
Linux, 0> elsewhere. (Non-default values of
BLCKSZ change the default and maximum.)
- This parameter can only be set in the postgresql.conf>
- file or on the server command line.
@@ -2607,7 +2605,7 @@ include_dir 'conf.d'
- checkpoint_flush_after (int)
+ checkpoint_flush_after (integer)
checkpoint_flush_after> configuration parameter
@@ -2626,7 +2624,7 @@ include_dir 'conf.d'
than the OS's page cache, where performance might degrade. This
setting may have no effect on some platforms. The valid range is
between 0, which disables controlled writeback,
- and 2MB. The default is 128Kb> on
+ and 2MB. The default is 256Kb> on
Linux, 0> elsewhere. (Non-default values of
BLCKSZ change the default and maximum.)
This parameter can only be set in the postgresql.conf>
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index fb091bc4a0..60856dda19 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -2273,6 +2273,18 @@ static struct config_int ConfigureNamesInt[] =
NULL, NULL, NULL
},
+ {
+ {"checkpoint_flush_after", PGC_SIGHUP, WAL_CHECKPOINTS,
+ gettext_noop("Number of pages after which previously performed writes are flushed to disk."),
+ NULL,
+ GUC_UNIT_BLOCKS
+ },
+ &checkpoint_flush_after,
+ /* see bufmgr.h: OS dependent default */
+ DEFAULT_CHECKPOINT_FLUSH_AFTER, 0, WRITEBACK_MAX_PENDING_FLUSHES,
+ NULL, NULL, NULL
+ },
+
{
{"wal_buffers", PGC_POSTMASTER, WAL_SETTINGS,
gettext_noop("Sets the number of disk-page buffers in shared memory for WAL."),
@@ -2419,6 +2431,18 @@ static struct config_int ConfigureNamesInt[] =
NULL, NULL, NULL
},
+ {
+ {"bgwriter_flush_after", PGC_SIGHUP, RESOURCES_BGWRITER,
+ gettext_noop("Number of pages after which previously performed writes are flushed to disk."),
+ NULL,
+ GUC_UNIT_BLOCKS
+ },
+ &bgwriter_flush_after,
+ /* see bufmgr.h: OS dependent default */
+ DEFAULT_BGWRITER_FLUSH_AFTER, 0, WRITEBACK_MAX_PENDING_FLUSHES,
+ NULL, NULL, NULL
+ },
+
{
{"effective_io_concurrency",
PGC_USERSET,
@@ -2436,19 +2460,7 @@ static struct config_int ConfigureNamesInt[] =
},
{
- {"checkpoint_flush_after", PGC_SIGHUP, RESOURCES_ASYNCHRONOUS,
- gettext_noop("Number of pages after which previously performed writes are flushed to disk."),
- NULL,
- GUC_UNIT_BLOCKS
- },
- &checkpoint_flush_after,
- /* see bufmgr.h: OS dependent default */
- DEFAULT_CHECKPOINT_FLUSH_AFTER, 0, WRITEBACK_MAX_PENDING_FLUSHES,
- NULL, NULL, NULL
- },
-
- {
- {"backend_flush_after", PGC_USERSET, WAL_CHECKPOINTS,
+ {"backend_flush_after", PGC_USERSET, RESOURCES_ASYNCHRONOUS,
gettext_noop("Number of pages after which previously performed writes are flushed to disk."),
NULL,
GUC_UNIT_BLOCKS
@@ -2459,18 +2471,6 @@ static struct config_int ConfigureNamesInt[] =
NULL, NULL, NULL
},
- {
- {"bgwriter_flush_after", PGC_SIGHUP, WAL_CHECKPOINTS,
- gettext_noop("Number of pages after which previously performed writes are flushed to disk."),
- NULL,
- GUC_UNIT_BLOCKS
- },
- &bgwriter_flush_after,
- /* see bufmgr.h: 16 on Linux, 0 otherwise */
- DEFAULT_BGWRITER_FLUSH_AFTER, 0, WRITEBACK_MAX_PENDING_FLUSHES,
- NULL, NULL, NULL
- },
-
{
{"max_worker_processes",
PGC_POSTMASTER,
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index d4dd285ef0..14b537ffb1 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -160,6 +160,8 @@
#bgwriter_delay = 200ms # 10-10000ms between rounds
#bgwriter_lru_maxpages = 100 # 0-1000 max buffers written/round
#bgwriter_lru_multiplier = 2.0 # 0-10.0 multiplier on buffers scanned/round
+#bgwriter_flush_after = 0 # 0 disables,
+ # default is 512kb on linux, 0 otherwise
# - Asynchronous Behavior -
@@ -168,6 +170,8 @@
#max_parallel_degree = 0 # max number of worker processes per node
#old_snapshot_threshold = -1 # 1min-60d; -1 disables; 0 is immediate
# (change requires restart)
+#backend_flush_after = 0 # 0 disables,
+ # default is 128kb on linux, 0 otherwise
#------------------------------------------------------------------------------
@@ -206,6 +210,8 @@
#max_wal_size = 1GB
#min_wal_size = 80MB
#checkpoint_completion_target = 0.5 # checkpoint target duration, 0.0 - 1.0
+#checkpoint_flush_after = 0 # 0 disables,
+ # default is 256kb on linux, 0 otherwise
#checkpoint_warning = 30s # 0 disables
# - Archiving -