HOT line pointer bloat and PageRepairFragmentation

Поиск
Список
Период
Сортировка
От Pavan Deolasee
Тема HOT line pointer bloat and PageRepairFragmentation
Дата
Msg-id 2e78013d0709130606l56539755wb9dbe17225ffe90a@mail.gmail.com
обсуждение исходный текст
Ответы Re: HOT line pointer bloat and PageRepairFragmentation  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
<br />We know that HOT can cause line pointer bloat because of redirect dead<br />line pointers. In the worst case
therecould be MaxHeapTuplesPerPage<br />redirect-dead line pointers in a page. VACUUM can reclaim these line<br />
pointersand mark them ~LP_USED (what is now called LP_UNUSED).<br />But  we don't reclaim the space used by unused line
pointersduring<br />repairing page fragmentation, and hence we would never be able to<br />remove the line pointer
bloatcompletely. Fundamentally we should <br />be able to reclaim the unused line pointers at the end of the lp
array<br/>(i.e. unused line pointers immediate to pd_lower)<br /><br clear="all" />I had earlier tried to repair the
bloatby reclaiming the space used<br />by LP_UNUSED line pointers at the end of the array. But it doesn't work <br
/>wellwith VACUUM FULL which tracks unused line pointers for moving<br />tuples. Its not that we can not fix that
issue,but I am reluctant to spend<br />time on that right now because many of us feel that VACUUM FULL is<br /> near
itsEOL.<br /><br />How about passing a boolean to PageRepairFragmentation to<br />command it to reclaim unused line
pointers? We pass "true" at all<br />places except in the VACUUM FULL code path. IOW we reclaim unused <br />line
pointersin defragmentation and LAZY VACUUM. We would need<br />to WAL log this information in xl_heap_clean so that we
redothe same<br />during recovery. I have a patch ready since I had already implemented<br />this few weeks back. <br
/><br/>Comments ?<br /><br />Thanks,<br />Pavan<br /><br />-- <br />Pavan Deolasee<br />EnterpriseDB     <a
href="http://www.enterprisedb.com">http://www.enterprisedb.com</a>

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

Предыдущее
От: Guillaume Lelarge
Дата:
Сообщение: Re: Preparation for PostgreSQL releases 8.2.5, 8.1.10, 8.0.14, 7.4.18, 7.3.20
Следующее
От: Tom Lane
Дата:
Сообщение: Re: HOT line pointer bloat and PageRepairFragmentation