]> granicus.if.org Git - postgresql/commit
Fix WAL replay of locking an updated tuple
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 27 Feb 2014 14:13:39 +0000 (11:13 -0300)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 27 Feb 2014 14:13:39 +0000 (11:13 -0300)
commit6bfa88acd3df830a5f7e8677c13512b1b50ae813
tree07a41fa1c9e19d750c4851875805ab05e8b4da12
parent00976f202ce13daf15ec6e8de37f87fc9904b5e2
Fix WAL replay of locking an updated tuple

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.
src/backend/access/heap/heapam.c