mirror of
https://github.com/postgres/postgres.git
synced 2025-10-27 00:12:01 +03:00
Provide ReadRecentBuffer() to re-pin buffers by ID.
If you know the ID of a buffer that recently held a block that you would like to pin, this function can be used check if it's still there. It can be used to avoid a second lookup in the buffer mapping table after PrefetchBuffer() reports a cache hit. Reviewed-by: Andres Freund <andres@anarazel.de> Discussion: https://postgr.es/m/CA+hUKGJ4VJN8ttxScUFM8dOKX0BrBiboo5uz1cq=AovOddfHpA@mail.gmail.com
This commit is contained in:
@@ -176,6 +176,8 @@ extern PrefetchBufferResult PrefetchSharedBuffer(struct SMgrRelationData *smgr_r
|
||||
BlockNumber blockNum);
|
||||
extern PrefetchBufferResult PrefetchBuffer(Relation reln, ForkNumber forkNum,
|
||||
BlockNumber blockNum);
|
||||
extern bool ReadRecentBuffer(RelFileNode rnode, ForkNumber forkNum,
|
||||
BlockNumber blockNum, Buffer recent_buffer);
|
||||
extern Buffer ReadBuffer(Relation reln, BlockNumber blockNum);
|
||||
extern Buffer ReadBufferExtended(Relation reln, ForkNumber forkNum,
|
||||
BlockNumber blockNum, ReadBufferMode mode,
|
||||
|
||||
Reference in New Issue
Block a user