From 6edc21a3c6d1144d80c2066c1ad55823cba6f614 Mon Sep 17 00:00:00 2001
From: Amit Kapila <akapila@postgresql.org>
Date: Thu, 16 Jul 2026 14:31:05 +0530
Subject: [PATCH v1-PG16] Doc: Clarify DROP SUBSCRIPTION behavior after SET
 (slot_name = NONE).

The previous text claimed that once the slot is disassociated with
ALTER SUBSCRIPTION ... SET (slot_name = NONE), DROP SUBSCRIPTION "will no
longer attempt any actions on a remote host".  That is inaccurate:
DROP SUBSCRIPTION may still connect to the publisher to drop
internally-created table synchronization slots when some table
synchronization is left unfinished.  Reword to describe this, and note
that if the publisher is unreachable those slots (and the main slot, if
it still exists) must be dropped manually to avoid indefinitely reserving
WAL.

Reported-by: Jeff Davis <pgsql@j-davis.com>
Author: Amit Kapila <amit.kapila16@gmail.com>
Backpatch-through: 14
Discussion: https://postgr.es/m/CAA4eK1+tyYSpPxMBy1974kjivuGeR7YY=yopwRGrK3+vCTysdg@mail.gmail.com
Discussion: https://postgr.es/m/D908370F-2695-4231-851D-17179A6A6F2A@gmail.com
---
 doc/src/sgml/ref/drop_subscription.sgml | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/doc/src/sgml/ref/drop_subscription.sgml b/doc/src/sgml/ref/drop_subscription.sgml
index e07124fd661..66bbdd93ddd 100644
--- a/doc/src/sgml/ref/drop_subscription.sgml
+++ b/doc/src/sgml/ref/drop_subscription.sgml
@@ -100,12 +100,14 @@ DROP SUBSCRIPTION [ IF EXISTS ] <replaceable class="parameter">name</replaceable
    <literal>ALTER SUBSCRIPTION ... DISABLE</literal>, and then disassociate
    it from the replication slot by executing
    <literal>ALTER SUBSCRIPTION ... SET (slot_name = NONE)</literal>.
-   After that, <command>DROP SUBSCRIPTION</command> will no longer attempt any
-   actions on a remote host.  Note that if the remote replication slot still
-   exists, it (and any related table synchronization slots) should then be
-   dropped manually; otherwise it/they will continue to
-   reserve WAL and might eventually cause the disk to fill up.  See
-   also <xref linkend="logical-replication-subscription-slot"/>.
+   After that, <command>DROP SUBSCRIPTION</command> will not attempt to drop
+   the subscription's own replication slot.  It may still connect to the publisher
+   to drop internally-created table synchronization slots if some table
+   synchronization is left unfinished; if the publisher is unreachable, those
+   slots (and the main slot, if it still exists) must be dropped manually.  Otherwise
+   it/they will continue to reserve WAL and might eventually cause the disk to
+   fill up.  See also
+   <xref linkend="logical-replication-subscription-slot"/>.
   </para>
 
   <para>
-- 
2.54.0

