Type: integer
Défaut: 64 (512kB)
Min: 0 (0kB)
Max: 256 (2MB)
Unité: 8kB
Contexte: sighup
Redémarrer: false
Depuis: 9.6

Quand plus de ce nombre d'octets ont été écrit par le processus d'écriture en tâche de fond (bgwriter), tente de forcer le système d'exploitation à écrire les données sur disque. Faire cela limite la quantité de données modifiées dans le cache disque du noyau, réduisant le risque de petites pauses dues à l'exécution d'un fsync à la fin d'un checkpoint ou à l'écriture massive en tâche de fond des données modifiées. Souvent, cela réduira fortement la latence des transactions mais il existe aussi quelques cas de dégradation des performances, tout spécialement avec les charges de travail plus importantes que shared_buffers, mais plus petites que le cache disque du système d'exploitation. Ce paramètre pourrait ne pas avoir d'effet sur certaines plateformes. L'intervalle valide se situe entre 0, qui désactive le writeback forcé, et 2MB. Si cette valeur est indiquée sans unité, elle est compris comme des blocs, autrement dit BLCKSZ octets, typiquement 8 Ko. La valeur par défaut est 512KB sur Linux, 0 ailleurs. (Si BLCKSZ ne vaut pas 8 ko, les valeurs par défaut et maximales évoluent de façon proportionnelles à cette constante.) Ce paramètre est seulement configurable dans le fichier postgresql.conf et à la ligne de commande.

Recommandations [EN]

Unless you have time to tune memory flushing behavior and test for improvements/regressions

Commentaires