Thread: pg_toast

pg_toast

From
Mike angelo
Date:
I'm a newb to Postgres, and need some assistance with pg_toast. I'm running PostgreSQL 8.3, and am having an issue with one of my pg_toast tables growing at the rate of 1 GB per day. Can someone offer me some insight on
 
a) the functionality of the  pg_toast_* tables?
 
b) how can I clear them out (or should I - including the reason if I should not)?
 
Reindexing produced no reduction in size of the table in question, and a VACUUM ANALYZE VERBOSE pg_toast_293523 produced the message:
 
    skipping "pg_toast_293523" --- cannot vacuum indexes, views, or special system tables.
 
I'm assuming truncating a pg_toast table would be a bad thing...
 
Any help would be appreciated. Many thanks.
 
- Mike

Re: pg_toast

From
Tom Lane
Date:
Mike angelo <angelocmp@yahoo.com> writes:
> Reindexing produced no reduction in size of the table in question, and a VACUUM ANALYZE VERBOSE pg_toast_293523
producedthe message:  

> ��� skipping "pg_toast_293523" --- cannot vacuum indexes, views, or special system tables.

Issue the vacuum against the owning table instead.  (If you're not sure
which that is, joining pg_class.reltoastrelid to pg_class.oid will
help.)

In general it sounds like you need to crank up the aggressiveness of
autovacuum, and perhaps look at whether your application is doing
useless updates on very wide fields.

            regards, tom lane