| From: | Melanie Plageman <melanieplageman(at)gmail(dot)com> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: Allocate separate DSM chunk for parallel Index[Only]Scan instrum |
| Date: | 2026-04-06 23:14:53 |
| Message-ID: | E1w9t9g-003Itk-22@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
Allocate separate DSM chunk for parallel Index[Only]Scan instrumentation
Previously, parallel index and index-only scans packed the parallel scan
descriptor and shared instrumentation (for EXPLAIN ANALYZE) into a
single DSM allocation. Since scans may be instrumented without being
parallel-aware, and vice versa, using separate DSM chunks -- each with
its own TOC key -- is cleaner. A future commit will extend this pattern
to other scan node types.
Author: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Reviewed-by: Tomas Vondra <tomas(at)vondra(dot)me>
Discussion: https://postgr.es/m/flat/a177a6dd-240b-455a-8f25-aca0b1c08c6e%40vondra.me
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/dd78e69cfc337f93cfc0303ddf660262d7f1237e
Modified Files
--------------
src/backend/access/index/indexam.c | 51 ++-----------
src/backend/executor/execParallel.c | 40 +++++++---
src/backend/executor/nodeBitmapIndexscan.c | 9 ++-
src/backend/executor/nodeIndexonlyscan.c | 114 +++++++++++++++++------------
src/backend/executor/nodeIndexscan.c | 114 +++++++++++++++++------------
src/include/access/genam.h | 7 +-
src/include/access/relscan.h | 1 -
src/include/executor/instrument_node.h | 8 ++
src/include/executor/nodeIndexonlyscan.h | 6 ++
src/include/executor/nodeIndexscan.h | 6 ++
10 files changed, 202 insertions(+), 154 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2026-04-06 23:24:55 | pgsql: Fix shared memory size of template code for custom fixed-sized p |
| Previous Message | Melanie Plageman | 2026-04-06 22:42:53 | pgsql: Assert no duplicate keys in shm_toc_insert() |