Re: collect_corrupt_items_vacuum.patch
От
Alexander Korotkov
Тема
Re: collect_corrupt_items_vacuum.patch
Дата
Msg-id
CAPpHfdt8Rj_LtG8aWKNzeRejutrN-zt6fKQGuXYyAE7-zNVHbg@mail.gmail.com
Ответ на
Re: collect_corrupt_items_vacuum.patch (Alexander Lakhin)
Список
Дерево обсуждения
collect_corrupt_items_vacuum.patch Daniel Shelepanov <deniel1495@mail.ru>
Re: collect_corrupt_items_vacuum.patch Robert Haas <robertmhaas@gmail.com>
Re: collect_corrupt_items_vacuum.patch Tom Lane <tgl@sss.pgh.pa.us>
Re: collect_corrupt_items_vacuum.patch Robert Haas <robertmhaas@gmail.com>
Re: collect_corrupt_items_vacuum.patch Michael Paquier <michael@paquier.xyz>
Re: collect_corrupt_items_vacuum.patch Nikita Malakhov <hukutoc@gmail.com>
Re: collect_corrupt_items_vacuum.patch Nikita Malakhov <hukutoc@gmail.com>
Re: collect_corrupt_items_vacuum.patch Daniel Gustafsson <daniel@yesql.se>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Lakhin <exclusion@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Lakhin <exclusion@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Lakhin <exclusion@gmail.com>
Re: collect_corrupt_items_vacuum.patch Dmitry Koval <d.koval@postgrespro.ru>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Dmitry Koval <d.koval@postgrespro.ru>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Noah Misch <noah@leadboat.com>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Noah Misch <noah@leadboat.com>
Re: collect_corrupt_items_vacuum.patch Heikki Linnakangas <hlinnaka@iki.fi>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Alexander Korotkov <aekorotkov@gmail.com>
Re: collect_corrupt_items_vacuum.patch Heikki Linnakangas <hlinnaka@iki.fi>
Hi, Alexander!
On Tue, Nov 7, 2023 at 3:00 PM Alexander Lakhin wrote:
>
> 07.11.2023 14:38, Alexander Korotkov wrote:
> > Hi, Alexander.
> >
> > On Tue, Nov 7, 2023 at 1:00 PM Alexander Lakhin wrote:
> >> It looks like the v2 patch doesn't fix the original issue. Maybe I miss
> >> something, but with the patch applied, I see the failure immediately,
> >> though without the patch several iterations are needed to get it.
> >
> > That's a bug in the patch. Thank you for cathing it. It should start
> > calculation from latestCompletedXid + 1, not InvalidTransactionId.
> > Please, check the revised patch.
>
> Thanks for looking at this!
> Unfortunately, I still see the failure with the v3, but not on a first
> iteration:
> ...
> iteration 316
> Error condition in psql-8.log:
> create table vacuum_test as select 42 i;
> vacuum (disable_page_skipping) vacuum_test;
> select * from pg_check_visible('vacuum_test');
> t_ctid
> --------
> (0,1)
> (1 row)
>
> (I've double-checked that the patch is applied and get_strict_xid_horizon()
> is called.)
I managed to reproduce this on a Linux VM. This problem should arise
because in extension I don't have access to ProcArrayStruct. So, my
code is iterating the whole PGPROC's array. I reimplemented the new
horizon calculation function in the core with usage of
ProcArrayStruct. Now it doesn't fall for me. Please, recheck.
------
Regards,
Alexander Korotkov
В списке pgsql-hackers по дате отправления