Re: Showing primitive index scan count in EXPLAIN ANALYZE (for skip scan and SAOP scans)

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Peter Geoghegan <pg@bowt.ie>
Cc: Matthias van de Meent <boekewurm+postgres@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-03-03T21:01:11Z
Lists: pgsql-hackers
On Thu, Feb 27, 2025 at 7:58 PM Peter Geoghegan <pg@bowt.ie> wrote:
> It's easy to produce an example that makes intuitive sense. For
> example, with skip scan that has a qual such as "WHERE a BETWEEN 1 and
> 5 AND b = 12345", it is likely that EXPLAIN ANALYZE will show "Index
> Searches: 5" -- one search per "a" value. Such an example might be
> more useful than my original pgbench_accounts example.
>
> Do you think that that would help?

Yes.

> It is unique right now, but perhaps only because this is the first
> piece of instrumentation that:

Yeah, possible.

> Perhaps a comment noting why the new counter lives in IndexScanDesc would help?

+1.

> I do get that. I hope that you don't think that I've failed to take
> your feedback on board.

To the contrary, I appreciate you taking the time to listen to my opinion.

-- 
Robert Haas
EDB: http://www.enterprisedb.com



Commits

  1. Show index search count in EXPLAIN ANALYZE, take 2.

  2. Show index search count in EXPLAIN ANALYZE.

  3. Allow usage of match_orclause_to_indexcol() for joins

  4. Fix nbtree pgstats accounting with parallel scans.

  5. Enhance nbtree ScalarArrayOp execution.

  6. Fix EXPLAIN ANALYZE of hash join when the leader doesn't participate.