PostgreSQLのバージョン:

vacuum_freeze_min_age

VACUUMがテーブルスキャン時に行バージョンをフリーズするかどうかを決定する際に使用する、カットオフ(トランザクション)年代を指定します。デフォルトは5千万トランザクションです。ユーザはこの値を0から10億までの間で任意の値に設定することができますが、VACUUMは警告なくautovacuum_freeze_max_ageの半分までの値に値を制限します。このため、強制的なautovacuumの間隔が不合理に短くなることはありません。詳細はvacuum-for-wraparoundを参照してください。

推奨事項 [EN]

Most users will want to decrease this so that rows which have been cold for a long time get frozen earlier, and avoid an autovacuum_freeze. The suggestion of 500000 is for a moderately busy database; do not set to less than a few hours worth of XIDs. Maximum setting is 1/2 of autovaccuum_max_freeze_age.

件のコメント