Wiki / Configuration Parameters
debug_logical_replication_streaming
The allowed values are buffered and immediate. The default is buffered. This parameter is intended to be used to test logical decoding and replication of large transactions. The effect of debug_logical_replication_streaming is different for the publisher and subscriber: On the publisher side, debug_logical_replication_streaming allows streaming or serializing changes immediately in logical decoding. When set to immediate, stream each change if the streaming option of CREATE SUBSCRIPTION is enabled, otherwise, serialize each change. When set to buffered, the decoding will stream or serialize changes when logical_decoding_work_mem is reached. On the subscriber side, if the streaming option is set to parallel, debug_logical_replication_streaming can be used to direct the leader apply worker to send changes to the shared memory queue or to serialize all changes to the file. When set to buffered, the leader sends changes to parallel apply workers via a shared memory queue. When set to immediate, the leader serializes all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction.
English manual coverage begins with PostgreSQL 7.4. Source history and runtime observations have their own recorded version boundaries.
Reading PG 18·Select a recorded version
- boot val
- buffered
- category
- Developer Options
- context
- user
- doc same as
- Unknown
- documented
- true
- enumvals
- buffered, immediate
- lang
- en
- max val
- Unknown
- metadata version
- 18
- min val
- Unknown
- name
- debug_logical_replication_streaming
- short desc
- Forces immediate streaming or serialization of changes in large transactions.
- source
- pg-settings-source-snapshot
- unit
- Unknown
- vartype
- enum
Definition PG 18
The allowed values are buffered and
immediate. The default is buffered.
This parameter is intended to be used to test logical decoding and
replication of large transactions. The effect of
debug_logical_replication_streaming is different for the
publisher and subscriber:
On the publisher side, debug_logical_replication_streaming
allows streaming or serializing changes immediately in logical decoding.
When set to immediate, stream each change if the
streaming
option of
CREATE SUBSCRIPTION
is enabled, otherwise, serialize each change. When set to
buffered, the decoding will stream or serialize
changes when logical_decoding_work_mem is reached.
On the subscriber side, if the streaming option is set to
parallel, debug_logical_replication_streaming
can be used to direct the leader apply worker to send changes to the
shared memory queue or to serialize all changes to the file. When set to
buffered, the leader sends changes to parallel apply
workers via a shared memory queue. When set to
immediate, the leader serializes all changes to files
and notifies the parallel apply workers to read and apply them at the
end of the transaction.
Compare versions
Complete source facts
doc html
<p>
The allowed values are <code class="literal">buffered</code> and
<code class="literal">immediate</code>. The default is <code class="literal">buffered</code>.
This parameter is intended to be used to test logical decoding and
replication of large transactions. The effect of
<code class="varname">debug_logical_replication_streaming</code> is different for the
publisher and subscriber:
</p><p>
On the publisher side, <code class="varname">debug_logical_replication_streaming</code>
allows streaming or serializing changes immediately in logical decoding.
When set to <code class="literal">immediate</code>, stream each change if the
<a class="link" href="/docs/18/sql-createsubscription.html#SQL-CREATESUBSCRIPTION-PARAMS-WITH-STREAMING"><code class="literal">streaming</code></a>
option of
<a class="link" href="/docs/18/sql-createsubscription.html" title="CREATE SUBSCRIPTION"><code class="command">CREATE SUBSCRIPTION</code></a>
is enabled, otherwise, serialize each change. When set to
<code class="literal">buffered</code>, the decoding will stream or serialize
changes when <code class="varname">logical_decoding_work_mem</code> is reached.
</p><p>
On the subscriber side, if the <code class="literal">streaming</code> option is set to
<code class="literal">parallel</code>, <code class="varname">debug_logical_replication_streaming</code>
can be used to direct the leader apply worker to send changes to the
shared memory queue or to serialize all changes to the file. When set to
<code class="literal">buffered</code>, the leader sends changes to parallel apply
workers via a shared memory queue. When set to
<code class="literal">immediate</code>, the leader serializes all changes to files
and notifies the parallel apply workers to read and apply them at the
end of the transaction.
</p>documentation revision
{"inputs":[{"file":"runtime-config-developer.html","kind":"same-version-reviewed-manual","locale":"en","sha256":"a3f6a107ed6ba4edaf6df03e52f4a469bd09350d545e4ff419e62844025ec1cf","version":"18.7"},{"file":"runtime-config-developer.html","kind":"same-version-reviewed-manual","locale":"zh-Hans","sha256":"e7e22aa5738a1d376b84af1adca796c5e14746266733f925eb50c3ef86a50655","version":"18.7"}],"release":"18.7","runtime_remeasured":false,"source_revision":"pgdoc:b9f0e7232f60f380d642ac9b99226606c254b552"}extra desc
On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction.
Source references
Full definition and evidence JSON
Definition sources
center · PostgreSQL 18 · wiki-repair-20261023:352549c9bd01b31620d5c59da6dc8ce9544c6dc56bf3b77b5f5fec90b3b23262
Text language: en · wiki-repair-20261023:352549c9bd01b31620d5c59da6dc8ce9544c6dc56bf3b77b5f5fec90b3b23262