summaryrefslogtreecommitdiffstats
path: root/doc/src/sgml/man7/DROP_SUBSCRIPTION.7
blob: fbb710de935d2eae274c9fb9388411956ee8591e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
'\" t
.\"     Title: DROP SUBSCRIPTION
.\"    Author: The PostgreSQL Global Development Group
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\"      Date: 2024
.\"    Manual: PostgreSQL 16.3 Documentation
.\"    Source: PostgreSQL 16.3
.\"  Language: English
.\"
.TH "DROP SUBSCRIPTION" "7" "2024" "PostgreSQL 16.3" "PostgreSQL 16.3 Documentation"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
DROP_SUBSCRIPTION \- remove a subscription
.SH "SYNOPSIS"
.sp
.nf
DROP SUBSCRIPTION [ IF EXISTS ] \fIname\fR [ CASCADE | RESTRICT ]
.fi
.SH "DESCRIPTION"
.PP
\fBDROP SUBSCRIPTION\fR
removes a subscription from the database cluster\&.
.PP
To execute this command the user must be the owner of the subscription\&.
.PP
\fBDROP SUBSCRIPTION\fR
cannot be executed inside a transaction block if the subscription is associated with a replication slot\&. (You can use
\fBALTER SUBSCRIPTION\fR
to unset the slot\&.)
.SH "PARAMETERS"
.PP
\fIname\fR
.RS 4
The name of a subscription to be dropped\&.
.RE
.PP
CASCADE
.br
RESTRICT
.RS 4
These key words do not have any effect, since there are no dependencies on subscriptions\&.
.RE
.SH "NOTES"
.PP
When dropping a subscription that is associated with a replication slot on the remote host (the normal state),
\fBDROP SUBSCRIPTION\fR
will connect to the remote host and try to drop the replication slot (and any remaining table synchronization slots) as part of its operation\&. This is necessary so that the resources allocated for the subscription on the remote host are released\&. If this fails, either because the remote host is not reachable or because the remote replication slot cannot be dropped or does not exist or never existed, the
\fBDROP SUBSCRIPTION\fR
command will fail\&. To proceed in this situation, first disable the subscription by executing
ALTER SUBSCRIPTION \&.\&.\&. DISABLE, and then disassociate it from the replication slot by executing
ALTER SUBSCRIPTION \&.\&.\&. SET (slot_name = NONE)\&. After that,
\fBDROP SUBSCRIPTION\fR
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
Section\ \&31.2.1\&.
.PP
If a subscription is associated with a replication slot, then
\fBDROP SUBSCRIPTION\fR
cannot be executed inside a transaction block\&.
.SH "EXAMPLES"
.PP
Drop a subscription:
.sp
.if n \{\
.RS 4
.\}
.nf
DROP SUBSCRIPTION mysub;
.fi
.if n \{\
.RE
.\}
.SH "COMPATIBILITY"
.PP
\fBDROP SUBSCRIPTION\fR
is a
PostgreSQL
extension\&.
.SH "SEE ALSO"
CREATE SUBSCRIPTION (\fBCREATE_SUBSCRIPTION\fR(7)), ALTER SUBSCRIPTION (\fBALTER_SUBSCRIPTION\fR(7))