]> 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:11:07 +0000 (09:41 +0530)
committerAmit Kapila <akapila@postgresql.org>
Fri, 17 Jul 2026 04:11:07 +0000 (09:41 +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 6e84bb0a25664fb3870b466084dbb24446d89507..209416756e526f4ea6299c8eeb2586c62e491eaf 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>