Excerpts from Bruce Momjian's message of lun ago 23 14:55:55 -0400 2010:
> OK, I have attached a proposed patch to improve this. I moved the
> pg_clog mention to a new paragraph and linked it to the reason the
> default is relatively low.
>
> Comments?
I think the new para doesn't make much sense, in context. Why does it
say "freeze"? How can we expect users to understand how that is
related to this parameter?
> --- 4150,4165 ----
> <para>
> Specifies the maximum age (in transactions) that a table's
> <structname>pg_class</>.<structfield>relfrozenxid</> field can
> ! attain before a <command>VACUUM</> freeze operation is forced
> ! to prevent transaction ID wraparound within the table.
> ! Note that the system will launch autovacuum processes to
> ! prevent wraparound even when autovacuum is otherwise disabled.
> ! </para>
> !
> ! <para>
> ! Vacuum freeze also allows removal of old files from the
> ! <filename>pg_clog</> subdirectory, which is why the default
> ! is a relatively low 200 million transactions.
> This parameter can only be set at server start, but the setting
> can be reduced for individual tables by
> changing storage parameters.
--
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support