We must still initialize minRecoveryPoint if we start straight with archive
recovery, e.g when recovering from a normal base backup taken with
pg_start/stop_backup. Otherwise we never consider the system consistent.
        ControlFile->prevCheckPoint = ControlFile->checkPoint;
        ControlFile->checkPoint = checkPointLoc;
        ControlFile->checkPointCopy = checkPoint;
+       if (InArchiveRecovery)
+       {
+           /* initialize minRecoveryPoint if not set yet */
+           if (XLByteLT(ControlFile->minRecoveryPoint, checkPoint.redo))
+               ControlFile->minRecoveryPoint = checkPoint.redo;
+       }
 
        /*
         * Set backupStartPoint if we're starting recovery from a base backup.