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
Ответ на
pgsql: Tweak TOAST code so that columns marked with MAIN storage (tgl@postgresql.org (Tom Lane))
Список
Дерево обсуждения
Re: TOAST code ignores freespace (was Tweak TOAST code) Tom Lane <tgl@sss.pgh.pa.us>
Re: TOAST code ignores freespace (was Tweak TOAST code) Simon Riggs <simon@2ndQuadrant.com>
Re: TOAST code ignores freespace (was Tweak TOAST code) Jan Wieck <JanWieck@Yahoo.com>
Re: TOAST code ignores freespace (was Tweak TOAST code) Simon Riggs <simon@2ndQuadrant.com>
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 по дате отправления