Re: TOAST code ignores freespace (was Tweak TOAST code)

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: TOAST code ignores freespace (was Tweak TOAST code)
Date: 2010-05-02 15:20:55
Message-ID: 1272813656.4161.31585.camel@ebony
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On Sun, 2010-05-02 at 10:34 -0400, Tom Lane wrote:
> Simon Riggs <simon(at)2ndQuadrant(dot)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.

As long as we've considered it, I'm happy either way. You know I'm
happier with more user control.

--
Simon Riggs www.2ndQuadrant.com

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message User Fxjr 2010-05-02 15:31:41 npgsql - Npgsql2: [#1010796] Notification thread not released after
Previous Message Tom Lane 2010-05-02 14:34:43 Re: TOAST code ignores freespace (was Tweak TOAST code)

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2010-05-02 15:39:39 Re: pg_migrator to /contrib in a later 9.0 beta
Previous Message Tom Lane 2010-05-02 14:34:43 Re: TOAST code ignores freespace (was Tweak TOAST code)