アクティブ・トランザクションおよび準備済みトランザクションの管理
このタスクを使用して、アクティブ・トランザクションと準備済みトランザクションを管理します。 これには、管理者アクションが必要になる場合があります。
このタスクについて
通常の環境では、トランザクションは自動的に実行され、自動的に完了
(コミットまたはロールバック) するので、特に介入する必要はありません。
ただし、環境によっては、トランザクションを手動で解決する必要があります。
例えば、必要な時間フレーム内に再び使用可能にならないことが明らかなリソース・マネージャーをポーリングしてトランザクションが動作を停止した場合は、トランザクションをロールバックします。
通常の環境では、トランザクションはあらゆる手段によって終了されます。ただし、RRS およびネイティブ・コンテキストの終了により、トランザクションの終了が不可能になることがあります。
この場合、トランザクションには
rollback_only がマークされ、次の使用可能なウィンドウでロールバックします。
このほかの場合、トランザクションを手動で終了する必要がある場合があります。
例えば、必要な時間フレーム内に再び使用可能にならないことが明らかなリソース・マネージャーをポーリングしてトランザクションが動作を停止した場合は、トランザクションを終了します。
注: アプリケーション・サーバー上でトランザクションを完了すると、
そのサーバーのトランザクション・サービス・ログに完了と記録されるため、
サーバーの始動時にはリカバリーすることができません。
トランザクションを完了する際には、影響のあるリソース・マネージャー上の未確定トランザクションはすべてクリーンアップするようにしてください。
管理コンソールを使用すると、
アプリケーション・サーバー内の以下の状態にあるすべてのトランザクションのスナップショットを表示することができます。
- 手動トランザクション
- 管理者による完了を待機しているトランザクション。 トランザクションごとに、ローカル ID またはグローバル ID が表示されます。トランザクションに関連付けられている各リソースに関する情報 (特に、そのリソースが関連付けられているリソース・マネージャー) を表示することもできます。 さらに、この状態のトランザクションをコミットまたはロールバックするという選択もできます。
- 再試行トランザクション
- 一部のリソースが再試行されるトランザクション。 トランザクションごとに、ローカル ID またはグローバル ID、およびそのトランザクションがコミット中であるかロールバック中であるかが表示されます。トランザクションに関連付けられている各リソースに関する情報 (特に、そのリソースが関連付けられているリソース・マネージャー) を表示することもできます。 さらに、この状態のトランザクションを終了する (再試行を停止する) こともできます。
- ヒューリスティック・トランザクション
- ヒューリスティックに完了したトランザクション。トランザクションごとに、ローカル ID またはグローバル ID とヒューリスティックな結果が表示されます。トランザクションに関連付けられている各リソースに関する情報 (特に、そのリソースが関連付けられているリソース・マネージャー) を表示することもできます。 さらに、そのトランザクションをリストから消去することもできます。
- インポートされた準備済みトランザクション
- インポートされて準備済みであるが、まだコミットされていないトランザクション。 トランザクションごとに、ローカル ID またはグローバル ID が表示されます。トランザクションに関連付けられている各リソースに関する情報 (特に、そのリソースが関連付けられているリソース・マネージャー) を表示することもできます。 さらに、この状態のトランザクションをコミットまたはロールバックするという選択もできます。
アプリケーション・サーバーのアクティブ・トランザクションおよび準備済みトランザクションを管理するには、 管理コンソールを使用して、以下のステップを実行します。