From: Magnus Hagander Date: Mon, 11 Nov 2013 13:59:55 +0000 (+0100) Subject: Don't abort pg_basebackup when receiving empty WAL block X-Git-Tag: REL9_4_BETA1~963 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=705556a631c5908cd3caa0b973be13d994ff63e7;p=postgresql Don't abort pg_basebackup when receiving empty WAL block This is a similar fix as c6ec8793aa59d1842082e14b4b4aae7d4bd883fd 9.2. This should never happen in 9.3 and newer since the special case cannot happen there, but this patch synchronizes up the code so there is no confusion on why they're different. An empty block is as harmless in 9.3 as it was in 9.2, and can safely be ignored. --- diff --git a/src/bin/pg_basebackup/receivelog.c b/src/bin/pg_basebackup/receivelog.c index 02643eaea9..aca1a9e8b1 100644 --- a/src/bin/pg_basebackup/receivelog.c +++ b/src/bin/pg_basebackup/receivelog.c @@ -989,7 +989,7 @@ HandleCopyStream(PGconn *conn, XLogRecPtr startpos, uint32 timeline, hdr_len += 8; /* dataStart */ hdr_len += 8; /* walEnd */ hdr_len += 8; /* sendTime */ - if (r < hdr_len + 1) + if (r < hdr_len) { fprintf(stderr, _("%s: streaming header too small: %d\n"), progname, r);