I know everyone is busy with the 7.3beta, but maybe this is something to think of
before releasing the beta. Currently VACUUM will vacuum every table, but sometimes
it's desireable to leave tables untouched because the're mostly static or protocol
tables. In my case this would be the pg_largeobject which is around 4GB of data, while
the
other tables are ~40MB. Vacuuming the data is important, the large object table
however rarely changes. The same goes for a protocol table which is around 1GB and
never is
changed beside INSERTS, so it's just growing, but never needs vacuum. VACUUM on the
4GB table needs a long long time and no improvements, it just hurts performance and
fills OS buffers.
If pg_class would have a field for storing misc flags (e.g. a bitfield). This would
allow to set a flag like NO_AUTO_VACUUM and modify the vacuum code to leave that
tables untouched
if not specified by hand. Maybe there are other uses for such a bitfield too, and will
help prevent an initdb for simple improvements.
Any comments?
Best regards,
Mario Weilguni
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org