Skip to content

Commit 0de51e5

Browse files
committed
remove prev_seg flag from extractPageMap(), make doExtractPageMap() more greedy
1 parent 06ac24d commit 0de51e5

File tree

2 files changed

+3
-13
lines changed

2 files changed

+3
-13
lines changed

src/backup.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -650,12 +650,7 @@ do_backup_instance(void)
650650
* where this backup has started.
651651
*/
652652
extractPageMap(arclog_path, prev_backup->start_lsn, current.tli,
653-
current.start_lsn,
654-
/*
655-
* For backup from master wait for previous segment.
656-
* For backup from replica wait for current segment.
657-
*/
658-
!current.from_replica, backup_files_list);
653+
current.start_lsn, backup_files_list);
659654
}
660655
else if (current.backup_mode == BACKUP_MODE_DIFF_PTRACK)
661656
{

src/parsexlog.c

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ doExtractPageMap(void *arg)
260260

261261
XLByteToSeg(xlogreader->EndRecPtr, nextSegNo);
262262
} while (nextSegNo <= extract_arg->endSegNo &&
263-
xlogreader->EndRecPtr < extract_arg->endpoint);
263+
xlogreader->ReadRecPtr < extract_arg->endpoint);
264264

265265
CleanupXLogPageRead(xlogreader);
266266
XLogReaderFree(xlogreader);
@@ -274,15 +274,12 @@ doExtractPageMap(void *arg)
274274
* Read WAL from the archive directory, from 'startpoint' to 'endpoint' on the
275275
* given timeline. Collect data blocks touched by the WAL records into a page map.
276276
*
277-
* If **prev_segno** is true then read all segments up to **endpoint** segment
278-
* minus one. Else read all segments up to **endpoint** segment.
279-
*
280277
* Pagemap extracting is processed using threads. Eeach thread reads single WAL
281278
* file.
282279
*/
283280
void
284281
extractPageMap(const char *archivedir, XLogRecPtr startpoint, TimeLineID tli,
285-
XLogRecPtr endpoint, bool prev_seg, parray *files)
282+
XLogRecPtr endpoint, parray *files)
286283
{
287284
int i;
288285
int threads_need = 0;
@@ -303,8 +300,6 @@ extractPageMap(const char *archivedir, XLogRecPtr startpoint, TimeLineID tli,
303300
(uint32) (endpoint >> 32), (uint32) (endpoint));
304301

305302
XLByteToSeg(endpoint, endSegNo);
306-
if (prev_seg)
307-
endSegNo--;
308303

309304
nextSegNoToRead = 0;
310305
time(&start_time);

0 commit comments

Comments
 (0)