aboutsummaryrefslogtreecommitdiff
path: root/src/backend/storage/buffer/bufmgr.c
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2023-12-16 16:14:47 +1300
committerThomas Munro <tmunro@postgresql.org>2023-12-16 17:51:21 +1300
commitb485ad7f07c80efbfd47329f138f0fe3a5acf013 (patch)
tree033c507f439b762b4f6ee6db9d034733706fd4c3 /src/backend/storage/buffer/bufmgr.c
parent59bd34c2fa02b005dc33190245b2bffc6a08c0b9 (diff)
downloadpostgresql-b485ad7f07c80efbfd47329f138f0fe3a5acf013.tar.gz
postgresql-b485ad7f07c80efbfd47329f138f0fe3a5acf013.zip
Provide multi-block smgrprefetch().
Previously smgrprefetch() could issue POSIX_FADV_WILLNEED advice for a single block at a time. Add an nblocks argument so that we can do the same for a range of blocks. This usually produces a single system call, but might need to loop if it crosses a segment boundary. Initially it is only called with nblocks == 1, but proposed patches will make wider calls. Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi> (earlier version) Discussion: https://postgr.es/m/CA+hUKGJkOiOCa+mag4BF+zHo7qo=o9CFheB8=g6uT5TUm2gkvA@mail.gmail.com
Diffstat (limited to 'src/backend/storage/buffer/bufmgr.c')
-rw-r--r--src/backend/storage/buffer/bufmgr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/storage/buffer/bufmgr.c b/src/backend/storage/buffer/bufmgr.c
index f7c67d504cd..de8b5edbfbf 100644
--- a/src/backend/storage/buffer/bufmgr.c
+++ b/src/backend/storage/buffer/bufmgr.c
@@ -569,7 +569,7 @@ PrefetchSharedBuffer(SMgrRelation smgr_reln,
* recovery if the relation file doesn't exist.
*/
if ((io_direct_flags & IO_DIRECT_DATA) == 0 &&
- smgrprefetch(smgr_reln, forkNum, blockNum))
+ smgrprefetch(smgr_reln, forkNum, blockNum, 1))
{
result.initiated_io = true;
}