diff options
| author | Peter Geoghegan | 2025-03-08 16:10:14 +0000 |
|---|---|---|
| committer | Peter Geoghegan | 2025-03-08 16:10:14 +0000 |
| commit | 67fc4c9fd7fab7004b656e0cc27826c75d7ea7ad (patch) | |
| tree | 2e0555a4b537036caa392a64aa079c5552334204 /src/backend/storage | |
| parent | 8021c77769e90cc804121d61a1bb7bcc4652d48b (diff) | |
Make parallel nbtree index scans use an LWLock.
Teach parallel nbtree index scans to use an LWLock (not a spinlock) to
protect the scan's shared descriptor state.
Preparation for an upcoming patch that will add skip scan optimizations
to nbtree. That patch will create the need to occasionally allocate
memory while the scan descriptor is locked, while copying datums that
were serialized by another backend.
Author: Peter Geoghegan <[email protected]>
Reviewed-By: Matthias van de Meent <[email protected]>
Discussion: https://postgr.es/m/CAH2-Wz=PKR6rB7qbx+Vnd7eqeB5VTcrW=iJvAsTsKbdG+kW_UA@mail.gmail.com
Diffstat (limited to 'src/backend/storage')
| -rw-r--r-- | src/backend/storage/lmgr/lwlock.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/backend/storage/lmgr/lwlock.c b/src/backend/storage/lmgr/lwlock.c index 8adf2730277..5702c35bb91 100644 --- a/src/backend/storage/lmgr/lwlock.c +++ b/src/backend/storage/lmgr/lwlock.c @@ -153,6 +153,7 @@ static const char *const BuiltinTrancheNames[] = { [LWTRANCHE_LOCK_MANAGER] = "LockManager", [LWTRANCHE_PREDICATE_LOCK_MANAGER] = "PredicateLockManager", [LWTRANCHE_PARALLEL_HASH_JOIN] = "ParallelHashJoin", + [LWTRANCHE_PARALLEL_BTREE_SCAN] = "ParallelBtreeScan", [LWTRANCHE_PARALLEL_QUERY_DSA] = "ParallelQueryDSA", [LWTRANCHE_PER_SESSION_DSA] = "PerSessionDSA", [LWTRANCHE_PER_SESSION_RECORD_TYPE] = "PerSessionRecordType", |
