タイプ: | integer |
デフォルト: | 200 (200ms) |
分: | 1 (1ms) |
最大: | 10000 (10s) |
単位: | milliseconds (ms) |
コンテキスト: | sighup |
再起動: | false |
WALライタがWALを吐き出す頻度を時間で指定します。WALを吐き出したとあと、非同期コミットしているトランザクションに起こされない限り、wal_writer_delay
ミリ秒待機します。最後の吐き出しが過去wal_writer_delay
以内に行われ、かつそれ以降wal_writer_flush_after相当のWALが生成されている場合は、WALはオペレーティングシステムに書き込まれますが、ディスクには吐出されません。この値が単位なしで指定された場合は、ミリ秒単位であるとみなします。デフォルト値は200ミリ秒(200ms
)です。多くのシステムでは、待機間隔の実質的な分解能は10ミリ秒です。10の倍数以外の値をwal_writer_delay
に設定しても、その次に大きい10の倍数を設定した場合と同じ結果となります。このパラメータはpostgresql.confファイル内またはサーバのコマンドラインでのみ設定可能です。
推奨事項 [EN]
Defines the maximum data (in time) that can be lost if synchronous_commit=off and the database shuts down. Because of long transactions, actual data lost can be up to twice this time. Has no effect if synchronous_commit=on. If you are going to turn synchronous_commit=off server-wide, you should probably lower this to prevent too much data loss.