Give more accurate error message for dropping pinned portal

The previous code gave the same error message for attempting to drop
pinned and active portals, but those are separate states, so give
separate error messages.
This commit is contained in:
Peter Eisentraut 2018-01-10 09:22:07 -05:00
parent d16c2de624
commit acc67ffd0a

View File

@ -464,11 +464,17 @@ PortalDrop(Portal portal, bool isTopCommit)
/*
* Don't allow dropping a pinned portal, it's still needed by whoever
* pinned it. Not sure if the PORTAL_ACTIVE case can validly happen or
* not...
* pinned it.
*/
if (portal->portalPinned ||
portal->status == PORTAL_ACTIVE)
if (portal->portalPinned)
ereport(ERROR,
(errcode(ERRCODE_INVALID_CURSOR_STATE),
errmsg("cannot drop pinned portal \"%s\"", portal->name)));
/*
* Not sure if the PORTAL_ACTIVE case can validly happen or not...
*/
if (portal->status == PORTAL_ACTIVE)
ereport(ERROR,
(errcode(ERRCODE_INVALID_CURSOR_STATE),
errmsg("cannot drop active portal \"%s\"", portal->name)));