Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING
От
Andres Freund
Тема
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING
Дата
Msg-id
20200914183905.bbkn5unr7txk66pk@alap3.anarazel.de
Ответ на
Список
Дерево обсуждения
Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Alvaro Herrera <alvherre@2ndquadrant.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Andres Freund <andres@anarazel.de>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Robert Haas <robertmhaas@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Alvaro Herrera <alvherre@2ndquadrant.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING "Andrey M. Borodin" <x4mmm@yandex-team.ru>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Alvaro Herrera <alvherre@2ndquadrant.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING "Andrey M. Borodin" <x4mmm@yandex-team.ru>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING "Andrey M. Borodin" <x4mmm@yandex-team.ru>
Re: Allow ERROR from heap_prepare_freeze_tuple to be downgraded to WARNING Dilip Kumar <dilipbalaut@gmail.com>
Hi, On 2020-09-14 13:26:27 -0400, Robert Haas wrote: > On Sat, Aug 29, 2020 at 4:36 AM Dilip Kumar wrote: > > One example is, suppose during vacuum, there are 2 tuples in the hot > > chain, and the xmin of the first tuple is corrupted (i.e. smaller > > than relfrozenxid). And the xmax of this tuple (which is same as the > > xmin of the second tuple) is smaller than the cutoff_xid while trying > > to freeze the tuple. As a result, it will freeze the second tuple but > > the first tuple will be left untouched. > > > > Now, if we come for the heap_hot_search_buffer, then the xmax of the > > first tuple will not match the xmin of the second tuple as we have > > frozen the second tuple. But, I feel this is easily fixable right? I > > mean instead of not doing anything to the corrupted tuple we can > > partially freeze it? I mean we can just leave the corrupted xid alone > > but mark the other xid as frozen if that is smaller then cutoff_xid. > > That seems reasonable to me. Andres, what do you think? It seems pretty dangerous to me. What exactly are you going to put into xmin/xmax here? And how would anything you put into the first tuple not break index lookups? There's no such thing as a frozen xmax (so far), so what are you going to put in there? A random different xid? FrozenTransactionId? HEAP_XMAX_INVALID? This whole approach just seems likely to exascerbate corruption while also making it impossible to debug. That's ok enough if it's an explicit user action, but doing it based on a config variable setting seems absurdly dangerous to me. Greetings, Andres Freund
В списке pgsql-hackers по дате отправления
От: Tom Lane
Дата:
От: Ranier Vilela
Дата: