Re: Eliminating PD_ALL_VISIBLE, take 2

Поиск
Список
Период
Сортировка
От Jeff Davis
Тема Re: Eliminating PD_ALL_VISIBLE, take 2
Дата
Msg-id 1369933662.23418.17.camel@jdavis
обсуждение исходный текст
Ответ на Re: Eliminating PD_ALL_VISIBLE, take 2  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Ответы Re: Eliminating PD_ALL_VISIBLE, take 2
Список pgsql-hackers
On Thu, 2013-05-30 at 11:32 +0300, Heikki Linnakangas wrote:
> > That could cause a torn page and checksum failure if checksums are
> > enabled.

Thank you, I missed that in the rebase; it should be
MarkBufferDirtyHint().

> Come to think of it, even without the torn page & checksum issue, do we 
> really want to actively clear the all-visible flags after upgrade? For 
> tables that haven't been changed, and thus have the all-visible bits 
> set, that amounts to a complete rewrite on the first vacuum after 
> upgrade. That's expensive.

I expected that question and intended to raise it for discussion when
and if we get past performance concerns (I believe Robert is still not
convinced that the patch is viable).

We have a few options: We can ignore the bit entirely, or we can
aggressively unset it, or we can opportunistically unset it if the page
is already dirty. I don't think we're in a hurry to reuse that bit for
something else, so maybe it's best to just ignore it entirely.

Regards,Jeff Davis





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

Предыдущее
От: Dean Rasheed
Дата:
Сообщение: 9.3: Empty arrays returned by array_remove()
Следующее
От: Josh Berkus
Дата:
Сообщение: Re: Freezing without write I/O