未確定トランザクションのリストを表示します。 未確定トランザクションのコミット、ロールバック、または破棄を対話式で実行できます。
2 フェーズ・コミット・プロトコルは、以下のもので構成されます。
未確定トランザクションは、準備済みのトランザクションのうち、 コミットまたはロールバックが実行されていないものです。
効力範囲
このコマンドは、 このコマンドが実行されたノード上にある未確定トランザクションのリストを戻します。
許可
dbadm
必須接続
データベース。 暗黙接続が可能な場合には、省略時データベースへの接続が確立されます。
コマンド構文
>>-LIST INDOUBT TRANSACTIONS--+----------------+--------------->< '-WITH PROMPTING-'
コマンド・パラメーター
対話式ダイアログ・モードでは次のことが可能です。
注: | コマンド文字と引き数の間は、ブランク・スペースで区切る必要があります。 |
トランザクションのコミット、ロールバック、または破棄を実行する前に、 トランザクション・データが表示され、 アクションを確認するように求められます。
例
次に示すのは、LIST INDOUBT TRANSACTIONS によって生成されるダイアログ例です。
In-doubt Transactions for Database SAMPLE 1. originator: XA appl_id: *LOCAL.DB2.95051815165159 sequence_no: 0001 status: i timestamp: 05-18-1997 16:51:59 auth_id: SMITH log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F93DD A92F8C4FF3000000 0000BD 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: i timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 . . . Enter in-doubt transaction command or 'q' to quit. e.g. 'c 1' heuristically commits transaction 1. c/r/f/l/q: c 1 1. originator: XA appl_id: *LOCAL.DB2.95051815165159 sequence_no: 0001 status: i timestamp: 05-18-1997 16:51:59 auth_id: SMITH log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F93DD A92F8C4FF3000000 0000BD Do you want to heuristically commit this in-doubt transaction ? (y/n) y DB20000I "COMMIT INDOUBT TRANSACTION" completed successfully c/r/f/l/q: c 5 DB20030E "5" is not a valid in-doubt transaction number. c/r/f/l/q: l In-doubt Transactions for Database SAMPLE 1. originator: XA appl_id: *LOCAL.DB2.95051815165159 sequence_no: 0001 status: c timestamp: 05-18-1997 16:51:59 auth_id: SMITH log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F93DD A92F8C4FF3000000 0000BD 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: i timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 . . . c/r/f/l/q: r 2 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: i timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 Do you want to heuristically rollback this in-doubt transaction ? (y/n) y DB20000I "ROLLBACK INDOUBT TRANSACTION" completed successfully c/r/f/l/q: l 2 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: r timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 c/r/f/l/q: f 2 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: r timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 Do you want to forget this in-doubt transaction ? (y/n) y DB20000I "FORGET INDOUBT TRANSACTION" completed successfully c/r/f/l/q: l 2 2. originator: XA appl_id: *LOCAL.DATABASE.950407161043 sequence_no: 0002 status: f timestamp: 04-07-1997 16:10:43 auth_id: JONES log_full: n type: RM xid: 53514C2000000017 00000000544D4442 00000000002F95FE B62F8C4FF3000000 0000C1 c/r/f/l/q: q
注: | LIST INDOUBT TRANSACTIONS コマンドは、
それぞれの未確定トランザクションでのデータベースの役割を示す、
以下のタイプ 情報を戻します。
|
未確定トランザクションは、 未確定状態のままになっているグローバル・トランザクションです。 これは、2 フェーズ・コミット・プロトコルの第 1 フェーズ (つまり PREPARE フェーズ) を正常終了した後、トランザクション・マネージャー (TM)、 または少なくとも 1 つのリソース・マネージャー (RM) のいずれかが使用できなくなった場合に発生します。 RM がもう一度使用可能になり、 TM が RM からの未確定状況情報に関するログを統合できるようになるまで、 RM はトランザクションの分岐をコミットするのかそれともロールバックするかがわかりません。 詳しくは、管理の手引き の中の、 DB2 を XA 互換トランザクション・マネージャーと一緒に使用する方法について説明している章を参照してください。 未確定トランザクションは MPP 環境にも存在させることができます。 詳しくは、管理の手引き の中の、障害が発生したデータベース区画サーバーで トランザクション障害を回復する方法について説明している節を参照してください。
現在接続されているデータベースに対して LIST INDOUBT TRANSACTIONS が出された場合、 そのデータベースの未確定トランザクションに関する情報が戻されます。
コミットできるのは、状況が未確定 (i)、 またはコミット肯定応答欠落 (m) のトランザクションだけです。
ロールバックできるのは、 状況が未確定 (i) または終了済み (e) のトランザクションだけです。
破棄できるのは、 状況がコミット済み (c) またはロールバック済み (r) のトランザクションだけです。
注: | 2 フェーズ・コミットのコミット・フェーズでは、 調整プログラム・ノードがコミットの肯定応答を待機します。 (ノード障害などの理由で) 応答しないノードが 1 つ以上ある場合、 そのトランザクションはコミット肯定応答欠落状態になります。 |
未確定トランザクション情報は、コマンドが出された時点でしか有効ではありません。 対話式ダイアログ・モードに入ってしまうと、 外部の活動のためにトランザクション状況が変更されることがあります。 その場合、該当する状況にない未確定トランザクションを処理しようとすると、 エラー・メッセージが表示されます。
このタイプのエラーが発生した場合、 ユーザーは対話式ダイアログを終了 (q) しなければなりません。 そして、表示される情報を最新表示にするために、 LIST INDOUBT TRANSACTIONS WITH PROMPTING コマンドを再発行する必要があります。
詳しくは、管理の手引き を参照してください。