Re: TOAST code ignores freespace (was Tweak TOAST code)
От | Tom Lane |
---|---|
Тема | Re: TOAST code ignores freespace (was Tweak TOAST code) |
Дата | |
Msg-id | 10783.1272810883@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | TOAST code ignores freespace (was Tweak TOAST code) (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: TOAST code ignores freespace (was Tweak TOAST code)
Re: TOAST code ignores freespace (was Tweak TOAST code) |
Список | pgsql-hackers |
Simon Riggs <simon@2ndQuadrant.com> writes: > 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. That doesn't strike me as a terribly good idea: it would make the behavior of TOAST significantly more difficult to predict. Also, what happens if we force a row to a smaller size and then it doesn't fit anyway (eg because someone else inserted another row on the page while we were busy doing this)? Spend even more cycles to un-toast back to the normal size, to be consistent with ordinary cross-page updates? Pretty much every previous discussion of tweaking the TOAST behavior has focused on giving the user more control (indeed, the patch you mention could be seen as doing that). What you're suggesting here would give the user less control, as well as less predictability. regards, tom lane
В списке pgsql-hackers по дате отправления: