On Mon, 19 Jul 2021 15:14:41 +0900 (JST) Kyotaro Horiguchi <horikyota....@gmail.com> wrote:
> Hello. > > At Sun, 18 Jul 2021 04:55:05 +0900, Yugo NAGATA <nag...@sraoss.co.jp> wrote > in > > 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. > > Good catch! Currently recovery stops showing no reason if it is > stopped by page-header errors. > > > I attached a patch to fix it in this way. > > However, it is a kind of a roof-over-a-roof. What we should do is > just omitting the check in XLogPageRead while in standby mode. Your patch doesn't fix the issue that the error message is never reported in standby mode. When a WAL page header is broken, the standby would silently repeat retrying forever. I think we have to let users know the corruption of WAL page header even in standby mode, not? A corruption of WAL record header is always reported, by the way. (See that XLogReadRecord is calling ValidXLogRecordHeader.) Regards, Yugo Nagata -- Yugo NAGATA <nag...@sraoss.co.jp>