TOAST code ignores freespace (was Tweak TOAST code)

Поиск
Список
Период
Сортировка
От Simon Riggs
Тема TOAST code ignores freespace (was Tweak TOAST code)
Дата
Msg-id 1272804345.4161.31190.camel@ebony
обсуждение исходный текст
Ответы Re: TOAST code ignores freespace (was Tweak TOAST code)  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Wed, 2009-07-22 at 01:21 +0000, Tom Lane wrote:

> Tweak TOAST code so that columns marked with MAIN storage strategy are
> not forced out-of-line unless that is necessary to make the row fit on a
> page.  Previously, they were forced out-of-line if needed to get the row
> down to the default target size (1/4th page).

A comment from Selena made me notice this patch from last year.

I notice that this patch might result in longer rows in the heap, which
in many cases is good. For updates, it can result in a row too large to
fit on the current block and for us to move block to one in which it
will fit.

Not commenting further on that patch, but I notice that when we UPDATE
the toasting algorithm takes no account of the available freespace on
the current block. If we are updating and the space available would make
a difference to the row length chosen, it seems like it would be more
beneficial to trim the row and encourage HOT updates.

-- Simon Riggs           www.2ndQuadrant.com



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

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Further Hot Standby documentation required
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: pg_start_backup and pg_stop_backup Re: Re: [COMMITTERS] pgsql: Make CheckRequiredParameterValues() depend upon correct