@@ -72,7 +72,7 @@ typedef struct
72
72
RelFileLocator rlocator ;/* identifies the relation and block */
73
73
ForkNumber forkno ;
74
74
BlockNumber block ;
75
- Page page ;/* page content */
75
+ const char * page ;/* page content */
76
76
uint32 rdata_len ;/* total length of data in rdata chain */
77
77
XLogRecData * rdata_head ;/* head of the chain of data registered with
78
78
* this block */
@@ -138,7 +138,7 @@ static XLogRecData *XLogRecordAssemble(RmgrId rmid, uint8 info,
138
138
XLogRecPtr RedoRecPtr ,bool doPageWrites ,
139
139
XLogRecPtr * fpw_lsn ,int * num_fpi ,
140
140
bool * topxid_included );
141
- static bool XLogCompressBackupBlock (char * page ,uint16 hole_offset ,
141
+ static bool XLogCompressBackupBlock (const char * page ,uint16 hole_offset ,
142
142
uint16 hole_length ,char * dest ,uint16 * dlen );
143
143
144
144
/*
@@ -307,7 +307,7 @@ XLogRegisterBuffer(uint8 block_id, Buffer buffer, uint8 flags)
307
307
*/
308
308
void
309
309
XLogRegisterBlock (uint8 block_id ,RelFileLocator * rlocator ,ForkNumber forknum ,
310
- BlockNumber blknum ,Page page ,uint8 flags )
310
+ BlockNumber blknum ,const char * page ,uint8 flags )
311
311
{
312
312
registered_buffer * regbuf ;
313
313
@@ -361,7 +361,7 @@ XLogRegisterBlock(uint8 block_id, RelFileLocator *rlocator, ForkNumber forknum,
361
361
* XLogRecGetData().
362
362
*/
363
363
void
364
- XLogRegisterData (char * data ,uint32 len )
364
+ XLogRegisterData (const char * data ,uint32 len )
365
365
{
366
366
XLogRecData * rdata ;
367
367
@@ -402,7 +402,7 @@ XLogRegisterData(char *data, uint32 len)
402
402
* limited)
403
403
*/
404
404
void
405
- XLogRegisterBufData (uint8 block_id ,char * data ,uint32 len )
405
+ XLogRegisterBufData (uint8 block_id ,const char * data ,uint32 len )
406
406
{
407
407
registered_buffer * regbuf ;
408
408
XLogRecData * rdata ;
@@ -648,7 +648,7 @@ XLogRecordAssemble(RmgrId rmid, uint8 info,
648
648
649
649
if (include_image )
650
650
{
651
- Page page = regbuf -> page ;
651
+ const char * page = regbuf -> page ;
652
652
uint16 compressed_len = 0 ;
653
653
654
654
/*
@@ -941,23 +941,23 @@ XLogRecordAssemble(RmgrId rmid, uint8 info,
941
941
* the length of compressed block image.
942
942
*/
943
943
static bool
944
- XLogCompressBackupBlock (char * page ,uint16 hole_offset ,uint16 hole_length ,
944
+ XLogCompressBackupBlock (const char * page ,uint16 hole_offset ,uint16 hole_length ,
945
945
char * dest ,uint16 * dlen )
946
946
{
947
947
int32 orig_len = BLCKSZ - hole_length ;
948
948
int32 len = -1 ;
949
949
int32 extra_bytes = 0 ;
950
- char * source ;
950
+ const char * source ;
951
951
PGAlignedBlock tmp ;
952
952
953
953
if (hole_length != 0 )
954
954
{
955
955
/* must skip the hole */
956
- source = tmp .data ;
957
- memcpy (source ,page ,hole_offset );
958
- memcpy (source + hole_offset ,
956
+ memcpy (tmp .data ,page ,hole_offset );
957
+ memcpy (tmp .data + hole_offset ,
959
958
page + (hole_offset + hole_length ),
960
959
BLCKSZ - (hole_length + hole_offset ));
960
+ source = tmp .data ;
961
961
962
962
/*
963
963
* Extra data needs to be stored in WAL record for the compressed