Specifies whether transaction commit will wait for WAL records
to be written to disk before the command returns a success>
- indication to the client. Valid values are on>, write>,
+ indication to the client. Valid values are on>, remote_write>,
local>, and off>. The default, and safe, value
is on>. When off>, there can be a delay between
when success is reported to the client and when the transaction is
If is set, this
parameter also controls whether or not transaction commit will wait
for the transaction's WAL records to be flushed to disk and replicated
- to the standby server. When write>, the commit wait will
+ to the standby server. When remote_write>, the commit wait will
last until a reply from the current synchronous standby indicates
it has received the commit record of the transaction to memory.
Normally this causes no data loss at the time of failover. However,
- Setting synchronous_commit> to write> will
+ Setting synchronous_commit> to remote_write> will
cause each commit to wait for confirmation that the standby has received
the commit record to memory. This provides a lower level of durability
than on> does. However, it's a practically useful setting
Commits made when synchronous_commit> is set to on>
- or write> will wait until the synchronous standby responds. The response
+ or remote_write> will wait until the synchronous standby responds. The response
may never occur if the last, or only, standby should crash.
};
/*
- * Although only "on", "off", "write", and "local" are documented, we
+ * Although only "on", "off", "remote_write", and "local" are documented, we
* accept all the likely variants of "on" and "off".
*/
static const struct config_enum_entry synchronous_commit_options[] = {
{"local", SYNCHRONOUS_COMMIT_LOCAL_FLUSH, false},
- {"write", SYNCHRONOUS_COMMIT_REMOTE_WRITE, false},
+ {"remote_write", SYNCHRONOUS_COMMIT_REMOTE_WRITE, false},
{"on", SYNCHRONOUS_COMMIT_ON, false},
{"off", SYNCHRONOUS_COMMIT_OFF, false},
{"true", SYNCHRONOUS_COMMIT_ON, true},
#wal_level = minimal # minimal, archive, or hot_standby
# (change requires restart)
#fsync = on # turns forced synchronization on or off
-#synchronous_commit = on # synchronization level; on, off, or local
+#synchronous_commit = on # synchronization level;
+ # off, local, remote_write, or on
#wal_sync_method = fsync # the default is the first option
# supported by the operating system:
# open_datasync