pg_test_fsync — PostgreSQLの最も高速なwal_sync_method
を決定する
pg_test_fsync
[option
...]
pg_test_fsyncは使用するシステムにおいて最速なwal_sync_methodは何かについて、合理的な見解を提供することを意図したものです。
同時に識別されたI/O問題のイベントに診断情報を提供します。
しかしpg_test_fsyncで示される差異が、実際のデータベーススループットにおいて差異として現れないことがあります。
特に、多くのデータベースサーバは先行書き込みログにより速度制限されていないからです。
pg_test_fsyncは各wal_sync_method
に対する平均ファイル同期処理時間をマイクロ秒単位で報告します。
これはcommit_delayの値を最適化する時の情報としても使うことができます。
pg_test_fsyncは以下のコマンドラインオプションを受け付けます。
-f
--filename
テストデータを書き込むためのファイルの名前を指定します。
このファイルはpg_wal
ディレクトリがある、または格納する予定のファイルシステムと同じファイルシステムになければなりません。
(pg_wal
にはWALファイルが含まれます。)
デフォルトは現在のディレクトリ内のpg_test_fsync.out
です。
-s
--secs-per-test
1テストあたりの秒数を指定します。 テストあたりの時間を多くするほど、テストの精度が向上しますが、実行により時間がかかるようになります。 デフォルトは、本プログラムがおよそ2分で完了することができる、5秒です。
-V
--version
pg_test_fsyncのバージョンを表示し、終了します。
-?
--help
pg_test_fsyncのコマンドライン引数の説明を表示し、終了します。