12.7.8. トランザクションタイムアウト
12.7.8.1. トランザクションタイムアウト
原子性を確保し、トランザクションを ACID 標準に準拠させるために、トランザクションの一部が長期間実行される場合があります。トランザクション参加者は、コミットするときにデータソースの一部をロックする必要があります。トランザクションマネージャーは、コミットするかロールバックするかをすべて指示する前に、各トランザクション参加者からの応答を待つ必要があります。ハードウェアあるいはネットワークの障害のため、リソースが永久にロックされることがあります。
トランザクションのタイムアウトをトランザクションと関連付け、ライフサイクルを制御することができます。タイムアウトのしきい値がトランザクションのコミットあるいはロールバック前に渡された場合、タイムアウトにより、自動的にトランザクションがロールバックされます。
トランザクションサブシステム全体に対しデフォルトのタイムアウト値を設定できます。または、デフォルトのタイムアウト値を無効にし、トランザクションごとにタイムアウトを指定できます。