Yura Sokolov <y.sokolov@postgrespro.ru> writes:
> I propose to add PortalDrop at the 'if (completed)' branch of
> exec_execute_message.
This violates our wire protocol specification, which
specifically says
If successfully created, a named portal object lasts till the end of
the current transaction, unless explicitly destroyed. An unnamed
portal is destroyed at the end of the transaction, or as soon as the
next Bind statement specifying the unnamed portal as destination is
issued. (Note that a simple Query message also destroys the unnamed
portal.)
I'm inclined to think that your complaint would be better handled
by having the client send a portal-close command, if it's not
going to do something else immediately.
regards, tom lane