Re: pg_basebackup and replication slots - Mailing list pgsql-hackers

From Andres Freund
Subject Re: pg_basebackup and replication slots
Date
Msg-id 20150729080906.GC24218@alap3.anarazel.de
Whole thread Raw
In response to Re: pg_basebackup and replication slots  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: pg_basebackup and replication slots
List pgsql-hackers
On 2015-07-29 08:57:38 +0100, Simon Riggs wrote:
> On 22 July 2015 at 05:43, Michael Paquier <michael.paquier@gmail.com> wrote:
> 
> 
> > Now, do we plan to do something about the creation of a slot. I
> > imagine that it would be useful if we could have --create-slot to
> > create a slot when beginning a base backup and if-not-exists to
> > control the error flow. There is already CreateReplicationSlot for
> > this purpose in streamutils.c so most of the work is already done.
> > Also, when a base backup fails for a reason or another, we should try
> > to drop the slot in disconnect_and_exit() if it has been created by
> > pg_basebackup. if if-not-exists is true and the slot already existed
> > when beginning, we had better not dropping it perhaps...
> 
> 
> What is the purpose of creating a temporary slot?

> If we create a slot when one is needed and then drop automatically on
> session disconnect (as Heikki suggest), what benefit does using a slot give
> us?

The goal is to have a reliable pg_basebackup that doesn't fail due to
missing WAL (which can easily happen even with -X) . That seems like a
sane desire.  The point of using a temporary slot is to not have a
leftover slot afterwards, reserving resources. Especially important if
the basebackup actually failed...



pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: Don'st start streaming after creating a slot in pg_receivexlog
Next
From: Simon Riggs
Date:
Subject: Re: pg_basebackup and replication slots