diff options
Diffstat (limited to 'src/backend/storage/lmgr/lock.c')
-rw-r--r-- | src/backend/storage/lmgr/lock.c | 32 |
1 files changed, 4 insertions, 28 deletions
diff --git a/src/backend/storage/lmgr/lock.c b/src/backend/storage/lmgr/lock.c index 0a692ee0a6d..f595bce31b9 100644 --- a/src/backend/storage/lmgr/lock.c +++ b/src/backend/storage/lmgr/lock.c @@ -186,18 +186,6 @@ static int FastPathLocalUseCount = 0; */ static bool IsRelationExtensionLockHeld PG_USED_FOR_ASSERTS_ONLY = false; -/* - * Flag to indicate if the page lock is held by this backend. We don't - * acquire any other heavyweight lock while holding the page lock except for - * relation extension. However, these locks are never taken in reverse order - * which implies that page locks will also never participate in the deadlock - * cycle. - * - * Similar to relation extension, page locks are also held for a short - * duration, so imposing such a restriction won't hurt. - */ -static bool IsPageLockHeld PG_USED_FOR_ASSERTS_ONLY = false; - /* Macros for manipulating proc->fpLockBits */ #define FAST_PATH_BITS_PER_SLOT 3 #define FAST_PATH_LOCKNUMBER_OFFSET 1 @@ -887,13 +875,6 @@ LockAcquireExtended(const LOCKTAG *locktag, Assert(!IsRelationExtensionLockHeld); /* - * We don't acquire any other heavyweight lock while holding the page lock - * except for relation extension. - */ - Assert(!IsPageLockHeld || - (locktag->locktag_type == LOCKTAG_RELATION_EXTEND)); - - /* * Prepare to emit a WAL record if acquisition of this lock needs to be * replayed in a standby server. * @@ -1340,10 +1321,10 @@ SetupLockInTable(LockMethod lockMethodTable, PGPROC *proc, } /* - * Check and set/reset the flag that we hold the relation extension/page lock. + * Check and set/reset the flag that we hold the relation extension lock. * * It is callers responsibility that this function is called after - * acquiring/releasing the relation extension/page lock. + * acquiring/releasing the relation extension lock. * * Pass acquired as true if lock is acquired, false otherwise. */ @@ -1353,9 +1334,6 @@ CheckAndSetLockHeld(LOCALLOCK *locallock, bool acquired) #ifdef USE_ASSERT_CHECKING if (LOCALLOCK_LOCKTAG(*locallock) == LOCKTAG_RELATION_EXTEND) IsRelationExtensionLockHeld = acquired; - else if (LOCALLOCK_LOCKTAG(*locallock) == LOCKTAG_PAGE) - IsPageLockHeld = acquired; - #endif } @@ -1480,11 +1458,9 @@ LockCheckConflicts(LockMethod lockMethodTable, } /* - * The relation extension or page lock conflict even between the group - * members. + * The relation extension lock conflict even between the group members. */ - if (LOCK_LOCKTAG(*lock) == LOCKTAG_RELATION_EXTEND || - (LOCK_LOCKTAG(*lock) == LOCKTAG_PAGE)) + if (LOCK_LOCKTAG(*lock) == LOCKTAG_RELATION_EXTEND) { PROCLOCK_PRINT("LockCheckConflicts: conflicting (group)", proclock); |