Re: corruption of WAL page header is never reported

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
Cc: masao(dot)fujii(at)oss(dot)nttdata(dot)com, nagata(at)sraoss(dot)co(dot)jp, ranier(dot)vf(at)gmail(dot)com, pgsql-hackers(at)postgresql(dot)org
Subject: Re: corruption of WAL page header is never reported
Date: 2021-09-05 18:11:13
Message-ID: 202109051811.p4wkqm6ogvn5@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2021-Sep-03, Kyotaro Horiguchi wrote:

> diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
> index 24165ab03e..b621ad6b0f 100644
> --- a/src/backend/access/transam/xlog.c
> +++ b/src/backend/access/transam/xlog.c
> @@ -12496,9 +12496,21 @@ retry:
> *
> * Validating the page header is cheap enough that doing it twice
> * shouldn't be a big deal from a performance point of view.
> + *
> + * Don't call XLogReaderValidatePageHeader here while not in standby mode
> + * so that this function won't return with a valid errmsg_buf.
> */
> - if (!XLogReaderValidatePageHeader(xlogreader, targetPagePtr, readBuf))
> + if (StandbyMode &&
> + !XLogReaderValidatePageHeader(xlogreader, targetPagePtr, readBuf))

OK, but I don't understand why we have a comment that says (referring to
non-standby mode) "doing it twice shouldn't be a big deal", followed by
"Don't do it twice while not in standby mode" -- that seems quite
contradictory. I think the new comment should overwrite the previous
one, something like this:

- * Validating the page header is cheap enough that doing it twice
- * shouldn't be a big deal from a performance point of view.
+ *
+ * We do this in standby mode only,
+ * so that this function won't return with a valid errmsg_buf.
*/
- if (!XLogReaderValidatePageHeader(xlogreader, targetPagePtr, readBuf))
+ if (StandbyMode &&
+ !XLogReaderValidatePageHeader(xlogreader, targetPagePtr, readBuf))

--
Álvaro Herrera Valdivia, Chile — https://www.EnterpriseDB.com/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2021-09-05 18:57:33 Re: Patch: shouldn't timezone(text, timestamp[tz]) be STABLE?
Previous Message Bossart, Nathan 2021-09-05 17:57:11 Re: pg_dump handling of ALTER DEFAULT PRIVILEGES IN SCHEMA