diff options
Diffstat (limited to 'src/backend/storage/lmgr')
-rw-r--r-- | src/backend/storage/lmgr/lock.c | 9 | ||||
-rw-r--r-- | src/backend/storage/lmgr/proc.c | 2 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/backend/storage/lmgr/lock.c b/src/backend/storage/lmgr/lock.c index 38a5d75bbe1..002303664aa 100644 --- a/src/backend/storage/lmgr/lock.c +++ b/src/backend/storage/lmgr/lock.c @@ -1897,6 +1897,15 @@ GetAwaitedLock(void) } /* + * ResetAwaitedLock -- Forget that we are waiting on a lock. + */ +void +ResetAwaitedLock(void) +{ + awaitedLock = NULL; +} + +/* * MarkLockClear -- mark an acquired lock as "clear" * * This means that we know we have absorbed all sinval messages that other diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c index e4ca861a8e6..066319afe2b 100644 --- a/src/backend/storage/lmgr/proc.c +++ b/src/backend/storage/lmgr/proc.c @@ -814,6 +814,8 @@ LockErrorCleanup(void) GrantAwaitedLock(); } + ResetAwaitedLock(); + LWLockRelease(partitionLock); RESUME_INTERRUPTS(); |