pgsql: Allocate separate DSM chunk for parallel Index[Only]Scan instrum - Mailing list pgsql-committers

From Melanie Plageman
Subject pgsql: Allocate separate DSM chunk for parallel Index[Only]Scan instrum
Date
Msg-id E1w9t9g-003Itk-22@gemulon.postgresql.org
Whole thread Raw
List 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@gmail.com>
Reviewed-by: Tomas Vondra <tomas@vondra.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(-)


pgsql-committers by date:

Previous
From: Melanie Plageman
Date:
Subject: pgsql: Assert no duplicate keys in shm_toc_insert()
Next
From: Michael Paquier
Date:
Subject: pgsql: Fix shared memory size of template code for custom fixed-sized p