Re: Add pg_buffercache_evict_all() and pg_buffercache_mark_dirty[_all]() functions

Nazir Bilal Yavuz <byavuz81@gmail.com>

From: Nazir Bilal Yavuz <byavuz81@gmail.com>
To: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: Andres Freund <andres@anarazel.de>, Aidar Imamov <a.imamov@postgrespro.ru>, Joseph Koshakow <koshy44@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-04-11T08:01:21Z
Lists: pgsql-hackers
Hi,

On Thu, 10 Apr 2025 at 16:50, Bertrand Drouvot
<bertranddrouvot.pg@gmail.com> wrote:
> On Tue, Apr 08, 2025 at 02:40:52AM -0400, Andres Freund wrote:
> > I think it's ok for now.  It might be worth doing a larger redesign of the
> > pgbuffercache docs at some point...
> >
> >
> > Pushed.
> >
> >
> > Thanks for your patches and thanks for all the reviewers getting this ready!
>
> Thanks for the patch! That sounds like a great addition. I was doing some
> tests and did not see any issues.

Thank you for looking into this!

> Also while doing the tests I thouhgt that it
> could be useful to evict only from a subset of NUMA nodes (now that NUMA
> awareness is in). We'd need to figure out what to do for buffers that are spread
> across NUMA nodes though.
>
> Does that sound like an idea worth to spend time on? (If so, I'd be happy to work
> on it).

I think it looks useful, but I’m not too familiar with NUMA, so I’m
not sure I can say much with confidence. Maybe someone else can chime
in with a more solid take?

--
Regards,
Nazir Bilal Yavuz
Microsoft



Commits

  1. pg_buffercache: Add pg_buffercache_mark_dirty{,_relation,_all}()

  2. doc: Add missing tags in pg_buffercache page

  3. Add routines for marking buffers dirty efficiently

  4. Add pg_buffercache_evict_{relation,all} functions