diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index 57f2f275e8394ed030d979e4241dfaffd5856a33..41b56546ba9e3679432a5c727523ef65d28a0749 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -8687,6 +8687,8 @@ heap_xlog_lock(XLogReaderState *record) htup = (HeapTupleHeader) PageGetItem(page, lp); + htup->t_infomask &= ~(HEAP_XMAX_BITS | HEAP_MOVED); + htup->t_infomask2 &= ~HEAP_KEYS_UPDATED; fix_infomask_from_infobits(xlrec->infobits_set, &htup->t_infomask, &htup->t_infomask2); @@ -8737,6 +8739,8 @@ heap_xlog_lock_updated(XLogReaderState *record) htup = (HeapTupleHeader) PageGetItem(page, lp); + htup->t_infomask &= ~(HEAP_XMAX_BITS | HEAP_MOVED); + htup->t_infomask2 &= ~HEAP_KEYS_UPDATED; fix_infomask_from_infobits(xlrec->infobits_set, &htup->t_infomask, &htup->t_infomask2); HeapTupleHeaderSetXmax(htup, xlrec->xmax);