Re: HOT patch - version 15

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: HOT patch - version 15
Дата
Msg-id 21386.1189085817@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: HOT patch - version 15  ("Heikki Linnakangas" <heikki@enterprisedb.com>)
Ответы Re: HOT patch - version 15  ("Heikki Linnakangas" <heikki@enterprisedb.com>)
Re: HOT patch - version 15  ("Heikki Linnakangas" <heikki@enterprisedb.com>)
Re: HOT patch - version 15  ("Pavan Deolasee" <pavan.deolasee@gmail.com>)
Список pgsql-patches
"Heikki Linnakangas" <heikki@enterprisedb.com> writes:
> When I suggested that we get rid of the LP_DELETE flag for heap tuples,
> the tuple-level fragmentation and all that, and just take the vacuum
> lock and call PageRepairFragmentation, I was thinking that we'd do it in
> heap_update and only when we run out of space on the page. But as Greg
> said, it doesn't work because you're already holding a reference to at
> least one tuple on the page, the one you're updating, by the time you
> get to heap_update. That's why I put the pruning code to heap_fetch
> instead. Yes, though the amortized cost is the same, it does push the
> pruning work to the foreground query path.

The amortized cost is only "the same" if every heap_fetch is associated
with a heap update.  I feel pretty urgently unhappy about this choice.
Have you tested the impact of the patch on read-mostly workloads?

>> Another real problem with doing pruning only in UPDATE path is that
>> we may end up with long HOT chains if the page does not receive a
>> UPDATE, after many consecutive HOT updates.

How is that, if the same number of prune attempts would occur?

            regards, tom lane

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

Предыдущее
От: "Heikki Linnakangas"
Дата:
Сообщение: Re: HOT patch - version 15
Следующее
От: "Heikki Linnakangas"
Дата:
Сообщение: Re: HOT patch - version 15