diff options
Diffstat (limited to 'src/backend/storage/lmgr/proc.c')
-rw-r--r-- | src/backend/storage/lmgr/proc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c index 65e8afe457f..24636223b1d 100644 --- a/src/backend/storage/lmgr/proc.c +++ b/src/backend/storage/lmgr/proc.c @@ -655,11 +655,16 @@ LockErrorCleanup(void) LWLock *partitionLock; DisableTimeoutParams timeouts[2]; + HOLD_INTERRUPTS(); + AbortStrongLockAcquire(); /* Nothing to do if we weren't waiting for a lock */ if (lockAwaited == NULL) + { + RESUME_INTERRUPTS(); return; + } /* * Turn off the deadlock and lock timeout timers, if they are still @@ -709,6 +714,8 @@ LockErrorCleanup(void) * wakeup signal isn't harmful, and it seems not worth expending cycles to * get rid of a signal that most likely isn't there. */ + + RESUME_INTERRUPTS(); } |