Re: How does TOAST compare to other databases' mechanisms?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Philip Warner <pjw(at)rhyme(dot)com(dot)au>
Cc: Frank Joerdens <frank(at)joerdens(dot)de>, pgsql-general(at)postgresql(dot)org
Subject: Re: How does TOAST compare to other databases' mechanisms?
Date: 2000-10-14 16:21:32
Message-ID: 2485.971540492@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> This sounds fine, but begs the question: if there is TOASTed data in the
> table and the column is set to 'not TOASTed', will TOAST cope? And vice verca?

Yes; the detoasting mechanism doesn't pay any attention to attstorage,
only to what's actually in the stored tuple. attstorage is only
examined while storing a tuple, and it's really only advisory anyway
(see tuptoaster.c). The only "must" involved here is that you must not
set attstorage to anything but 'p' for a non-toastable data type; which
you determine by checking the type's pg_type entry (typstorage != 'p'
means toastable).

>> All told it might be a couple
>> hundred lines of new or changed code. Pretty much all of this could
>> be done by cribbing from existing code (ie. programming-by-example)
>> which is a good thing because there's not much documentation.

> So it might be worh documenting, too...

Yes, if you wanted to keep notes and work them up into documentation
for future hackers, that'd be a nice side benefit.

regards, tom lane

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2000-10-14 16:41:01 Re: Postgresql 7 does not always start on RH 6.2
Previous Message Peter Eisentraut 2000-10-14 16:19:59 Re: config