Christophe Pettus <[email protected]> writes:
>> On Sep 27, 2021, at 10:42, Christophe Pettus <[email protected]> wrote:
>> We've encountered some unexpected behavior with statement_timeout not
>> cancelling a query in DECLARE CURSOR, but only if the DECLARE CURSOR is
>> outside of a transaction:
> A bit more poking revealed the reason: The ON HOLD cursor's query is executed
> at commit time (which is, logically, not interruptible), but that's all
> wrapped in the single statement outside of a transaction.
Hmm ... seems like a bit of a UX failure. I wonder why we don't persist
such cursors before we get into the uninterruptible part of COMMIT.
regards, tom lane