]> granicus.if.org Git - postgresql/commit
Allow interrupting GetMultiXactIdMembers
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Fri, 14 Nov 2014 18:14:01 +0000 (15:14 -0300)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Fri, 14 Nov 2014 18:14:01 +0000 (15:14 -0300)
commit51f9ea25dc4296948eb851a851bb60e0860c70a1
tree0935090db8b5313aa6bc976fce10920ed3ec6a6d
parent0c5af0a537a2d6320eb8ef7f401401aa1f47b79e
Allow interrupting GetMultiXactIdMembers

This function has a loop which can lead to uninterruptible process
"stalls" (actually infinite loops) when some bugs are triggered.  Avoid
that unpleasant situation by adding a check for interrupts in a place
that shouldn't degrade performance in the normal case.

Backpatch to 9.3.  Older branches have an identical loop here, but the
aforementioned bugs are only a problem starting in 9.3 so there doesn't
seem to be any point in backpatching any further.
src/backend/access/transam/multixact.c