Re: heap vacuum & cleanup locks

Поиск
Список
Период
Сортировка
От Itagaki Takahiro
Тема Re: heap vacuum & cleanup locks
Дата
Msg-id BANLkTikfXjmOVrV2O40yUJ4BYjX9aUh7=g@mail.gmail.com
обсуждение исходный текст
Ответ на heap vacuum & cleanup locks  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: heap vacuum & cleanup locks  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On Sun, Jun 5, 2011 at 12:03, Robert Haas <robertmhaas@gmail.com> wrote:
> If other buffer pins do exist, then we can't
> defragment the page, but that doesn't mean no useful work can be done:
> we can still mark used line pointers dead, or dead line pointers
> unused.  We cannot defragment, but that can be done either by the next
> VACUUM or by a HOT cleanup.

This is just an idea -- Is it possible to have copy-on-write techniques?
VACUUM allocates a duplicated page for the pinned page, and copy valid
tuples into the new page. Following buffer readers after the VACUUM will
see the cloned page instead of the old pinned one.

Of course, copy-on-writing is more complex than skipping pinned pages,
but I wonder we cannot vacuum at all in some edge cases with the
skipping method.

--
Itagaki Takahiro


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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: reducing the overhead of frequent table locks - now, with WIP patch
Следующее
От: Darren Duncan
Дата:
Сообщение: Re: Range Types and extensions