Re: Page at a time index scan

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Page at a time index scan
Дата
Msg-id 17559.1146677969@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Page at a time index scan  (Simon Riggs <simon@2ndquadrant.com>)
Ответы Re: Page at a time index scan
Список pgsql-patches
Simon Riggs <simon@2ndquadrant.com> writes:
> So do you see a problem scenario like this?

> A, B and C separate backends:
> A1 Reads page, some row versions are *not* marked LP_DELETE but will be
> later when A2 happens
>     B1 VACUUM removes dead rows, just happens to be all of them
>     B2 Recycles page into FSM
>         C1 Inserts new data into old page
> A2 Attempts to update old page to notify about dead rows (UGH!)

Can't happen; a page cannot be recycled until all concurrent
transactions are gone.  In any case, the LP_DELETE marking code will
certainly take care to check that the entries it's trying to mark
are still the same ones it meant to mark.

            regards, tom lane

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

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Re: Page at a time index scan
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: Page at a time index scan