]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Doc: Clarify DROP SUBSCRIPTION behavior after SET (slot_name = NONE).
authorAmit Kapila <akapila@postgresql.org>
Fri, 17 Jul 2026 04:17:33 +0000 (09:47 +0530)
committerAmit Kapila <akapila@postgresql.org>
Fri, 17 Jul 2026 04:17:33 +0000 (09:47 +0530)
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

index 645f25585878c2b5da6d8f4f48d55707c719b68e..e4c646fcf2a76cce4825a723905e52bb28023f3c 100644 (file)
@@ -102,12 +102,14 @@ DROP SUBSCRIPTION [ IF EXISTS ] <replaceable class="parameter">name</replaceable
    it from the replication slot by executing
    <link linkend="sql-altersubscription-params-set">
    <literal>ALTER SUBSCRIPTION ... SET (slot_name = NONE)</literal></link>.
-   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>