S-JIS[2023-10-06/2023-10-08]

Tsurugiコミット

Tsurugiのコミットオプションのメモ。


概要

Tsurugiでは、トランザクションをコミットする際にコミットオプションを指定できる。

コミットコマンドを実行したとき、Tsurugiサーバー内でどこまで処理したらコミットコマンドから制御が戻るかを指定する。

コミットオプション 説明 備考
default コミットオプション省略時は、Tsurugiサーバー側の設定に従う。 Tsurugiサーバー側の設定は、構成定義ファイルsqlセクションのcommit_responseで指定されている。
accepted Tsurugiサーバーでコミットが受け付けられたら制御が戻る。  
available コミットしたデータが他トランザクションから見えるようになったら戻る。  
stored コミットしたデータがローカルディスクに書かれたら戻る。  
propagated コミットしたデータが適切な全てのノードに伝播されたら戻る。 Tsurugi 1.0.0では分散ノードに対応していないので、storedと同じ。

詳細はTsurugiの書籍の3章『Tsurugiに触ってみる』を参照。


コミットオプションを指定する例

場所 更新日
Tsurugi SQLコンソールのcommit文 tgsql> commit wait for stored;  
IceaxeのTsurugiTransaction import com.tsurugidb.iceaxe.transaction.TgCommitType;

transaction.commit(TgCommitType.STORED);
 
IceaxeのTsurugiTransactionManager import com.tsurugidb.iceaxe.transaction.TgCommitType;

var setting = TgTmSetting.of(〜).commitType(TgCommitType.STORED);
 
Tsubakuro(SQL)Transaction import com.tsurugidb.sql.proto.SqlRequest.CommitStatus;

transaction.commit(CommitStatus.STORED)
 
Tsubakuro(KVS)のTransactionHandle import com.tsurugidb.tsubakuro.kvs.CommitType;

kvsClient.commit(transactionHandle, CommitType.STORED)
 
embulk input tsurugidb
embulk output tsurugidb
commit_type: stored 2023-10-08

Tsurugiへ戻る / 技術メモへ戻る
メールの送信先:ひしだま