Re: TOAST usage setting

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Gregory Stark <stark@enterprisedb.com>
Cc: "Zeugswetter Andreas ADI SD" <ZeugswetterA@spardat.at>, "Bruce Momjian" <bruce@momjian.us>, pgsql-hackers@postgresql.org
Date: 2007-05-30T15:14:12Z
Lists: pgsql-hackers
Gregory Stark <stark@enterprisedb.com> writes:
> Whereas if you set toast_tuples_per_page to 8k then the only option for
> Postgres will be to put each datum in its own page and waste 1-3k on every
> page.

No, because actually the code is designed to make the toast chunk size
just enough less than 8K that the tuples fit.

The shorter-than-normal tuples carrying the last chunk of any particular
datum are going to result in wasted space to the extent that we can't
pack them together on a page, but that's true now.  Right now, if you
have a large toasted datum, it mostly will consist of just-under-2K
tuples that are sized so that there's no noticeable wasted space on a
page with 4 of them.  There isn't any advantage to that compared to one
just-under-8K tuple AFAICS, and it takes 4 times as much work to insert
or retrieve 'em.

			regards, tom lane