• Robert Haas's avatar
    Fix possible pg_basebackup failure on standby with "include WAL". · f267c1c2
    Robert Haas authored
    If a restartpoint flushed no dirty buffers, it could fail to update
    the minimum recovery point, leading to a minimum recovery point prior
    to the starting REDO location.  perform_base_backup() would interpret
    that as meaning that no WAL files at all needed to be included in the
    backup, failing an internal sanity check.  To fix, have restartpoints
    always update the minimum recovery point to just after the checkpoint
    record itself, so that the file (or files) containing the checkpoint
    record will always be included in the backup.
    
    Code by Amit Kapila, per a design suggestion by me, with some
    additional work on the code comment by me.  Test case by Michael
    Paquier.  Report by Kyotaro Horiguchi.
    f267c1c2
xlog.c 364 KB