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/oszpr01mb63104e7449dbe41932db19f1fd...@oszpr01mb6310.jpnprd01.prod.outlook.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5de94a041ed7a51b571db2030ba87600c7fc6262

Modified Files
--------------
doc/src/sgml/config.sgml                           | 28 ++++++++++++
src/backend/replication/logical/reorderbuffer.c    | 33 +++++++++-----
src/backend/utils/misc/guc_tables.c                | 17 ++++++++
src/include/replication/reorderbuffer.h            |  8 ++++
src/test/subscription/t/016_stream_subxact.pl      | 18 ++++----
.../subscription/t/018_stream_subxact_abort.pl     | 50 +++++++++++-----------
.../subscription/t/019_stream_subxact_ddl_abort.pl | 18 ++++----
src/test/subscription/t/023_twophase_stream.pl     | 28 ++++++------
src/tools/pgindent/typedefs.list                   |  1 +
9 files changed, 134 insertions(+), 67 deletions(-)

Reply via email to