postgres.git / summary / log / commit / refs

commit    dcecdfafbd2dbdfaa0f82e7710abfa65242a1d1e
Author:   Amit Kapila <akapila@postgresql.org>
Date:     Mon Jul 19 03:02:37 2021 +0000
First released in: 15.0

    Update comments for AlterSubscription.
    
    Add explanation as to why the subscription needs to be disabled to allow
    slot_name as none.
    
    Author: Japin Li and Amit Kapila
    Discussion: https://postgr.es/m/MEYP282MB1669CBD98E721C77CA696499B61A9@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM


src/backend/commands/subscriptioncmds.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/backend/commands/subscriptioncmds.c b/src/backend/commands/subscriptioncmds.c index 239d263f835..cc4c1b47e4e 100644 --- a/src/backend/commands/subscriptioncmds.c +++ b/src/backend/commands/subscriptioncmds.c @@ -894,6 +894,13 @@ AlterSubscription(ParseState *pstate, AlterSubscriptionStmt *stmt, if (IsSet(opts.specified_opts, SUBOPT_SLOT_NAME)) { + /* + * The subscription must be disabled to allow slot_name as + * 'none', otherwise, the apply worker will repeatedly try + * to stream the data using that slot_name which neither + * exists on the publisher nor the user will be allowed to + * create it. + */ if (sub->enabled && !opts.slot_name) ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), [parent: 2dbe8905711b]