BEA ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > WebLogic Server > WebLogic JTA プログラマーズ ガイド > 用語集 |
WebLogic JTA プログラマーズ ガイド
|
ローカル トランザクション (local transaction)
単一のリソース マネージャにのみローカルなトランザクション。1 つのデータベースにのみ関連するトランザクションなど。
分散トランザクション (distributed transaction)
複数のリソース マネージャにわたる 2 フェース コミット プロトコルを介して、外部のトランザクション マネージャにより境界の設定と調整が行われるトランザクション。グローバル トランザクションとも呼ばれます。
グローバル トランザクション (global transaction)
トランザクション ブランチ (transaction branch)
グローバル トランザクションをサポートする、各リソース マネージャの内部処理ユニットは、厳密には 1 つのトランザクション ブランチの一部です。トランザクション マネージャがリソース マネージャに提供する各グローバル トランザクション識別子 (GTRID または XID) によって、分散トランザクションと個々のブランチの両方が識別されます。
ヒューリスティックな決定 (heuristic decision)
ヒューリスティックな決定 (またはヒューリスティックな終了) は、更新をコミットするかロールバックする分散トランザクションの終了段階でリソースが一方だけの決定を行ったときに発生します。これにより、分散されたデータは不確定な状態のままになります。ヒューリスティックな決定の原因としては、ネットワークの障害またはトランザクションのタイムアウトが考えられます。
トランザクションに参加する 1 つのリソースが、準備してコミットの決定を待つことに同意しているにもかかわらず、処理のロールバックを自発的に決定した場合。トランザクション マネージャがトランザクションのコミットを決定すると、そのリソースによるヒューリスティックなロールバックの決定は不正になり、トランザクションの他のブランチはコミットされるため、矛盾した結果を招きます。
トランザクションに参加する 1 つのリソースが、準備してコミットの決定を待つことに同意しているにもかかわらず、処理のコミットを自発的に決定した場合。トランザクション マネージャがトランザクションのロールバックを決定すると、そのリソースによるヒューリスティックなコミットの決定は不正になり、トランザクションの他のブランチはロールバックされるため、矛盾した結果を招きます。
トランザクションが、参加リソースの一部がコミットし、一部がロールバックするという混合した結果になったことを、トランザクション マネージャで認識している場合。主に、1 つまたは複数の参加リソースが、ヒューリスティックなロールバックまたはヒューリスティックなコミットを決定したことが原因で発生します。
トランザクションが、参加リソースの一部がコミットし、一部がロールバックするという混合した結果になったことを、トランザクション マネージャで認識している場合。ただし、システムまたはリソースに障害があるため、HeuristicMixed の結果が確かに発生したかどうかを確認できない場合。主に、1 つまたは複数の参加リソースが、ヒューリスティックなロールバックまたはヒューリスティックなコミットを決定したことが原因で発生します。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |