mirror of
https://github.com/postgres/postgres.git
synced 2025-11-10 17:42:29 +03:00
Added GUC variable bgwriter_flush_method controlling the action
done by the background writer between writing dirty blocks and
napping.
none (default) no action
sync bgwriter calls smgrsync() causing a sync(2)
A global sync() is only good on dedicated database servers, so
more flush methods should be added in the future.
Jan
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.179 2004/01/23 23:54:21 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.180 2004/01/24 20:00:45 wieck Exp $
|
||||
*
|
||||
*--------------------------------------------------------------------
|
||||
*/
|
||||
@@ -95,6 +95,8 @@ static const char *assign_msglvl(int *var, const char *newval,
|
||||
static const char *assign_log_error_verbosity(const char *newval, bool doit,
|
||||
GucSource source);
|
||||
static bool assign_phony_autocommit(bool newval, bool doit, GucSource source);
|
||||
extern const char *BgWriterAssignSyncMethod(const char *method,
|
||||
bool doit, GucSource source);
|
||||
|
||||
|
||||
/*
|
||||
@@ -1689,6 +1691,15 @@ static struct config_string ConfigureNamesString[] =
|
||||
XLOG_sync_method_default, assign_xlog_sync_method, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"bgwriter_flush_method", PGC_SIGHUP, RESOURCES,
|
||||
gettext_noop("Selects the method used by the bgwriter for forcing writes out to disk."),
|
||||
NULL
|
||||
},
|
||||
&BgWriterFlushMethod_str,
|
||||
BgWriterFlushMethod_default, BgWriterAssignSyncMethod, NULL
|
||||
},
|
||||
|
||||
/* End-of-list marker */
|
||||
{
|
||||
{NULL, 0, 0, NULL, NULL}, NULL, NULL, NULL, NULL
|
||||
|
||||
@@ -61,9 +61,12 @@
|
||||
#debug_shared_buffers = 0 # 0-600 seconds
|
||||
|
||||
# - Background writer -
|
||||
#debug_shared_buffers = 0 # 0-600 seconds interval (0 = off)
|
||||
#bgwriter_delay = 200 # 10-5000 milliseconds
|
||||
#bgwriter_percent = 1 # 0-100% of dirty buffers
|
||||
#bgwriter_maxpages = 100 # 1-1000 buffers max at once
|
||||
#bgwriter_flush_method = none # how the bgwriter flushes kernel buffers
|
||||
# one of: none or sync
|
||||
|
||||
# - Free Space Map -
|
||||
|
||||
|
||||
Reference in New Issue
Block a user