OSDN Git Service

Force READY portals into FAILED state when a transaction or subtransaction
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 18 Feb 2010 03:06:46 +0000 (03:06 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 18 Feb 2010 03:06:46 +0000 (03:06 +0000)
commit7981c34279fbddc254cfccb9a2eec4b35e692a12
tree454e03c935aae1e552853c1a2e377287484ff2fe
parentc0d5be5d6a736d2ee8141e920bc3de8e001bf6d9
Force READY portals into FAILED state when a transaction or subtransaction
is aborted, if they were created within the failed xact.  This prevents
ExecutorEnd from being run on them, which is a good idea because they may
contain references to tables or other objects that no longer exist.
In particular this is hazardous when auto_explain is active, but it's
really rather surprising that nobody has seen an issue with this before.
I'm back-patching this to 8.4, since that's the first version that contains
auto_explain or an ExecutorEnd hook, but I wonder whether we shouldn't
back-patch further.
src/backend/utils/mmgr/portalmem.c