mirror of
https://github.com/postgres/postgres.git
synced 2025-10-25 13:17:41 +03:00
Make FP_LOCK_SLOTS_PER_BACKEND look like a function
The FP_LOCK_SLOTS_PER_BACKEND macro looks like a constant, but it depends on the max_locks_per_transaction GUC, and thus can change. This is non-obvious and confusing, so make it look more like a function by renaming it to FastPathLockSlotsPerBackend(). While at it, use the macro when initializing fast-path shared memory, instead of using the formula. Reported-by: Andres Freund Discussion: https://postgr.es/m/ffiwtzc6vedo6wb4gbwelon5nefqg675t5c7an2ta7pcz646cg%40qwmkdb3l4ett
This commit is contained in:
@@ -88,7 +88,8 @@ extern PGDLLIMPORT int FastPathLockGroupsPerBackend;
|
||||
|
||||
#define FP_LOCK_GROUPS_PER_BACKEND_MAX 1024
|
||||
#define FP_LOCK_SLOTS_PER_GROUP 16 /* don't change */
|
||||
#define FP_LOCK_SLOTS_PER_BACKEND (FP_LOCK_SLOTS_PER_GROUP * FastPathLockGroupsPerBackend)
|
||||
#define FastPathLockSlotsPerBackend() \
|
||||
(FP_LOCK_SLOTS_PER_GROUP * FastPathLockGroupsPerBackend)
|
||||
|
||||
/*
|
||||
* Flags for PGPROC.delayChkptFlags
|
||||
|
||||
Reference in New Issue
Block a user