From d03d7549b29236e300aceac0c22173cf19acc675 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 24 Nov 2020 12:39:58 +0900 Subject: [PATCH] Use macros instead of hardcoded offsets for LWLock initialization This makes the code slightly easier to follow, as the initialization relies on an offset that overlapped with an equivalent set of macros defined, which are used in other places already. Author: Japin Li Discussion: https://postgr.es/m/MEYP282MB1669FB410006758402F2C3A2B6E00@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM --- src/backend/storage/lmgr/lwlock.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/backend/storage/lmgr/lwlock.c b/src/backend/storage/lmgr/lwlock.c index 2fa90cc095..108e652179 100644 --- a/src/backend/storage/lmgr/lwlock.c +++ b/src/backend/storage/lmgr/lwlock.c @@ -525,18 +525,17 @@ InitializeLWLocks(void) LWLockInitialize(&lock->lock, id); /* Initialize buffer mapping LWLocks in main array */ - lock = MainLWLockArray + NUM_INDIVIDUAL_LWLOCKS; + lock = MainLWLockArray + BUFFER_MAPPING_LWLOCK_OFFSET; for (id = 0; id < NUM_BUFFER_PARTITIONS; id++, lock++) LWLockInitialize(&lock->lock, LWTRANCHE_BUFFER_MAPPING); /* Initialize lmgrs' LWLocks in main array */ - lock = MainLWLockArray + NUM_INDIVIDUAL_LWLOCKS + NUM_BUFFER_PARTITIONS; + lock = MainLWLockArray + LOCK_MANAGER_LWLOCK_OFFSET; for (id = 0; id < NUM_LOCK_PARTITIONS; id++, lock++) LWLockInitialize(&lock->lock, LWTRANCHE_LOCK_MANAGER); /* Initialize predicate lmgrs' LWLocks in main array */ - lock = MainLWLockArray + NUM_INDIVIDUAL_LWLOCKS + - NUM_BUFFER_PARTITIONS + NUM_LOCK_PARTITIONS; + lock = MainLWLockArray + PREDICATELOCK_MANAGER_LWLOCK_OFFSET; for (id = 0; id < NUM_PREDICATELOCK_PARTITIONS; id++, lock++) LWLockInitialize(&lock->lock, LWTRANCHE_PREDICATE_LOCK_MANAGER);