PostgreSQL version:

autovacuum_multixact_freeze_max_age

Specifies the maximum age (in multixacts) that a table's pg_class.relminmxid field can attain before a VACUUM operation is forced to prevent multixact ID wraparound within the table. Note that the system will launch autovacuum processes to prevent wraparound even when autovacuum is otherwise disabled.

Vacuuming multixacts also allows removal of old files from the pg_multixact/members and pg_multixact/offsets subdirectories, which is why the default is a relatively low 400 million multixacts. This parameter can only be set at server start, but the setting can be reduced for individual tables by changing table storage parameters. For more information see vacuum-for-multixact-wraparound.

Recommendations

Triggers autovacuum automatically when the oldest “multixact” (a kind of lock transaction) is more than this old. Do not raise past 1billion.

Comments

Type: integer
Default: 400000000
Min: 10000
Max: 2000000000
Context: postmaster
Restart: true
Since: 9.3

On pgsql-hackers