• Alvaro Herrera's avatar
    Fix WAL replay of locking an updated tuple · 6bfa88ac
    Alvaro Herrera authored
    We were resetting the tuple's HEAP_HOT_UPDATED flag as well as t_ctid on
    WAL replay of a tuple-lock operation, which is incorrect when the tuple
    is already updated.
    
    Back-patch to 9.3.  The clearing of both header elements was there
    previously, but since no update could be present on a tuple that was
    being locked, it was harmless.
    
    Bug reported by Peter Geoghegan and Greg Stark in
    CAM3SWZTMQiCi5PV5OWHb+bYkUcnCk=O67w0cSswPvV7XfUcU5g@mail.gmail.com and
    CAM-w4HPTOeMT4KP0OJK+mGgzgcTOtLRTvFZyvD0O4aH-7dxo3Q@mail.gmail.com
    respectively; diagnosis by Andres Freund.
    6bfa88ac
heapam.c 238 KB