Andres,

* Andres Freund (and...@anarazel.de) wrote:
> On 2015-05-29 10:15:56 -0700, Josh Berkus wrote:
> > pg_drop_replication_slot() can be a time-critical function when the
> > master is running out of disk space because the replica is falling
> > behind.
> 
> I don't buy this argument. The same is true for DROP TABLE, TRUNCATE,
> DROP DATABASE etc.

I disagree about that being the same.

> I mean, I agree it'd be convenient, but I can't see it as "critical".

Just a random thought- do we check the LOGIN attribute for replication
connections?  If so, you could tweak that, but that may be an issue if
you have multiple replicas using the same role.

I'm not sure that it's *critical*, but I could see an argument for
adding this post-feature-freeze, which I'm guessing is what Josh was
getting at.

> > While I'm just doing this during testing, it could be a critical fail in
> > production.  I think the simplest way to resolve this would be to add a
> > boolean flag to pg_drop_replication_slot(), which would terminate the
> > replication connection and delete the slot as a single operation.
> 
> There's no "single operation" for terminating a backend *and* doing
> something...

That's a good point, we'd need to figure out how to make this actually
work reliably in the face of a very fast reconnecting process, if we're
going to do it.

        Thanks!

                Stephen

Attachment: signature.asc
Description: Digital signature

Reply via email to