Skip to content

Commit cdaeff9

Browse files
committed
XLogRegisterData, XLogRegisterBufData void * argument for binary data
Change XLogRegisterData() and XLogRegisterBufData() functions to take void * for binary data instead of char *. This will remove the need for numerous casts (done in a separate commit for clarity). Reviewed-by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> Discussion: https://www.postgresql.org/message-id/flat/fd1fcedb-3492-4fc8-9e3e-74b97f2db6c7%40eisentraut.org
1 parent 773c51d commit cdaeff9

File tree

4 files changed

+7
-7
lines changed

4 files changed

+7
-7
lines changed

src/backend/access/transam/README

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -586,13 +586,13 @@ void XLogRegisterBuffer(uint8 block_id, Buffer buf, uint8 flags);
586586
XLogRegisterBufData() is included in the WAL record even if a full-page
587587
image is taken.
588588

589-
void XLogRegisterData(const char *data, int len);
589+
void XLogRegisterData(const void *data, int len);
590590

591591
XLogRegisterData is used to include arbitrary data in the WAL record. If
592592
XLogRegisterData() is called multiple times, the data are appended, and
593593
will be made available to the redo routine as one contiguous chunk.
594594

595-
void XLogRegisterBufData(uint8 block_id, const char *data, int len);
595+
void XLogRegisterBufData(uint8 block_id, const void *data, int len);
596596

597597
XLogRegisterBufData is used to include data associated with a particular
598598
buffer that was registered earlier with XLogRegisterBuffer(). If

src/backend/access/transam/xloginsert.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ XLogRegisterBlock(uint8 block_id, RelFileLocator *rlocator, ForkNumber forknum,
361361
* XLogRecGetData().
362362
*/
363363
void
364-
XLogRegisterData(const char *data, uint32 len)
364+
XLogRegisterData(const void *data, uint32 len)
365365
{
366366
XLogRecData *rdata;
367367

@@ -402,7 +402,7 @@ XLogRegisterData(const char *data, uint32 len)
402402
* limited)
403403
*/
404404
void
405-
XLogRegisterBufData(uint8 block_id, const char *data, uint32 len)
405+
XLogRegisterBufData(uint8 block_id, const void *data, uint32 len)
406406
{
407407
registered_buffer *regbuf;
408408
XLogRecData *rdata;

src/include/access/xlog_internal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ typedef struct xl_end_of_recovery
312312
typedef struct XLogRecData
313313
{
314314
struct XLogRecData *next; /* next struct in chain, or NULL */
315-
const char *data; /* start of rmgr data to include */
315+
const void *data; /* start of rmgr data to include */
316316
uint32 len; /* length of rmgr data to include */
317317
} XLogRecData;
318318

src/include/access/xloginsert.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ extern void XLogBeginInsert(void);
4545
extern void XLogSetRecordFlags(uint8 flags);
4646
extern XLogRecPtr XLogInsert(RmgrId rmid, uint8 info);
4747
extern void XLogEnsureRecordSpace(int max_block_id, int ndatas);
48-
extern void XLogRegisterData(const char *data, uint32 len);
48+
extern void XLogRegisterData(const void *data, uint32 len);
4949
extern void XLogRegisterBuffer(uint8 block_id, Buffer buffer, uint8 flags);
5050
extern void XLogRegisterBlock(uint8 block_id, RelFileLocator *rlocator,
5151
ForkNumber forknum, BlockNumber blknum, const PageData *page,
5252
uint8 flags);
53-
extern void XLogRegisterBufData(uint8 block_id, const char *data, uint32 len);
53+
extern void XLogRegisterBufData(uint8 block_id, const void *data, uint32 len);
5454
extern void XLogResetInsertion(void);
5555
extern bool XLogCheckBufferNeedsBackup(Buffer buffer);
5656

0 commit comments

Comments
 (0)