系が切り替わるときの処理の流れを次の図に示します。ここでは,障害発生を契機とした系切り替えを例に説明します。
図7-3 系が切り替わるときの処理の流れ
![[図データ]](figure/zu080030.gif)
- 説明
- HAモニタからの系切り替え指示を検知します。
- 自系のHAモニタに自系のTP1/EEが待機系から実行系に切り替わることを連絡します。
- キューログ回復処理によって,自系のTP1/EEと待機系のリソースの状態を一致させます。キューログ回復処理については,「7.10 系切り替えが発生したときのXTCの処理」を参照してください。
- 実行系連絡トランザクション(UI)を起動します。
系切り替えが発生した場合,待機系が実行系に切り替わったことをユーザに通知するために実行系連絡トランザクションが起動されます。
- 切り替わった系で処理を再開します。
- 注意
- XTCの開始処理中は系切り替えが発生しないため,実行系連絡トランザクションが起動することはありません。しかし,XTCの終了処理中に障害が発生すると,タイミングによっては実行系連絡トランザクションが起動することがあります。
- 実行系連絡トランザクションでは,系切り替え前の実行系の状態を参照できます。実行系連絡トランザクション(UI)のXTC拡張トランザクションインタフェース情報にEERPC_STATUS_BEFORE_MEが設定されている場合は,実行系連絡トランザクションの終了後にXTCの終了処理を行います。そのため,新規のトランザクションや,リソースの転送が発生するAPIまたはコマンドを実行しないでください。XTCの終了処理が完了する前に系切り替えが発生すると,再度実行系連絡トランザクションが起動されます。このとき,同じAPIまたはコマンドを実行すると,データベースの二重更新や,メッセージの二重送信などが発生するおそれがあります。