Skip to content

Commit 3979ff1

Browse files
committed
Don't crash when pg_xlog is empty and pg_basebackup -x is used
The backup will not work (without a logarchive, and that's the whole point of -x) in this case, this patch just changes it to throw an error instead of crashing when this happens. Noticed and diagnosed by TAKATSUKA Haruka
1 parent bd5ab4b commit 3979ff1

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/backend/replication/basebackup.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,14 @@ perform_base_backup(basebackup_options *opt, DIR *tblspcdir)
297297
}
298298
qsort(walFiles, nWalFiles, sizeof(char *), compareWalFileNames);
299299

300+
/*
301+
* There must be at least one xlog file in the pg_xlog directory,
302+
* since we are doing backup-including-xlog.
303+
*/
304+
if (nWalFiles < 1)
305+
ereport(ERROR,
306+
(errmsg("could not find any WAL files")));
307+
300308
/*
301309
* Sanity check: the first and last segment should cover startptr and
302310
* endptr, with no gaps in between.

0 commit comments

Comments
 (0)