Re: Restructured Shared Buffer Hash Table

From: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
To: Dhruv Aron <dhruv(dot)aron(at)gmail(dot)com>, Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org, haoyu(dot)huang(dot)68(at)gmail(dot)com
Subject: Re: Restructured Shared Buffer Hash Table
Date: 2026-08-05 16:02:27
Message-ID: 6a184a00-0799-4d47-88ac-27645db2b0ad@iki.fi
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 10/07/2026 21:53, Dhruv Aron wrote:
> On Tue, 7 Jul 2026 at 20:14, Heikki Linnakangas <hlinnaka(at)iki(dot)fi
> <mailto:hlinnaka(at)iki(dot)fi>> wrote:
> > Or maybe it's not a problem, in which case some kind of a
> > worst case scenario benchmark to show that would be nice. Maybe test how
> > it behaves when you have a lot of hash collisions, I think that'd make
> > BufTableDelete() more expensive.
>
> My additional benchmarking would suggest that, on average (one entry per
> bucket), the spinlock would be held for an extra ~50ns compared to
> releasing the header lock earlier for the current dynahash implementation:

It's not clear to me what the impact of that is in practice. Is that a
problem or not? Can you come up with an adversary test case where those
conflicts cause a lot of spinning?

Can you share the benchmark you used, please?

- Heikki

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2026-08-05 16:05:04 Re: Add counted_by attribute
Previous Message Melanie Plageman 2026-08-05 15:52:39 Re: BUG: ReadStream look-ahead exhausts local buffers when effective_io_concurrency>=64