Re: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts
Дата
Msg-id 17713.1318878230@sss.pgh.pa.us
обсуждение исходный текст
Ответ на HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
Ответы Re: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts
Re: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts
Список pgsql-hackers
Alvaro Herrera <alvherre@alvh.no-ip.org> writes:
> I just noticed that HeapTupleHeaderAdvanceLatestRemovedXid is comparing Xmax as a TransactionId without verifying
whetherit is a multixact or not.  Since they advance separately, this could lead to bogus answers.  This probably needs
tobe fixed.  I didn't look into past releases to see if there's a live released bug here or not.
 

> I think the fix is simply to ignore the Xmax if the HEAP_XMAX_IS_MULTI bit is set.

> Additionally I think it should check HEAP_XMAX_INVALID before reading the Xmax at all.

If it's failing to even check XMAX_INVALID, surely it's completely
broken?  Perhaps it assumes its caller has checked all this?
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: HeapTupleHeaderAdvanceLatestRemovedXid doing the wrong thing with multixacts