diff options
Diffstat (limited to 'doc/src/sgml/config.sgml')
-rw-r--r-- | doc/src/sgml/config.sgml | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index fee83c1496b..f33a16b7aad 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -1648,10 +1648,12 @@ include 'filename' <varname>wal_level</> determines how much information is written to the WAL. The default value is <literal>minimal</>, which writes only the information needed to recover from a crash or immediate - shutdown. <literal>archive</> adds logging required for WAL archiving, - and <literal>hot_standby</> further adds information required to run - read-only queries on a standby server. - This parameter can only be set at server start. + shutdown. <literal>archive</> adds logging required for WAL archiving; + <literal>hot_standby</> further adds information required to run + read-only queries on a standby server; and, finally + <literal>logical</> adds information necessary to support logical + decoding. Each level includes the information logged at all lower + levels. This parameter can only be set at server start. </para> <para> In <literal>minimal</> level, WAL-logging of some bulk @@ -1665,24 +1667,30 @@ include 'filename' <member><command>COPY</> into tables that were created or truncated in the same transaction</member> </simplelist> - But minimal WAL does not contain - enough information to reconstruct the data from a base backup and the - WAL logs, so either <literal>archive</> or <literal>hot_standby</> - level must be used to enable - WAL archiving (<xref linkend="guc-archive-mode">) and streaming - replication. + But minimal WAL does not contain enough information to reconstruct the + data from a base backup and the WAL logs, so <literal>archive</> or + higher must be used to enable WAL archiving + (<xref linkend="guc-archive-mode">) and streaming replication. </para> <para> In <literal>hot_standby</> level, the same information is logged as with <literal>archive</>, plus information needed to reconstruct the status of running transactions from the WAL. To enable read-only queries on a standby server, <varname>wal_level</> must be set to - <literal>hot_standby</> on the primary, and + <literal>hot_standby</> or higher on the primary, and <xref linkend="guc-hot-standby"> must be enabled in the standby. It is - thought that there is - little measurable difference in performance between using - <literal>hot_standby</> and <literal>archive</> levels, so feedback - is welcome if any production impacts are noticeable. + thought that there is little measurable difference in performance + between using <literal>hot_standby</> and <literal>archive</> levels, + so feedback is welcome if any production impacts are noticeable. + </para> + <para> + In <literal>logical</> level, the same information is logged as + with <literal>hot_standby</>, plus information needed to allow + extracting logical changesets from the WAL. Using a level of + <literal>logical</> will increase the WAL volume, particularly if many + tables are configured for <literal>REPLICA IDENTITY FULL</literal> and + many <command>UPDATE</> and <command>DELETE</> statements are + executed. </para> </listitem> </varlistentry> @@ -2239,9 +2247,9 @@ include 'filename' disabled. WAL sender processes count towards the total number of connections, so the parameter cannot be set higher than <xref linkend="guc-max-connections">. This parameter can only - be set at server start. <varname>wal_level</> must be set - to <literal>archive</> or <literal>hot_standby</> to allow - connections from standby servers. + be set at server start. <varname>wal_level</> must be set to + <literal>archive</> or higher to allow connections from standby + servers. </para> </listitem> </varlistentry> |