Tsurugi Advent Calendar 2025の17日目、Tsurugi JDBCの使い方その4です。
トランザクションオプションと違ってあまり意識しないかもしれませんが、Tsurugiではコミット時にも指定できるオプションがあります。
特にコミット種別は、コミットメソッドがどのタイミングで戻ってくるかを指定するもので、以下の種類があります。
- DEFAULT - サーバー側の設定に従う。サーバー側設定のデフォルトはSTORED
- ACCEPTED -サーバー側でコミットが受け付けられたら戻る
- AVAILABLE - コミットしたデータが他トランザクションから見えるようになったら戻る
- STORED - コミットしたデータがサーバーのローカルディスクに書かれたら(永続化されたら)戻る
- PROPAGATED - コミットしたデータが複数ノードの適切な台数に書かれたら戻る
- 現状のTsurugiはまだ複数ノードに対応していないので、指定してもSTOREDと同じ
通常はデフォルトのまま(実質的にSTORED)で構わないと思いますが、障害発生時に永続化れていないリスクがあっても実行速度を優先したい場合は、AVAILABLEにするという手もあります。
Tsurugi JDBCにおけるコミットオプションの指定の仕方は、トランザクションオプションの指定方法と同様です。
なお、コミットオプションの指定方法のサンプルはtsurugi-jdbc-examplesにあります。