From f43e295f68c3e04ef891627f62016a5b3d8ed4a8 Mon Sep 17 00:00:00 2001 From: Alvaro Herrera Date: Fri, 4 Sep 2020 14:58:32 -0400 Subject: [PATCH] Report expected contrecord length on mismatch When reading a WAL record fails to find continuation record(s) of the proper length, report what it expects, for clarity. Reviewed-by: Tom Lane Discussion: https://postgr.es/m/20200903212152.GA15319@alvherre.pgsql --- src/backend/access/transam/xlogreader.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backend/access/transam/xlogreader.c b/src/backend/access/transam/xlogreader.c index 67996018da..a63ad8cfd0 100644 --- a/src/backend/access/transam/xlogreader.c +++ b/src/backend/access/transam/xlogreader.c @@ -464,8 +464,9 @@ XLogReadRecord(XLogReaderState *state, char **errormsg) total_len != (pageHeader->xlp_rem_len + gotlen)) { report_invalid_record(state, - "invalid contrecord length %u at %X/%X", + "invalid contrecord length %u (expected %lld) at %X/%X", pageHeader->xlp_rem_len, + ((long long) total_len) - gotlen, (uint32) (RecPtr >> 32), (uint32) RecPtr); goto err; }