Re: Adding skip scan (including MDAM style range skip scan) to nbtree

From: Peter Geoghegan <pg(at)bowt(dot)ie>
To: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: Masahiro Ikeda <ikedamsh(at)oss(dot)nttdata(dot)com>, Tomas Vondra <tomas(at)vondra(dot)me>, Masahiro(dot)Ikeda(at)nttdata(dot)com, pgsql-hackers(at)lists(dot)postgresql(dot)org, Masao(dot)Fujii(at)nttdata(dot)com
Subject: Re: Adding skip scan (including MDAM style range skip scan) to nbtree
Date: 2025-03-08 16:43:33
Message-ID: CAH2-Wz=H_RG5weNGeUG_TkK87tRBnH9mGCQj6WpM4V4FNWKv2g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Feb 27, 2025 at 1:23 PM Peter Geoghegan <pg(at)bowt(dot)ie> wrote:
> Attached is v26, which has no functional changes. This is just to fix
> yet more bitrot.

Attached is v27, which fixes bitrot. It also has some notable changes:

* New approach to "Index Searches: N" instrumentation patch, following
the recent revert of the original approach following
"debug_parallel_query=regress" buildfarm failures.

This is being discussed over on the thread that I started to discuss
the EXPLAIN ANALYZE instrumentation work:

https://www.postgresql.org/message-id/CAH2-Wzk%2BcXBD1tnhQ-oagHuY9Fw5uArJE%2BLxfAP2VjZmDawbeQ%40mail.gmail.com

* New patch that makes BTMaxItemSize not require a "Page" arg, so that
it can be used in contexts where a page image isn't close at hand.
This is preparation for the approach taken to parallel index scans,
where we apply a conservative "1/3 of a page" worst case limit on the
size of a datum, but don't have a page to pass to BTMaxItemSize.

I plan on committing this one soon. It's obviously pretty pointless to
make the BTMaxItemSize operate off of a page header, and not requiring
it is more flexible.

--
Peter Geoghegan

Attachment Content-Type Size
v27-0007-DEBUG-Add-skip-scan-disable-GUCs.patch application/x-patch 4.4 KB
v27-0006-Apply-low-order-skip-key-in-_bt_first-more-often.patch application/x-patch 11.7 KB
v27-0004-Add-nbtree-skip-scan-optimizations.patch application/x-patch 174.2 KB
v27-0005-Lower-nbtree-skip-array-maintenance-overhead.patch application/x-patch 33.7 KB
v27-0001-Show-index-search-count-in-EXPLAIN-ANALYZE-take-.patch application/x-patch 98.3 KB
v27-0003-Improve-nbtree-SAOP-primitive-scan-scheduling.patch application/x-patch 24.5 KB
v27-0002-Make-BTMaxItemSize-macro-not-require-a-Page-arg.patch application/x-patch 7.2 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Geoghegan 2025-03-08 16:47:25 Re: Showing primitive index scan count in EXPLAIN ANALYZE (for skip scan and SAOP scans)
Previous Message Nikhil Kumar Veldanda 2025-03-08 16:28:17 Re: ZStandard (with dictionaries) compression support for TOAST compression