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

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Cleaning bloated pg_attribute


  • From: Michal Taborsky <michal(dot)taborsky(at)mall(dot)cz>
  • To: pgsql-performance(at)postgresql(dot)org
  • Subject: Cleaning bloated pg_attribute
  • Date: Fri, 10 Jun 2005 11:05:45 +0200
  • Message-id: <42A957E9.8040909@mall.cz> <text/plain>

I managed, by extensive usage of temporary tables, to totally bloat pg_attribute. It currently has about 40000 pages with just 3000 tuples. The question is, how to restore it to it's former beauty? With ordinary table I'd just CLUSTER it, but alas! I cannot do that with system catalog. I always get:

db=# cluster pg_attribute_relid_attnam_index on pg_attribute;
ERROR:  "pg_attribute" is a system catalog

The only thing I could think of is VACUUM FULL, but from my former experience I guess it'll take maybe over an hour, effectively rendering the server unusable, because of the exclusive lock. It is a live 24/7 system, so I'd really prefer something less drastic than dumping and reloading the database (though it's still shorter downtime than with the vacuum.)

Isn't there a way to somehow go around the above mentioned limitation and CLUSTER the table?

Thanks for your ideas.

--
Michal Táborský
CTO, Internet Mall, a.s.

Internet Mall - obchody, které si oblíbíte
<http://www.MALL.cz>



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group