9.4.1.2.1 コミットの成功条件の選択

1つのトランザクションに複数のグループが関係している場合、tpcommit()が正常に制御を戻すための条件として、次のいずれかを指定できます。

  • すべての参加リソースからコミットの準備が完了したことが通知された場合。つまり、すべての参加リソースが2フェーズ・コミットの第1フェーズが完了したことを報告し、トランザクション・コーディネータのTMSが安定記憶域にコミットの決定を書き込んだ場合です。
  • すべての参加リソースで2フェーズ・コミットの第2フェーズが完了した場合。

この2つの条件のいずれかを指定するには、構成ファイルのRESOURCESセクションのCMTRETパラメータに、次のいずれかの値を設定します。

  • LOGGED - 第1フェーズの完了が必須であることを示します
  • COMPLETE - 第2フェーズの完了が必須であることを示します

デフォルトでは、CMTRETCOMPLETEに設定されます。

後で構成ファイルの設定値を変更する場合は、flags引数にTP_CMT_LOGGEDまたはTP_CMT_COMPLETEを設定して、tpscmt()を呼び出します。