Skip site navigation (1) Skip section navigation (2)

Toasting more system-table columns

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: Toasting more system-table columns
Date: 2000-08-03 17:48:57
Message-ID: 11616.965324937@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
I find the following varlena (ie, potentially toastable) columns
present in the system tables:

    relname     |   attname    | typname  | attstorage
----------------+--------------+----------+------------
 pg_aggregate   | agginitval   | text     | x
 pg_attrdef     | adbin        | text     | p
 pg_attrdef     | adsrc        | text     | p
 pg_class       | relacl       | _aclitem | m
 pg_database    | datpath      | text     | p
 pg_description | description  | text     | x
 pg_group       | grolist      | _int4    | p
 pg_index       | indpred      | text     | x
 pg_language    | lancompiler  | text     | x
 pg_proc        | probin       | bytea    | p
 pg_proc        | prosrc       | text     | p
 pg_relcheck    | rcbin        | text     | p
 pg_relcheck    | rcsrc        | text     | p
 pg_rewrite     | ev_action    | text     | x
 pg_rewrite     | ev_qual      | text     | x
 pg_shadow      | passwd       | text     | p
 pg_statistic   | stacommonval | text     | x
 pg_statistic   | stahival     | text     | x
 pg_statistic   | staloval     | text     | x
 pg_trigger     | tgargs       | bytea    | p
 pg_type        | typdefault   | text     | p

Of these tables, only pg_rewrite has a toast table so far.

Offhand it would seem to be a good idea to create toast tables for
pg_attrdef, pg_description, pg_proc, pg_relcheck, possibly pg_statistic.
Certainly a toast table for pg_proc is a must so that we can deal with
large procedure bodies.  Toasting pg_attrdef would allow very large
column default expressions (dubious value), pg_description for long
comments (probably should have this), pg_relcheck for long constraint
expressions (probably want this), pg_statistic to cope with long
min/max/common values (not sure about this).

I doubt the other system tables need toast tables, although we may as
well mark all of these attributes "m", ie, they should be compressible
in-line even if there is no toast table.

Comments?

			regards, tom lane

Responses

pgsql-hackers by date

Next:From: Mark HollomonDate: 2000-08-03 18:38:01
Subject: Re: Toasting more system-table columns
Previous:From: Roland RobertsDate: 2000-08-03 17:40:13
Subject: RPM buglet, postgres-devel

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group