diff --git a/doc/src/sgml/backup.sgml b/doc/src/sgml/backup.sgml index 9dbcb4daa69..3c5e0d5a8ec 100644 --- a/doc/src/sgml/backup.sgml +++ b/doc/src/sgml/backup.sgml @@ -1,4 +1,4 @@ - + Backup and Restore @@ -689,13 +689,14 @@ archive_command = 'test ! -f /mnt/server/archivedir/%f && cp %p /mnt/ser - When archive_mode is off some SQL commands + When archive_mode is off and is zero some SQL commands are optimized to avoid WAL logging, as described in . If archiving were turned on during execution - of one of these statements, WAL would not contain enough information - for archive recovery. (Crash recovery is unaffected.) For - this reason, archive_mode can only be changed at server - start. However, archive_command can be changed with a + linkend="populate-pitr">. If archiving or streaming replication were + turned on during execution of one of these statements, WAL would not + contain enough information for archive recovery. (Crash recovery is + unaffected.) For this reason, these parameters can only be changed at + server start. However, archive_command can be changed with a configuration file reload. If you wish to temporarily stop archiving, one way to do it is to set archive_command to the empty string (''). diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml index d7c36cc4e9f..ccccb3fefb0 100644 --- a/doc/src/sgml/perform.sgml +++ b/doc/src/sgml/perform.sgml @@ -1,4 +1,4 @@ - + Performance Tips @@ -910,24 +910,28 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse; - Turn off <varname>archive_mode</varname> + Turn off <varname>archive_mode</varname> and streaming replication When loading large amounts of data into an installation that uses - WAL archiving, you might want to disable archiving (turn off the - configuration variable) + WAL archiving or streaming replication, you might want to disable + archiving (turn off the + configuration variable) and replication (zero the + configuration variable) while loading. It might be faster to take a new base backup after the load has completed than to process a large amount of incremental WAL data. - But note that turning archive_mode on or off - requires a server restart. + But note that changing either of these variables requires + a server restart. - Aside from avoiding the time for the archiver to process the WAL data, + Aside from avoiding the time for the archiver or WAL sender to + process the WAL data, doing this will actually make certain commands faster, because they are designed not to write WAL at all if archive_mode - is off. (They can guarantee crash safety more cheaply by doing an + is off and max_wal_senders is zero. (They can + guarantee crash safety more cheaply by doing an fsync at the end than by writing WAL.) This applies to the following commands: