Type: real
Défaut: 0 (0ms)
Min: 0 (0ms)
Max: 100 (100ms)
Unité: milliseconds (ms)
Contexte: user
Redémarrer: false

Indique le temps, en millisecondes, de repos du processus quand la limite de coût a été atteinte. Si cette valeur est indiquée sans unité, elle est comprise comme des millisecondes. La valeur par défaut est zéro, ce qui désactive la fonctionnalité de report du VACUUM en fonction de son coût. Une valeur positive active cette fonctionnalité.

Lors d'utilisation de vacuum basée sur le coût, les valeurs appropriées pour vacuum_cost_delay sont habituellement assez petites, inférieures à 1 milliseconde. Bien que vacuum_cost_delay puisse être configuré à des valeurs à virgule flottante en millisecondes, ces délais pourraient ne pas pouvoir être mesurés de façon précise sur les anciennes plateformes. Sur ce type de plateforme, augmenter la consommation de ressource du VACUUM au-dessus de ce que vous obtiendrez avec 1ms nécessitera de modifier les autres paramètres de coût. De plus, vous devrez garder vacuum_cost_delay aussi petit que ce que votre plateforme peut mesurer correctement. De gros délais n'aident pas.

Recommandations [EN]

Most of the time, you will want manual vacuum to execute without vacuum_delay, especially if you're using it as part of ETL. If for some reason you can't use autovacuum on an OLTP database, however, you may want to increase this to 20ms to decrease the impact vacuum has on currently running queries. Will cause vacuum to take up to twice as long to complete.

Commentaires