From ee6285d563f9fda914c22b0922c64275ab204209 Mon Sep 17 00:00:00 2001 From: Matthias van de Meent Date: Thu, 1 Aug 2024 12:05:36 +0200 Subject: [PATCH] Update SMGR API to use consistent types for `nblocks` parameters Rather than signed integers, we now consistently use BlockNumber to indicate nblocks in the smgr API. --- src/backend/storage/smgr/md.c | 6 +++--- src/backend/storage/smgr/smgr.c | 9 +++++---- src/include/storage/md.h | 5 +++-- src/include/storage/smgr.h | 5 +++-- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/backend/storage/smgr/md.c b/src/backend/storage/smgr/md.c index 6796756358..1d02766978 100644 --- a/src/backend/storage/smgr/md.c +++ b/src/backend/storage/smgr/md.c @@ -523,11 +523,11 @@ mdextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, */ void mdzeroextend(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks, bool skipFsync) + BlockNumber blocknum, BlockNumber nblocks, bool skipFsync) { MdfdVec *v; BlockNumber curblocknum = blocknum; - int remblocks = nblocks; + int64 remblocks = nblocks; Assert(nblocks > 0); @@ -712,7 +712,7 @@ mdclose(SMgrRelation reln, ForkNumber forknum) */ bool mdprefetch(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, - int nblocks) + BlockNumber nblocks) { #ifdef USE_PREFETCH diff --git a/src/backend/storage/smgr/smgr.c b/src/backend/storage/smgr/smgr.c index 7b9fa103ef..90af425973 100644 --- a/src/backend/storage/smgr/smgr.c +++ b/src/backend/storage/smgr/smgr.c @@ -85,9 +85,10 @@ typedef struct f_smgr void (*smgr_extend) (SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, const void *buffer, bool skipFsync); void (*smgr_zeroextend) (SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks, bool skipFsync); + BlockNumber blocknum, BlockNumber nblocks, + bool skipFsync); bool (*smgr_prefetch) (SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks); + BlockNumber blocknum, BlockNumber nblocks); void (*smgr_readv) (SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, void **buffers, BlockNumber nblocks); @@ -558,7 +559,7 @@ smgrextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, */ void smgrzeroextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, - int nblocks, bool skipFsync) + BlockNumber nblocks, bool skipFsync) { smgrsw[reln->smgr_which].smgr_zeroextend(reln, forknum, blocknum, nblocks, skipFsync); @@ -583,7 +584,7 @@ smgrzeroextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, */ bool smgrprefetch(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, - int nblocks) + BlockNumber nblocks) { return smgrsw[reln->smgr_which].smgr_prefetch(reln, forknum, blocknum, nblocks); } diff --git a/src/include/storage/md.h b/src/include/storage/md.h index 620f10abde..12467669bb 100644 --- a/src/include/storage/md.h +++ b/src/include/storage/md.h @@ -29,9 +29,10 @@ extern void mdunlink(RelFileLocatorBackend rlocator, ForkNumber forknum, bool is extern void mdextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, const void *buffer, bool skipFsync); extern void mdzeroextend(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks, bool skipFsync); + BlockNumber blocknum, BlockNumber nblocks, + bool skipFsync); extern bool mdprefetch(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks); + BlockNumber blocknum, BlockNumber nblocks); extern void mdreadv(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, void **buffers, BlockNumber nblocks); extern void mdwritev(SMgrRelation reln, ForkNumber forknum, diff --git a/src/include/storage/smgr.h b/src/include/storage/smgr.h index e15b20a566..4abd3a17b6 100644 --- a/src/include/storage/smgr.h +++ b/src/include/storage/smgr.h @@ -89,9 +89,10 @@ extern void smgrdounlinkall(SMgrRelation *rels, int nrels, bool isRedo); extern void smgrextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, const void *buffer, bool skipFsync); extern void smgrzeroextend(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks, bool skipFsync); + BlockNumber blocknum, BlockNumber nblocks, + bool skipFsync); extern bool smgrprefetch(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, int nblocks); + BlockNumber blocknum, BlockNumber nblocks); extern void smgrreadv(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, void **buffers, BlockNumber nblocks); -- 2.40.1