>>>>> "Tom" == Tom Lane <t...@sss.pgh.pa.us> writes:
Tom> I would bet money that that "_SPI_current->internal_xact" thing is Tom> wrong/inadequate. In particular this looks wrong to me: after doing: do $$ begin execute 'declare foo cursor with hold for select 1/x as a from (values (1),(0)) v(x)'; commit; -- errors within the commit end; $$; ERROR: division by zero CONTEXT: PL/pgSQL function inline_code_block line 1 at COMMIT the SPI stack is not cleaned up at all, and _SPI_connected is >= 0 even when back at the main backend command loop. -- Andrew (irc:RhodiumToad)