Update types in smgr API
authorPeter Eisentraut <peter@eisentraut.org>
Mon, 27 Feb 2023 06:45:44 +0000 (07:45 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Mon, 27 Feb 2023 06:47:46 +0000 (07:47 +0100)
Change data buffer to void *, from char *, and add const where
appropriate.  This makes it match the File API (see also
2d4f1ba6cfc2f0a977f1c30bda9848041343e248) and stdio.

Discussion: https://www.postgresql.org/message-id/flat/11dda853-bb5b-59ba-a746-e168b1ce4bdb%40enterprisedb.com

contrib/bloom/blinsert.c
src/backend/access/heap/rewriteheap.c
src/backend/access/nbtree/nbtree.c
src/backend/access/nbtree/nbtsort.c
src/backend/access/spgist/spginsert.c
src/backend/storage/buffer/bufmgr.c
src/backend/storage/smgr/md.c
src/backend/storage/smgr/smgr.c
src/include/storage/md.h
src/include/storage/smgr.h

index f81442efb3f51b074ed5b3e6d881cb08423a9ef9..dcd81208953be4f42c55944421aced905b293c67 100644 (file)
@@ -178,7 +178,7 @@ blbuildempty(Relation index)
         */
        PageSetChecksumInplace(metapage, BLOOM_METAPAGE_BLKNO);
        smgrwrite(RelationGetSmgr(index), INIT_FORKNUM, BLOOM_METAPAGE_BLKNO,
-                         (char *) metapage, true);
+                         metapage, true);
        log_newpage(&(RelationGetSmgr(index))->smgr_rlocator.locator, INIT_FORKNUM,
                                BLOOM_METAPAGE_BLKNO, metapage, true);
 
index 8993c1ed5a91970c4c662550ccc315031e0bc36f..ae0282a70ee800be8da273abe347877b0829adf4 100644 (file)
@@ -326,7 +326,7 @@ end_heap_rewrite(RewriteState state)
                PageSetChecksumInplace(state->rs_buffer, state->rs_blockno);
 
                smgrextend(RelationGetSmgr(state->rs_new_rel), MAIN_FORKNUM,
-                                  state->rs_blockno, (char *) state->rs_buffer, true);
+                                  state->rs_blockno, state->rs_buffer, true);
        }
 
        /*
@@ -692,7 +692,7 @@ raw_heap_insert(RewriteState state, HeapTuple tup)
                        PageSetChecksumInplace(page, state->rs_blockno);
 
                        smgrextend(RelationGetSmgr(state->rs_new_rel), MAIN_FORKNUM,
-                                          state->rs_blockno, (char *) page, true);
+                                          state->rs_blockno, page, true);
 
                        state->rs_blockno++;
                        state->rs_buffer_valid = false;
index 1cc88da032db267dde4e79bfe558e9d37f958b05..3f7b541e9d266b3e927238e2bfcb723b133f1f14 100644 (file)
@@ -165,7 +165,7 @@ btbuildempty(Relation index)
         */
        PageSetChecksumInplace(metapage, BTREE_METAPAGE);
        smgrwrite(RelationGetSmgr(index), INIT_FORKNUM, BTREE_METAPAGE,
-                         (char *) metapage, true);
+                         metapage, true);
        log_newpage(&RelationGetSmgr(index)->smgr_rlocator.locator, INIT_FORKNUM,
                                BTREE_METAPAGE, metapage, true);
 
index 67b7b1710c6d9c37781a2cfcea9976d6644d3f69..02b9601bece0d3fa70bec045667f12943d0adb5f 100644 (file)
@@ -664,7 +664,7 @@ _bt_blwritepage(BTWriteState *wstate, Page page, BlockNumber blkno)
                /* don't set checksum for all-zero page */
                smgrextend(RelationGetSmgr(wstate->index), MAIN_FORKNUM,
                                   wstate->btws_pages_written++,
-                                  (char *) wstate->btws_zeropage,
+                                  wstate->btws_zeropage,
                                   true);
        }
 
@@ -678,14 +678,14 @@ _bt_blwritepage(BTWriteState *wstate, Page page, BlockNumber blkno)
        {
                /* extending the file... */
                smgrextend(RelationGetSmgr(wstate->index), MAIN_FORKNUM, blkno,
-                                  (char *) page, true);
+                                  page, true);
                wstate->btws_pages_written++;
        }
        else
        {
                /* overwriting a block we zero-filled before */
                smgrwrite(RelationGetSmgr(wstate->index), MAIN_FORKNUM, blkno,
-                                 (char *) page, true);
+                                 page, true);
        }
 
        pfree(page);
index 4ed067f0d932ef1340f64cba640604bd50b9a8a6..718a88335d0ec84a240303b326ae9272a3447325 100644 (file)
@@ -170,7 +170,7 @@ spgbuildempty(Relation index)
         */
        PageSetChecksumInplace(page, SPGIST_METAPAGE_BLKNO);
        smgrwrite(RelationGetSmgr(index), INIT_FORKNUM, SPGIST_METAPAGE_BLKNO,
-                         (char *) page, true);
+                         page, true);
        log_newpage(&(RelationGetSmgr(index))->smgr_rlocator.locator, INIT_FORKNUM,
                                SPGIST_METAPAGE_BLKNO, page, true);
 
@@ -179,7 +179,7 @@ spgbuildempty(Relation index)
 
        PageSetChecksumInplace(page, SPGIST_ROOT_BLKNO);
        smgrwrite(RelationGetSmgr(index), INIT_FORKNUM, SPGIST_ROOT_BLKNO,
-                         (char *) page, true);
+                         page, true);
        log_newpage(&(RelationGetSmgr(index))->smgr_rlocator.locator, INIT_FORKNUM,
                                SPGIST_ROOT_BLKNO, page, true);
 
@@ -188,7 +188,7 @@ spgbuildempty(Relation index)
 
        PageSetChecksumInplace(page, SPGIST_NULL_BLKNO);
        smgrwrite(RelationGetSmgr(index), INIT_FORKNUM, SPGIST_NULL_BLKNO,
-                         (char *) page, true);
+                         page, true);
        log_newpage(&(RelationGetSmgr(index))->smgr_rlocator.locator, INIT_FORKNUM,
                                SPGIST_NULL_BLKNO, page, true);
 
index 98904a7c05ac995b204e0d70ad2680f9f6885c04..0a05577b68df21349fe1dc2a1018b2985e66dbb8 100644 (file)
@@ -1003,7 +1003,7 @@ ReadBuffer_common(SMgrRelation smgr, char relpersistence, ForkNumber forkNum,
                /* new buffers are zero-filled */
                MemSet((char *) bufBlock, 0, BLCKSZ);
                /* don't set checksum for all-zero page */
-               smgrextend(smgr, forkNum, blockNum, (char *) bufBlock, false);
+               smgrextend(smgr, forkNum, blockNum, bufBlock, false);
 
                pgstat_count_io_op(io_object, io_context, IOOP_EXTEND);
 
@@ -1032,7 +1032,7 @@ ReadBuffer_common(SMgrRelation smgr, char relpersistence, ForkNumber forkNum,
                        else
                                INSTR_TIME_SET_ZERO(io_start);
 
-                       smgrread(smgr, forkNum, blockNum, (char *) bufBlock);
+                       smgrread(smgr, forkNum, blockNum, bufBlock);
 
                        pgstat_count_io_op(io_object, io_context, IOOP_READ);
 
index 8da813600c00f6babf624c7055fa3b99b48c63b6..352958e1feb6359ae6b63ef4528e503781ec7a7e 100644 (file)
@@ -447,7 +447,7 @@ mdunlinkfork(RelFileLocatorBackend rlocator, ForkNumber forknum, bool isRedo)
  */
 void
 mdextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-                char *buffer, bool skipFsync)
+                const void *buffer, bool skipFsync)
 {
        off_t           seekpos;
        int                     nbytes;
@@ -669,7 +669,7 @@ mdwriteback(SMgrRelation reln, ForkNumber forknum,
  */
 void
 mdread(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-          char *buffer)
+          void *buffer)
 {
        off_t           seekpos;
        int                     nbytes;
@@ -734,7 +734,7 @@ mdread(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
  */
 void
 mdwrite(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-               char *buffer, bool skipFsync)
+               const void *buffer, bool skipFsync)
 {
        off_t           seekpos;
        int                     nbytes;
index b2bd749d7703b9d2ce61fd907f7f957cedef2cae..dc466e541454bb94d28e4939c8c2aa23795db532 100644 (file)
@@ -49,13 +49,13 @@ typedef struct f_smgr
        void            (*smgr_unlink) (RelFileLocatorBackend rlocator, ForkNumber forknum,
                                                                bool isRedo);
        void            (*smgr_extend) (SMgrRelation reln, ForkNumber forknum,
-                                                               BlockNumber blocknum, char *buffer, bool skipFsync);
+                                                               BlockNumber blocknum, const void *buffer, bool skipFsync);
        bool            (*smgr_prefetch) (SMgrRelation reln, ForkNumber forknum,
                                                                  BlockNumber blocknum);
        void            (*smgr_read) (SMgrRelation reln, ForkNumber forknum,
-                                                         BlockNumber blocknum, char *buffer);
+                                                         BlockNumber blocknum, void *buffer);
        void            (*smgr_write) (SMgrRelation reln, ForkNumber forknum,
-                                                          BlockNumber blocknum, char *buffer, bool skipFsync);
+                                                          BlockNumber blocknum, const void *buffer, bool skipFsync);
        void            (*smgr_writeback) (SMgrRelation reln, ForkNumber forknum,
                                                                   BlockNumber blocknum, BlockNumber nblocks);
        BlockNumber (*smgr_nblocks) (SMgrRelation reln, ForkNumber forknum);
@@ -491,7 +491,7 @@ smgrdounlinkall(SMgrRelation *rels, int nrels, bool isRedo)
  */
 void
 smgrextend(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-                  char *buffer, bool skipFsync)
+                  const void *buffer, bool skipFsync)
 {
        smgrsw[reln->smgr_which].smgr_extend(reln, forknum, blocknum,
                                                                                 buffer, skipFsync);
@@ -530,7 +530,7 @@ smgrprefetch(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum)
  */
 void
 smgrread(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-                char *buffer)
+                void *buffer)
 {
        smgrsw[reln->smgr_which].smgr_read(reln, forknum, blocknum, buffer);
 }
@@ -552,7 +552,7 @@ smgrread(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
  */
 void
 smgrwrite(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-                 char *buffer, bool skipFsync)
+                 const void *buffer, bool skipFsync)
 {
        smgrsw[reln->smgr_which].smgr_write(reln, forknum, blocknum,
                                                                                buffer, skipFsync);
index bcada9ff221b7639bb5e0b607bf4ba2e75e86c24..8f32af9ef3d60d52e1d8ac31b63c4b71a831bc37 100644 (file)
@@ -27,13 +27,13 @@ extern void mdcreate(SMgrRelation reln, ForkNumber forknum, bool isRedo);
 extern bool mdexists(SMgrRelation reln, ForkNumber forknum);
 extern void mdunlink(RelFileLocatorBackend rlocator, ForkNumber forknum, bool isRedo);
 extern void mdextend(SMgrRelation reln, ForkNumber forknum,
-                                        BlockNumber blocknum, char *buffer, bool skipFsync);
+                                        BlockNumber blocknum, const void *buffer, bool skipFsync);
 extern bool mdprefetch(SMgrRelation reln, ForkNumber forknum,
                                           BlockNumber blocknum);
 extern void mdread(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
-                                  char *buffer);
+                                  void *buffer);
 extern void mdwrite(SMgrRelation reln, ForkNumber forknum,
-                                       BlockNumber blocknum, char *buffer, bool skipFsync);
+                                       BlockNumber blocknum, const void *buffer, bool skipFsync);
 extern void mdwriteback(SMgrRelation reln, ForkNumber forknum,
                                                BlockNumber blocknum, BlockNumber nblocks);
 extern BlockNumber mdnblocks(SMgrRelation reln, ForkNumber forknum);
index 56233c4d21696d9aae269d8966c5992e1f73556c..0935144f4259736174e49ea728b7722761145fce 100644 (file)
@@ -91,13 +91,13 @@ extern void smgrcreate(SMgrRelation reln, ForkNumber forknum, bool isRedo);
 extern void smgrdosyncall(SMgrRelation *rels, int nrels);
 extern void smgrdounlinkall(SMgrRelation *rels, int nrels, bool isRedo);
 extern void smgrextend(SMgrRelation reln, ForkNumber forknum,
-                                          BlockNumber blocknum, char *buffer, bool skipFsync);
+                                          BlockNumber blocknum, const void *buffer, bool skipFsync);
 extern bool smgrprefetch(SMgrRelation reln, ForkNumber forknum,
                                                 BlockNumber blocknum);
 extern void smgrread(SMgrRelation reln, ForkNumber forknum,
-                                        BlockNumber blocknum, char *buffer);
+                                        BlockNumber blocknum, void *buffer);
 extern void smgrwrite(SMgrRelation reln, ForkNumber forknum,
-                                         BlockNumber blocknum, char *buffer, bool skipFsync);
+                                         BlockNumber blocknum, const void *buffer, bool skipFsync);
 extern void smgrwriteback(SMgrRelation reln, ForkNumber forknum,
                                                  BlockNumber blocknum, BlockNumber nblocks);
 extern BlockNumber smgrnblocks(SMgrRelation reln, ForkNumber forknum);