Re: Extension Enhancement: Buffer Invalidation in pg_buffercache
Thomas Munro <thomas.munro@gmail.com>
From: Thomas Munro <thomas.munro@gmail.com>
To: Andres Freund <andres@anarazel.de>
Cc: Maxim Orlov <orlovmg@gmail.com>, vignesh C <vignesh21@gmail.com>, Palak Chaturvedi <chaturvedipalak1911@gmail.com>,
Jim Nasby <jim.nasby@gmail.com>, pgsql-hackers@postgresql.org, Nitin Jadhav <nitinjadhavpostgres@gmail.com>
Date: 2024-04-08T04:30:34Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add pg_buffercache_evict() function for testing.
- 13453eedd3f6 17.0 landed
On Mon, Apr 8, 2024 at 12:10 PM Andres Freund <andres@anarazel.de> wrote: > On 2024-04-07 11:07:58 +1200, Thomas Munro wrote: > > I thought of a better name for the bufmgr.c function though: > > InvalidateUnpinnedBuffer(). That name seemed better to me after I > > festooned it with warnings about why exactly it's inherently racy and > > only for testing use. > > I still dislike that, fwiw, due to the naming similarity to > InvalidateBuffer(), which throws away dirty buffer contents too. Which > obviously isn't acceptable from "userspace". I'd just name it > pg_buffercache_evict() - given that the commit message's first paragraph uses > "it is useful to be able to evict arbitrary blocks" that seems to describe > things at least as well as "invalidate"? Alright, sold. I'll go with EvictUnpinnedBuffer() in bufmgr.c and pg_buffercache_evict() in the contrib module.