From: | Ranier Vilela <ranier(dot)vf(at)gmail(dot)com> |
---|---|
To: | Yugo NAGATA <nagata(at)sraoss(dot)co(dot)jp> |
Cc: | Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: corruption of WAL page header is never reported |
Date: | 2021-07-17 21:40:02 |
Message-ID: | CAEudQArCvk=0ukdabGn038XjxhSrTDW794f8_QXCA-Qxd_dmrA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Em sáb., 17 de jul. de 2021 às 16:57, Yugo NAGATA <nagata(at)sraoss(dot)co(dot)jp>
escreveu:
> Hello,
>
> I found that any corruption of WAL page header found during recovery is
> never
> reported in log messages. If wal page header is broken, it is detected in
> XLogReaderValidatePageHeader called from XLogPageRead, but the error
> messages
> are always reset and never reported.
>
> if (!XLogReaderValidatePageHeader(xlogreader, targetPagePtr,
> readBuf))
> {
> /* reset any error XLogReaderValidatePageHeader() might
> have set */
> xlogreader->errormsg_buf[0] = '\0';
> goto next_record_is_invalid;
> }
>
> Since the commit 06687198018, we call XLogReaderValidatePageHeader here so
> that
> we can check a page header and retry immediately if it's invalid, but the
> error
> message is reset immediately and not reported. I guess the reason why the
> error
> message is reset is because we might get the right WAL after some retries.
> However, I think it is better to report the error for each check in order
> to let
> users know the actual issues founded in the WAL.
>
> I attached a patch to fix it in this way.
>
I think to keep the same behavior as before, is necessary always run:
/* reset any error XLogReaderValidatePageHeader() might have set */
xlogreader->errormsg_buf[0] = '\0';
not?
regards,
Ranier Vilela
Attachment | Content-Type | Size |
---|---|---|
v1_report_corrupt_page_header.patch | text/x-patch | 687 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Tomas Vondra | 2021-07-17 22:46:09 | Re: slab allocator performance issues |
Previous Message | Andres Freund | 2021-07-17 21:14:05 | Re: slab allocator performance issues |