• Heikki Linnakangas's avatar
    Fix the truncation logic of the OldSerXid SLRU mechanism. We can't pass · e1c26ab8
    Heikki Linnakangas authored
    SimpleLruTruncate() a page number that's "in the future", because it will
    issue a warning and refuse to truncate anything. Instead, we leave behind
    the latest segment. If the slru is not needed before XID wrap-around, the
    segment will appear as new again, and not be cleaned up until it gets old
    enough again. That's a bit unpleasant, but better than not cleaning up
    anything.
    
    Also, fix broken calculation to check and warn if the span of the OldSerXid
    SLRU is getting too large to fit in the 64k SLRU pages that we have
    available. It was not XID wraparound aware.
    
    Kevin Grittner and me.
    e1c26ab8
predicate.c 146 KB