]> granicus.if.org Git - postgresql/commit
Teach AbortOutOfAnyTransaction to clean up partially-started transactions.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 29 May 2012 03:57:20 +0000 (23:57 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 29 May 2012 03:57:20 +0000 (23:57 -0400)
commit73bf9b77fc28840a335002d8dc817e8706d9a2ce
tree26d95d27224da7e5390ac6e1f53d85d3c34ee647
parent785b8d6ab312e5bee0846094fe06982c1d4c07f2
Teach AbortOutOfAnyTransaction to clean up partially-started transactions.

AbortOutOfAnyTransaction failed to do anything if the state it saw on
entry corresponded to failing partway through StartTransaction.  I fixed
AbortCurrentTransaction to cope with that case way back in commit
60b2444cc3ba037630c9b940c3c9ef01b954b87b, but evidently overlooked that
AbortOutOfAnyTransaction should do likewise.

Back-patch to all supported branches.  It's not clear that this omission
has any more-than-cosmetic consequences, but it's also not clear that it
doesn't, so back-patching seems the least risky choice.
src/backend/access/transam/xact.c