@@ -558,7 +558,7 @@ zenith_wallog_page(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum,
558
558
* Remember the LSN on this page. When we read the page again, we must
559
559
* read the same or newer version of it.
560
560
*/
561
- SetLastWrittenLSNForBlock (lsn , reln -> smgr_rnode . node . relNode , blocknum );
561
+ SetLastWrittenPageLSN (lsn );
562
562
}
563
563
564
564
@@ -603,7 +603,7 @@ zm_adjust_lsn(XLogRecPtr lsn)
603
603
* Return LSN for requesting pages and number of blocks from page server
604
604
*/
605
605
static XLogRecPtr
606
- zenith_get_request_lsn (bool * latest , Oid rnode , BlockNumber blkno )
606
+ zenith_get_request_lsn (bool * latest )
607
607
{
608
608
XLogRecPtr lsn ;
609
609
@@ -630,9 +630,9 @@ zenith_get_request_lsn(bool *latest, Oid rnode, BlockNumber blkno)
630
630
* so our request cannot concern those.
631
631
*/
632
632
* latest = true;
633
- lsn = GetLastWrittenLSN ( rnode , blkno );
633
+ lsn = GetLastWrittenPageLSN ( );
634
634
Assert (lsn != InvalidXLogRecPtr );
635
- elog (DEBUG1 , "zenith_get_request_lsn GetLastWrittenLSN lsn %X/%X " ,
635
+ elog (DEBUG1 , "zenith_get_request_lsn GetLastWrittenPageLSN lsn %X/%X " ,
636
636
(uint32 ) ((lsn ) >> 32 ), (uint32 ) (lsn ));
637
637
638
638
lsn = zm_adjust_lsn (lsn );
@@ -716,7 +716,7 @@ zenith_exists(SMgrRelation reln, ForkNumber forkNum)
716
716
return false;
717
717
}
718
718
719
- request_lsn = zenith_get_request_lsn (& latest , reln -> smgr_rnode . node . relNode , REL_METADATA_PSEUDO_BLOCKNO );
719
+ request_lsn = zenith_get_request_lsn (& latest );
720
720
{
721
721
ZenithExistsRequest request = {
722
722
.req .tag = T_ZenithExistsRequest ,
@@ -791,7 +791,7 @@ zenith_create(SMgrRelation reln, ForkNumber forkNum, bool isRedo)
791
791
*
792
792
* FIXME: This is currently not just an optimization, but required for
793
793
* correctness. Postgres can call smgrnblocks() on the newly-created
794
- * relation. Currently, we don't call SetLastWrittenLSN () when a new
794
+ * relation. Currently, we don't call SetLastWrittenPageLSN () when a new
795
795
* relation created, so if we didn't remember the size in the relsize
796
796
* cache, we might call smgrnblocks() on the newly-created relation before
797
797
* the creation WAL record hass been received by the page server.
@@ -904,8 +904,6 @@ zenith_extend(SMgrRelation reln, ForkNumber forkNum, BlockNumber blkno,
904
904
if (IS_LOCAL_REL (reln ))
905
905
mdextend (reln , forkNum , blkno , buffer , skipFsync );
906
906
#endif
907
-
908
- SetLastWrittenLSNForRelation (lsn , reln -> smgr_rnode .node .relNode );
909
907
}
910
908
911
909
/*
@@ -1081,7 +1079,7 @@ zenith_read(SMgrRelation reln, ForkNumber forkNum, BlockNumber blkno,
1081
1079
elog (ERROR , "unknown relpersistence '%c'" , reln -> smgr_relpersistence );
1082
1080
}
1083
1081
1084
- request_lsn = zenith_get_request_lsn (& latest , reln -> smgr_rnode . node . relNode , blkno );
1082
+ request_lsn = zenith_get_request_lsn (& latest );
1085
1083
zenith_read_at_lsn (reln -> smgr_rnode .node , forkNum , blkno , request_lsn , latest , buffer );
1086
1084
1087
1085
#ifdef DEBUG_COMPARE_LOCAL
@@ -1286,7 +1284,7 @@ zenith_nblocks(SMgrRelation reln, ForkNumber forknum)
1286
1284
return n_blocks ;
1287
1285
}
1288
1286
1289
- request_lsn = zenith_get_request_lsn (& latest , reln -> smgr_rnode . node . relNode , REL_METADATA_PSEUDO_BLOCKNO );
1287
+ request_lsn = zenith_get_request_lsn (& latest );
1290
1288
{
1291
1289
ZenithNblocksRequest request = {
1292
1290
.req .tag = T_ZenithNblocksRequest ,
@@ -1346,7 +1344,7 @@ zenith_dbsize(Oid dbNode)
1346
1344
XLogRecPtr request_lsn ;
1347
1345
bool latest ;
1348
1346
1349
- request_lsn = zenith_get_request_lsn (& latest , InvalidOid , REL_METADATA_PSEUDO_BLOCKNO );
1347
+ request_lsn = zenith_get_request_lsn (& latest );
1350
1348
{
1351
1349
ZenithDbSizeRequest request = {
1352
1350
.req .tag = T_ZenithDbSizeRequest ,
@@ -1433,11 +1431,7 @@ zenith_truncate(SMgrRelation reln, ForkNumber forknum, BlockNumber nblocks)
1433
1431
*/
1434
1432
XLogFlush (lsn );
1435
1433
1436
- /*
1437
- * Truncate may affect several chunks of relations. So we should either update last written LSN for all of them,
1438
- * either update LSN for "dummy" metadata block. Second approach seems to be more efficient.
1439
- */
1440
- SetLastWrittenLSNForRelation (lsn , reln -> smgr_rnode .node .relNode );
1434
+ SetLastWrittenPageLSN (lsn );
1441
1435
1442
1436
#ifdef DEBUG_COMPARE_LOCAL
1443
1437
if (IS_LOCAL_REL (reln ))
0 commit comments