Re: index prefetching

From: Tomas Vondra <tomas(at)vondra(dot)me>
To: Peter Geoghegan <pg(at)bowt(dot)ie>, Andres Freund <andres(at)anarazel(dot)de>
Cc: 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-12 14:43:28
Message-ID: 3f748033-4679-44c2-a74d-b3306528e443@vondra.me
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

I took a quick look at 0001 and 0002 patches, and I think it's mostly
ready to go.

I only have a couple very minor comments:

1) v12-0001-Use-simple-hash-for-PrivateRefCount.patch

- seems like a (mostly) mechanical switch for a different hashtable
- I don't see anything particularly wrong with it
- the "common/hashfn.h" include seems in the wrong place
- it seems we're losing "Assert(found)" in GetPrivateRefCountEntrySlow,
not sure if that's a problem in practice

2) v12-0002-Don-t-allocate-_bt_search-stack.patch

- seems like a reasonable optimization for most callers
- _bt_search could set "stack_in = new_stack;" in the first if block, I
think it's nicer
- My only concern is that _bt_search is part of the public API (at least
technically, as it's in nbtree.h), and we're removing _bt_freestack()
from the API so the callers won't have a convenient way to free it.
Maybe that's not an issue in practice, because doing a local version of
freestack is easy.

regards

--
Tomas Vondra

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2026-03-12 15:07:25 Re: Areas for Solaris support modernization
Previous Message Daniel Gustafsson 2026-03-12 14:36:00 Re: Serverside SNI support in libpq