Re: [HACKERS] Function to move the position of a replication slot - Mailing list pgsql-hackers

From Craig Ringer
Subject Re: [HACKERS] Function to move the position of a replication slot
Date
Msg-id CAMsr+YE=uquLNnSK12tmPh70qdZ2nR+u31bacJwJB_V9a1wV6Q@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] Function to move the position of a replication slot  (Michael Paquier <michael.paquier@gmail.com>)
Responses Re: [HACKERS] Function to move the position of a replication slot  (Michael Paquier <michael.paquier@gmail.com>)
Re: [HACKERS] Function to move the position of a replication slot  (Magnus Hagander <magnus@hagander.net>)
List pgsql-hackers
On 17 August 2017 at 07:30, Michael Paquier <michael.paquier@gmail.com> wrote:

Definitely agreed on that. Any move function would need to check if
the WAL position given by caller is already newer than what's
available in the local pg_wal (minimum of all other slots), with a
shared lock that would need to be taken by xlog.c when recycling past
segments. A forward function works on a single entry, which should be
disabled at the moment of the update. It looks dangerous to me to do
such an operation if there is a consumer of a slot currently on it.


pg_advance_replication_slot(...)

ERROR's on logical slot, for now. Physical slots only.

Forward-only.

Future work to allow it to use the logical decoding infrastructure to fast-forward a slot by reading only catalog change information and invalidations, either via a dummy output plugin that filters out all xacts, or by lower level use of the decoding code.

Reasonable?

--
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: [HACKERS] Atomics for heap_parallelscan_nextpage()
Next
From: Craig Ringer
Date:
Subject: Re: [HACKERS] [PATCH] pageinspect function to decode infomasks