pgsql: Add facility to copy replication slots

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add facility to copy replication slots
Date: 2019-04-05 21:09:10
Message-ID: E1hCW5G-0006CL-U2@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add facility to copy replication slots

This allows the user to create duplicates of existing replication slots,
either logical or physical, and even changing properties such as whether
they are temporary or the output plugin used.

There are multiple uses for this, such as initializing multiple replicas
using the slot for one base backup; when doing investigation of logical
replication issues; and to select a different output plugins.

Author: Masahiko Sawada
Reviewed-by: Michael Paquier, Andres Freund, Petr Jelinek
Discussion: https://postgr.es/m/CAD21AoAm7XX8y_tOPP6j4Nzzch12FvA1wPqiO690RCk+uYVstg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/9f06d79ef831ffa333f908f6d3debdb654292414

Modified Files
--------------
contrib/test_decoding/expected/slot.out | 234 ++++++++++++++++++++
contrib/test_decoding/sql/slot.sql | 94 ++++++++
doc/src/sgml/func.sgml | 41 ++++
src/backend/replication/logical/logical.c | 26 ++-
src/backend/replication/slotfuncs.c | 352 ++++++++++++++++++++++++++----
src/backend/replication/walsender.c | 1 +
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_proc.dat | 35 +++
src/include/replication/logical.h | 1 +
9 files changed, 736 insertions(+), 50 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2019-04-05 23:21:08 pgsql: Use Append rather than MergeAppend for scanning ordered partitio
Previous Message Thomas Munro 2019-04-05 20:32:26 pgsql: Wake up interested backends when a checkpoint fails.