• Alvaro Herrera's avatar
    Redefine HEAP_XMAX_IS_LOCKED_ONLY · 74ebba84
    Alvaro Herrera authored
    Tuples marked SELECT FOR UPDATE in a cluster that's later processed by
    pg_upgrade would have a different infomask bit pattern than those
    produced by 9.3dev; that bit pattern was being seen as "dead" by HEAD
    (because they would fail the "is this tuple locked" test, and so the
    visibility rules would thing they're updated, even though there's no
    HEAP_UPDATED version of them).  In other words, some rows could silently
    disappear after pg_upgrade.
    
    With this new definition, those tuples become visible again.
    
    This is breakage resulting from my commit 0ac5ad51.
    74ebba84
htup_details.h 24.5 KB