It seems possible for the condition being tested to be true in
production, and nobody would never know (except when some data
eventually becomes corrupt?).
Author: Álvaro Herrera <
[email protected]>
Discussion: https://postgr.es/m//
202109040001[email protected]
* If 'endpoint' didn't point exactly at a record boundary, the caller
* messed up.
*/
- Assert(xlogreader->EndRecPtr == endpoint);
+ if (xlogreader->EndRecPtr != endpoint)
+ pg_fatal("end pointer %X/%X is not a valid end point; expected %X/%X",
+ (uint32) (endpoint >> 32), (uint32) (endpoint),
+ (uint32) (xlogreader->EndRecPtr >> 32), (uint32)
+ (xlogreader->EndRecPtr));
XLogReaderFree(xlogreader);
if (xlogreadfd != -1)