mirror of
https://github.com/postgres/postgres.git
synced 2025-10-28 11:55:03 +03:00
Add 'logical_decoding_mode' GUC.
This enables streaming or serializing changes immediately in logical decoding. This parameter is intended to be used to test logical decoding and replication of large transactions for which otherwise we need to generate the changes till logical_decoding_work_mem is reached. This helps in reducing the timing of existing tests related to logical replication of in-progress transactions and will help in writing tests for for the upcoming feature for parallelly applying large in-progress transactions. Author: Shi yu Reviewed-by: Sawada Masahiko, Shveta Mallik, Amit Kapila, Dilip Kumar, Kuroda Hayato, Kyotaro Horiguchi Discussion: https://postgr.es/m/OSZPR01MB63104E7449DBE41932DB19F1FD1B9@OSZPR01MB6310.jpnprd01.prod.outlook.com
This commit is contained in:
@@ -11597,6 +11597,34 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="guc-logical-decoding-mode" xreflabel="logical_decoding_mode">
|
||||
<term><varname>logical_decoding_mode</varname> (<type>enum</type>)
|
||||
<indexterm>
|
||||
<primary><varname>logical_decoding_mode</varname> configuration parameter</primary>
|
||||
</indexterm>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
Allows streaming or serializing changes immediately in logical decoding.
|
||||
The allowed values of <varname>logical_decoding_mode</varname> are
|
||||
<literal>buffered</literal> and <literal>immediate</literal>. When set
|
||||
to <literal>immediate</literal>, stream each change if
|
||||
<literal>streaming</literal> option (see optional parameters set by
|
||||
<link linkend="sql-createsubscription"><command>CREATE SUBSCRIPTION</command></link>)
|
||||
is enabled, otherwise, serialize each change. When set to
|
||||
<literal>buffered</literal>, which is the default, decoding will stream
|
||||
or serialize changes when <varname>logical_decoding_work_mem</varname>
|
||||
is reached.
|
||||
</para>
|
||||
<para>
|
||||
This parameter is intended to be used to test logical decoding and
|
||||
replication of large transactions for which otherwise we need to
|
||||
generate the changes till <varname>logical_decoding_work_mem</varname>
|
||||
is reached.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</sect1>
|
||||
<sect1 id="runtime-config-short">
|
||||
|
||||
Reference in New Issue
Block a user