PostgreSQLLa base de données la plus sophistiquée au monde.

42.10. pg_autovacuum

Le catalogue pg_autovacuum stocke des paramètres de configuration optionnels par relation pour Le démon auto-vacuum. S'il existe une entrée ici pour une relation particulière, les paramètres donnés seront utilisés par autovacuum pour cette table. Si aucune entrée n'est présente, les paramètres par défaut du système seront utilisés.

Tableau 42.10. Colonnes de pg_autovacuum

Nom Type Références Description
vacrelid oid pg_class.oid Le table concernée par cette entrée
enabled bool   Si false, cette table n'est jamais prise en compte par autovacuum
vac_base_thresh integer   Nombre minimum de lignes modifiées avant de lancer un vacuum
vac_scale_factor float4   Multiplicateur pour reltuples à ajouter à vac_base_thresh
anl_base_thresh integer   Nombre minimum de lignes modifiées avant de lancer une analyse
anl_scale_factor float4   Multiplicateur pour reltuples à ajouter à anl_base_thresh
vac_cost_delay integer   Paramètre vacuum_cost_delay personnalisé
vac_cost_limit integer   Paramètre vacuum_cost_limit personnalisé

Le démon autovacuum lance une opération de VACUUM sur une table particulière quand le nombre de lignes mises à jour ou supprimées dépasse vac_base_thresh plus vac_scale_factor fois le nombre de lignes réelles actuellement estimées dans la relation. De façon similaire, il initie une opération ANALYZE quand le nombre de lignes insérées, mises à jour ou supprimées dépasse anl_base_thresh plus anl_scale_factor fois le nombre de lignes réelles actuellement estimées comme faisant parties de la relation.

Tout champ numérique peut contenir -1 (ou toute autre valeur numérique) pour indiquer que la valeur par défaut du système doit être utilisée pour cette valeur particulière. Observez que la variable vac_cost_delay hérite sa valeur par défaut du paramètre de configuration autovacuum_vacuum_cost_delay ou de vacuum_cost_delay si le premier est négatif. La même logique s'applique à vac_cost_limit.