On Thu, May 13, 2021 at 8:45 AM Japin Li <japinli@hotmail.com> wrote:
> >> Dropping all the publications present in the subscription using alter
> >> subscription drop publication would throw "subscription must contain
> >> at least one publication". This message was slightly confusing to me.
> >> As even though some publication was present on the subscription I was
> >> not able to drop. Instead I feel we could throw an error message
> >> something like "dropping specified publication will result in
> >> subscription without any publication, this is not supported".
> >
> > -1 for that long message. The intention of that error was to throw an
> > error if all the publications of a subscription are dropped. If that's
> > so confusing, then you could just let the error message be
> > "subscription must contain at least one publication", add an error
> > detail "Subscription without any publication is not allowed to
> > exist/is not supported." or "Removing/Dropping all the publications
> > from a subscription is not allowed/supported." or some other better
> > wording.
> >
>
> Agree with Bharath. We can use a detail message. How about?
>
> if (!oldpublist)
> ereport(ERROR,
> (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
> errmsg("subscription must contain at least one publication"),
> errdetail("Dropping all the publications from a subscription is not supported")));
Or how about just errmsg("cannot drop all the publications of the
subscriber \"%s\"", subname) without any error detail?
With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com