pgsql: Add EXPLAIN (IO) instrumentation for SeqScan

From: Tomas Vondra <tomas(dot)vondra(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add EXPLAIN (IO) instrumentation for SeqScan
Date: 2026-04-07 21:07:37
Message-ID: E1wADe4-003S8t-3C@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add EXPLAIN (IO) instrumentation for SeqScan

Adds support for EXPLAIN (IO) instrumentation for sequential scans. This
requires adding shared instrumentation, using the separate DSM approach
introduced by dd78e69cfc33.

Author: Tomas Vondra <tomas(at)vondra(dot)me>
Reviewed-by: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Reviewed-by: Lukas Fittl <lukas(at)fittl(dot)com>
Reviewed-by: Andres Freund <andres(at)anarazel(dot)de>
Discussion: https://postgr.es/m/flat/a177a6dd-240b-455a-8f25-aca0b1c08c6e%40vondra.me

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3b1117d6e2e47d86cdbd978b79434c630cb0ef52

Modified Files
--------------
src/backend/commands/explain.c | 25 +++++++
src/backend/executor/execParallel.c | 11 +++
src/backend/executor/nodeSeqscan.c | 133 ++++++++++++++++++++++++++++++---
src/include/executor/instrument_node.h | 19 +++++
src/include/executor/nodeSeqscan.h | 9 +++
src/include/nodes/execnodes.h | 1 +
src/test/regress/expected/explain.out | 18 ++++-
src/test/regress/sql/explain.sql | 4 +-
src/tools/pgindent/typedefs.list | 2 +
9 files changed, 209 insertions(+), 13 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2026-04-07 21:18:47 pgsql: pg_test_timing: Also test RDTSC[P] timing, report time source, T
Previous Message Tom Lane 2026-04-07 21:03:32 pgsql: Suppress unused-variable warning.