Add HOLD_INTERRUPTS section into FinishPreparedTransaction

Enterprise / PostgreSQL - Teodor Sigaev [sigaev.ru] - 3 May 2018 17:08 EDT

If an interrupt arrives in the middle of FinishPreparedTransaction and any callback decide to call CHECK_FOR_INTERRUPTS (e.g. RemoveTwoPhaseFile can write a warning with ereport, which checks for interrupts) then it's possible to leave current GXact undeleted.

Backpatch to all supported branches

Stas Kelvich

Discussion: ihttps://www.postgresql.org/message-id/3AD85097-A3F3-4EBA-99BD-C38EDF8D2949@postgrespro.ru

8f9be261f4 Add HOLD_INTERRUPTS section into FinishPreparedTransaction.
src/backend/access/transam/twophase.c | 5 +++++
1 file changed, 5 insertions(+)

Upstream: git.postgresql.org


  • Share