diff --git a/src/backend/access/transam/xlogreader.c b/src/backend/access/transam/xlogreader.c index 2e7b1ba8e1..c9f9f6e98f 100644 --- a/src/backend/access/transam/xlogreader.c +++ b/src/backend/access/transam/xlogreader.c @@ -914,15 +914,11 @@ err: state->missingContrecPtr = targetPagePtr; /* - * If we got here without reporting an error, report one now so that - * XLogPrefetcherReadRecord() doesn't bring us back a second time and - * clobber the above state. Otherwise, the existing error takes - * precedence. + * If we got here without reporting an error, make sure an error is + * queued so that XLogPrefetcherReadRecord() doesn't bring us back a + * second time and clobber the above state. */ - if (!state->errormsg_buf[0]) - report_invalid_record(state, - "missing contrecord at %X/%X", - LSN_FORMAT_ARGS(RecPtr)); + state->errormsg_deferred = true; } if (decoded && decoded->oversized)