|
23 | 23 | #include "storage/bufmgr.h" |
24 | 24 | #include "fmgr.h" |
25 | 25 | #include "miscadmin.h" |
| 26 | +#include "replication/walsender.h" |
26 | 27 |
|
27 | 28 | const int SmgrTrace = DEBUG5; |
28 | 29 |
|
@@ -315,17 +316,36 @@ static XLogRecPtr |
315 | 316 | zenith_get_request_lsn(void) |
316 | 317 | { |
317 | 318 | XLogRecPtr lsn; |
| 319 | + |
318 | 320 | if (RecoveryInProgress()) |
| 321 | + { |
319 | 322 | lsn = GetXLogReplayRecPtr(NULL); |
| 323 | + elog(LOG, "zenith_get_request_lsn GetXLogReplayRecPtr %X/%X request lsn 0 ", |
| 324 | + (uint32) ((lsn) >> 32), (uint32) (lsn)); |
| 325 | + |
| 326 | + lsn = InvalidXLogRecPtr; |
| 327 | + } |
| 328 | + else if (am_walsender) |
| 329 | + { |
| 330 | + lsn = InvalidXLogRecPtr; |
| 331 | + elog(LOG, "am walsender zenith_get_request_lsn lsn 0 "); |
| 332 | + } |
320 | 333 | else |
321 | 334 | { |
322 | 335 | lsn = GetLastWrittenPageLSN(); |
| 336 | + |
| 337 | + elog(LOG, "zenith_get_request_lsn GetLastWrittenPageLSN lsn %X/%X ", |
| 338 | + (uint32) ((lsn) >> 32), (uint32) (lsn)); |
| 339 | + |
323 | 340 | if (lsn > GetFlushRecPtr()) |
324 | 341 | XLogFlush(lsn); |
325 | 342 | if (lsn == InvalidXLogRecPtr) |
326 | 343 | { |
327 | 344 | /* we haven't evicted anything yet since the server was started */ |
328 | 345 | lsn = GetFlushRecPtr(); |
| 346 | + elog(LOG, "zenith_get_request_lsn GetFlushRecPtr lsn %X/%X request 0", |
| 347 | + (uint32) ((lsn) >> 32), (uint32) (lsn)); |
| 348 | + lsn = InvalidXLogRecPtr; |
329 | 349 | } |
330 | 350 | } |
331 | 351 | return lsn; |
@@ -556,6 +576,10 @@ zenith_read_nonrel(RelFileNode rnode, BlockNumber blkno, char *buffer, int forkn |
556 | 576 | zenith_load(); |
557 | 577 |
|
558 | 578 | lsn = zenith_get_request_lsn(); |
| 579 | +<<<<<<< HEAD |
| 580 | +======= |
| 581 | + |
| 582 | +>>>>>>> 4d0094254b... Request special lsn during bootstrap |
559 | 583 | elog(SmgrTrace, "[ZENITH_SMGR] read nonrel relnode %u/%u/%u_%d blkno %u lsn %X/%X", |
560 | 584 | rnode.spcNode, rnode.dbNode, rnode.relNode, forknum, blkno, |
561 | 585 | (uint32) ((lsn) >> 32), (uint32) (lsn)); |
|
0 commit comments