Type: | integer |
Défaut: | 200000000 |
Min: | 100000 |
Max: | 2000000000 |
Contexte: | postmaster |
Redémarrer: | true |
Indique l'âge maximum (en transactions) que le champ pg_class.relfrozenxid d'une table peut atteindre avant qu'une opération VACUUM ne soit forcée pour empêcher la réinitialisation de l'ID de transaction sur cette table. Le système lance les processus autovacuum pour éviter ce bouclage même si l'autovacuum est désactivé.
L'opération VACUUM supprime aussi les anciens fichiers du sous-répertoire pg_xact, ce qui explique pourquoi la valeur par défaut est relativement basse (200 millions de transactions). Ce paramètre n'est lu qu'au démarrage du serveur, mais il peut être diminué pour toute table en modifiant les paramètres de stockage de la table. Pour plus d'informations, voir vacuum-for-wraparound.
Recommandations [EN]
Triggers autovacuum automatically if a table is about to suffer from XID rollover. The setting is very conservative, and should probably be increased to 500million, but not higher.
Sur StackOverflow
Sur pgsql-hackers
- Overhauling "Routine Vacuuming" docs, particularly its handling of freezing
- Re: Option to not use ringbuffer in VACUUM, using it in failsafe mode
- RE: Some shared memory chunks are allocated even if related processes won't start
- How to stop autovacuum silently
- Re: Overhauling "Routine Vacuuming" docs, particularly its handling of freezing