commit_delay is a configuration parameter for adding a time delay before a WAL flush is initiated.
commit_delay was added in PostgreSQL 7.1.
The default value for
commit_delay is generally not regarded as an effective or easy parameter to tune, and may only bring performance benefits in certain very specific situations, while risking an overall performance slowdown.
If set to a non-zero value,
commit_delay makes it possible for a larger number of transactions to commit via a single WAL flush, improving system throughput. However it also increases latency by up to the specified value for each WAL flush.
commit_delay is only of practical use if mulitple transactions (at least the number specified by
5) become ready to commit within the interval specified.