• Alvaro Herrera's avatar
    Fix determination of broken LSN in OVERWRITTEN_CONTRECORD · d24dac95
    Alvaro Herrera authored
    In commit ff9f111bce24 I mixed up inconsistent definitions of the LSN of
    the first record in a page, when the previous record ends exactly at the
    page boundary.  The correct LSN is adjusted to skip the WAL page header;
    I failed to use that when setting XLogReaderState->overwrittenRecPtr,
    so at WAL replay time VerifyOverwriteContrecord would refuse to let
    replay continue past that record.
    
    Backpatch to 10.  9.6 also contains this bug, but it's no longer being
    maintained.
    
    Discussion: https://postgr.es/m/45597.1637694259@sss.pgh.pa.us
    d24dac95
xlogreader.c 44.7 KB