Re: index prefetching

From: Peter Geoghegan <pg(at)bowt(dot)ie>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Tomas Vondra <tomas(at)vondra(dot)me>, Alexandre Felipe <o(dot)alexandre(dot)felipe(at)gmail(dot)com>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Melanie Plageman <melanieplageman(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Georgios <gkokolatos(at)protonmail(dot)com>, Konstantin Knizhnik <knizhnik(at)garret(dot)ru>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>
Subject: Re: index prefetching
Date: 2026-03-17 17:37:34
Message-ID: CAH2-WzkyG01682zwqyUTwV=Zq+M_qGgi1NbXwp1H-piRSfJsgQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Mar 13, 2026 at 8:50 PM Peter Geoghegan <pg(at)bowt(dot)ie> wrote:
> Several patches from this patchset have been committed to master. I'm
> posting a new version (v14) here to keep the patch applying cleanly.

v14 has already bitrot, so I'm posting this new v15 to keep the
patchset applying cleanly.

There is one new patch in v15:
v15-0007-Add-UnlockBufferGetLSN-utility-function.patch. This adds a
new utility function to bufmgr.c, which combines the functionality of
BufferGetLSNAtomic with UnlockReleaseBuffer. This microoptimization is
intended to avoid regressions against master with workloads like
pgbench SELECT. With this, we're slightly faster than the master
branch on these workloads.

--
Peter Geoghegan

Attachment Content-Type Size
v15-0017-Make-hash-index-AM-use-amgetbatch-interface.patch application/octet-stream 45.5 KB
v15-0001-Make-IndexScanInstrumentation-a-pointer-in-execu.patch application/octet-stream 9.1 KB
v15-0016-Add-fake-LSN-support-to-hash-index-AM.patch application/octet-stream 14.0 KB
v15-0014-WIP-read_stream-Prevent-distance-from-decaying-t.patch application/octet-stream 2.9 KB
v15-0015-WIP-aio-io_uring-Use-IO-size-not-IO-queue-to-tri.patch application/octet-stream 4.1 KB
v15-0013-WIP-read_stream-Only-increase-distance-when-wait.patch application/octet-stream 2.3 KB
v15-0012-bufmgr-Return-whether-WaitReadBuffers-needed-to-.patch application/octet-stream 2.8 KB
v15-0011-WIP-aio-io_uring-Allow-IO-methods-to-check-if-IO.patch application/octet-stream 4.6 KB
v15-0009-Don-t-wait-for-already-in-progress-IO.patch application/octet-stream 20.6 KB
v15-0010-WIP-read_stream-Issue-IO-synchronously-while-in-.patch application/octet-stream 2.0 KB
v15-0008-Make-buffer-hit-helper.patch application/octet-stream 6.0 KB
v15-0006-Use-ExecSetTupleBound-hint-during-index-scans.patch application/octet-stream 10.9 KB
v15-0007-Add-UnlockBufferGetLSN-utility-function.patch application/octet-stream 3.4 KB
v15-0004-Limit-get_actual_variable_range-to-scan-three-in.patch application/octet-stream 10.4 KB
v15-0005-Add-heapam-index-scan-I-O-prefetching.patch application/octet-stream 40.7 KB
v15-0002-heapam-Track-heap-block-in-IndexFetchHeapData-us.patch application/octet-stream 3.9 KB
v15-0003-Add-interfaces-that-enable-index-prefetching.patch application/octet-stream 255.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Masahiko Sawada 2026-03-17 17:39:40 Re: Patch for migration of the pg_commit_ts directory
Previous Message Nathan Bossart 2026-03-17 17:31:51 Re: table AM option passing