Hitachi

Hitachi Microservices Platform - Paxos Commit Transaction Orchestrator ユーザーズガイド


8.2.11 @PctoGrpcBranchRollbackForアノテーション

説明

gRPC通信によるトランザクションブランチの属性を設定するアノテーションです。gRPCのサービスで実行される任意のクラス、メソッドに指定できます。複数のメソッドに指定した場合は、最後に実行されたメソッドで設定した属性が有効になります。クラスレベルで指定することもできますが、メソッドレベルで指定することを推奨します。

dontRollbackOn属性で、このトランザクションをロールバックにマークしないgRPCステータスコードを設定します。デフォルトの動作は、io.grpc.Status.Code.OK以外をロールバックにマークします。

トランザクションブランチのサービス終了後に動作するHMP-PCTOのインタセプタが、gRPCステータスを判定してロールバックにマークしたかどうかを呼び出し元のサービスに連絡します。ロールバックにマークしたトランザクションブランチが1つでもあると、グローバルトランザクションはロールバックします。

適用可能要素

クラス、メソッド

属性

@PctoGrpcBranchRollbackForアノテーションの属性の一覧を次の表に示します。

表8‒10 @PctoGrpcBranchRollbackForアノテーションの属性の一覧

属性名

説明

必須/任意

デフォルト値

dontRollbackOn

トランザクションをロールバックにマークしないgRPCのステータスコードを設定します。

任意

io.grpc.Status.Code[]

なし

パッケージ名称
jp.co.Hitachi.soft.hmppcto.interceptor