Adjust assertion in XLogDecodeNextRecord.
authorRobert Haas <rhaas@postgresql.org>
Thu, 18 Aug 2022 16:15:55 +0000 (12:15 -0400)
committerRobert Haas <rhaas@postgresql.org>
Thu, 18 Aug 2022 16:22:20 +0000 (12:22 -0400)
commitec97db399f1eccda6652d44b99d5363728832eb7
tree8242d59df85da1e1ee515d97d983c8f306745174
parente6dbb48487faf47c1436d26064736a906f885a03
Adjust assertion in XLogDecodeNextRecord.

As written, if you use XLogBeginRead() to position an xlogreader at
the beginning of a WAL page and then try to read WAL, this assertion
will fail. However, the header comment for XLogBeginRead() claims
that positioning an xlogreader at the beginning of a page is valid,
and the code here is perfectly able to cope with it. It's only the
assertion that causes trouble. So relax it.

This is formally a bug in all supported branches, but as it doesn't
seem to have any consequences for current uses of the xlogreader
facility, no back-patch, at least for now.

Dilip Kumar and Robert Haas

Discussion: http://postgr.es/m/CA+TgmoaJSs2_7WHW2GzFYe9+zfPtxBKvT3GW47+x=ptUE=cULw@mail.gmail.com
src/backend/access/transam/xlogreader.c