Re: Eliminating VACUUM FULL WAS: remove flatfiles.c

Поиск
Список
Период
Сортировка
От Dimitri Fontaine
Тема Re: Eliminating VACUUM FULL WAS: remove flatfiles.c
Дата
Msg-id m21vmm1m5o.fsf@hi-media.com
обсуждение исходный текст
Ответ на Re: Eliminating VACUUM FULL WAS: remove flatfiles.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Eliminating VACUUM FULL WAS: remove flatfiles.c  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Hi,

Tom Lane <tgl@sss.pgh.pa.us> writes:
> Alvaro Herrera <alvherre@commandprompt.com> writes:
>> No problem, just CLUSTER that table same as today.
>
> Uh, no, that was Josh's point: you can't CLUSTER pg_class, because you
> can't change its relfilenode.  If you do, backends won't know where to
> read pg_class to find out its relfilenode.

Why can't MVCC apply here? You'd have two versions of the pg_class entry
that just has been CLUSTERed, and you keep the old relfilenode arround
too. MVCC applies, and you teach vacuum to clean out the old file when
cleaning out the no more visible tuple.

Or you take necessary locks to protect the operation.

Something so obvious that I'll regret asking why it can not be done this
way sure will get back from this mail :)

Regards.
-- 
dim


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

Предыдущее
От: Grzegorz Jaskiewicz
Дата:
Сообщение: Re: clang's static checker report.
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: Eliminating VACUUM FULL WAS: remove flatfiles.c