Re: Allow cancelling VACUUM of nbtrees with corrupted right links

Поиск
Список
Период
Сортировка
От Peter Geoghegan
Тема Re: Allow cancelling VACUUM of nbtrees with corrupted right links
Дата
Msg-id CAH2-Wz=hW6UCF6OEEiHz-dnmHoEgXdztZEM+YM-AzYOdAy1w9Q@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Allow cancelling VACUUM of nbtrees with corrupted right links  (Andres Freund <andres@anarazel.de>)
Ответы Re: Allow cancelling VACUUM of nbtrees with corrupted right links  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers
On Wed, Jun 27, 2018 at 12:18 PM, Andres Freund <andres@anarazel.de> wrote:
> It's possibly wrong that it's unreachable - I've just not managed to get
> there. If somebody has an idea how to build a reproducible case to reach
> it...

Set a breakpoint in _bt_unlink_halfdead_page() after the initial
"LockBuffer(leafbuf, BUFFER_LOCK_UNLOCK);", and then provoke a page
split in the left sibling by carefully inserting values that belong
within its part of the key space? I would probably attempt this with
an index on text, so that I could contrive as many key values that
belong on the left sibling as needed.

You're probably looking at a test-case that doesn't involve a
multi-level deletion, where the leaf and target page are the same. Not
sure if you want to reproduce the multi-level deletion case
independently.


-- 
Peter Geoghegan


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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: Performance regression with PostgreSQL 11 and partitioning
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Allow cancelling VACUUM of nbtrees with corrupted right links