3.15.4 XARファイルに障害が発生した場合の運用
XAリソースサービスのオンライン中に,XARファイルのI/O障害が発生した場合,オンライン用XARファイルからバックアップ用XARファイルに自動的にスワップします。この機能をスワップ機能といいます。この機能を使用すると,オンライン用XARファイルに障害が発生しても,XAリソースサービスのオンラインを続行できます。
XARファイルのI/O障害発生時にXAリソースサービスのオンラインを再開始する方法は,障害がどのファイルで,またどの時点で発生するかによって異なります。障害発生時点ごとの運用方法を次に示します。
-
オンライン用XARファイルに障害が発生した時点で,スワップ機能を使用して新しいXARファイルと入れ替える方法
-
1.の後,さらにバックアップ用XARファイルに障害が発生し,XAリソースサービスが閉塞した時点で新しいXARファイルと入れ替える方法
-
オンライン用XARファイルに障害が発生し,OpenTP1が停止した時点で新しいXARファイルと入れ替える方法
-
オンライン用とバックアップ用の両方のXARファイルに障害が発生し,XAリソースサービスが閉塞およびOpenTP1が停止した時点で新しいXARファイルと入れ替える方法
1および2の方法は,OpenTP1を停止させることなく,障害が発生したXARファイルを新しいXARファイルに入れ替えます。これらの方法は,共用メモリから障害発生前のトランザクションブランチを回復できます。
1の方法は,バックアップ用XARファイルに障害が発生する前に対策を実施するので,より確実にXAリソースサービスを運用できます。
3の方法は,OpenTP1が停止しても,バックアップ用XARファイルの情報から障害発生前のトランザクションブランチを回復できます。
4の方法はOpenTP1が停止し,さらにオンライン用およびバックアップ用の両方のXARファイルに障害が発生しているため,新しいXARファイルに入れ替えても,障害発生前のトランザクションブランチを回復できません。
それぞれの方法の詳細について説明します。
- 〈この項の構成〉
(1) オンライン用XARファイルに障害が発生した時点でのXARファイルの入れ替え
オンライン用XARファイルに障害が発生すると,XAリソースサービスはバックアップ用XARファイルにスワップして運用を続行します。この時点でオンライン用XARファイルを新しいファイルに入れ替えると,OpenTP1を停止させることなく,障害発生前のトランザクションブランチを回復できます。
XAリソースサービスがバックアップ用XARファイルを使用して運用中の場合,オンライン用XARファイルを入れ替えるには,xarholdコマンドを使用してXAリソースサービスを強制的に閉塞します。XAリソースサービスが閉塞しても,ほかのOpenTP1サービスは実行できます。オンライン用XARファイルに障害が発生した時点での,オンライン用XARファイルの入れ替え方法を次に示します。
-
xarholdコマンドを実行します。
XAリソースサービスが閉塞します。
-
新しいオンライン用XARファイルを作成します。
障害が発生しているオンライン用XARファイルとは別のディスクボリュームに作成してください。新しいオンライン用XARファイルは,バックアップ用XARファイルと同一レコード長,同一レコード数で作成してください。
-
作成したXARファイルに合わせてXAリソースサービス定義のオンライン用XARファイルの定義を変更します。
オンライン用XARファイルの定義だけを変更してください。
-
xarrlesコマンドを実行します。
XAリソースサービスの閉塞が解除されます。共用メモリからトランザクションブランチを回復し,新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。
オンライン用XARファイルに障害が発生した場合のXARファイルの入れ替え方法を次の図に示します。
(2) バックアップ用XARファイルに障害が発生した時点でのXARファイルの入れ替え
オンライン用XARファイルに障害が発生し,バックアップ用XARファイルにスワップしてXAリソースサービスの運用を続行している間に,バックアップ用XARファイルにも障害が発生した場合,XAリソースサービスは閉塞状態になります。XAリソースサービスが閉塞状態になると,XAリソースサービスで連携するアプリケーションサーバからのトランザクション指示に対して,すべてXAER_RMERRを返します。ただし,障害が局所化されているため,OpenTP1は停止しないで,XAリソースサービス以外のOpenTP1サービスは実行できます。また,XARファイルを新しいファイルに入れ替えれば,XAリソースサービスのトランザクションブランチを回復できます。
オンライン用XARファイルとバックアップ用XARファイルの両方に障害が発生してXAリソースサービスが閉塞状態になった場合の,XARファイルの入れ替え方法を次に示します。
-
新しいXARファイルを作成します。
オンライン用とバックアップ用のXARファイルを,同一レコード長,同一レコード数で,障害の発生していないディスクボリューム上に作成してください。
-
作成したXARファイルに合わせてXAリソースサービス定義のXARファイルの定義を変更します。
オンライン用およびバックアップ用の両方のXARファイルの定義を変更してください。
-
xarrlesコマンドを実行します。
XAリソースサービスの閉塞が解除されます。共用メモリからトランザクションブランチを回復し,新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。
バックアップ用XARファイルで障害が発生した場合のXARファイルの入れ替え方法を次の図に示します。
(3) オンライン用XARファイルに障害が発生しOpenTP1が停止した場合のXARファイルの入れ替え
オンライン用XARファイルに障害が発生し,さらにOpenTP1が停止(正常停止/異常停止)すると,XAリソースサービスは閉塞します。XAリソースサービスを再開始するには,新しいXARファイルを作成してからOpenTP1を再開始します。
オンライン用XARファイルに障害が発生し,さらにOpenTP1が停止した場合のXARファイルの入れ替え方法を次に示します。
-
新しいオンライン用XARファイルを作成します。
障害が発生しているオンライン用XARファイルとは別のディスクボリュームに作成してください。新しいオンライン用XARファイルは,バックアップ用XARファイルと同一レコード長,同一レコード数で作成してください。
-
作成したオンライン用XARファイルに合わせてXAリソースサービス定義のXARファイルの定義を変更します。
定義を変更するのはオンライン用XARファイルだけです。XAリソースサービスは,バックアップ用XARファイルからトランザクションブランチを回復するので,バックアップ用XARファイルは変更しないでください。
-
OpenTP1を再開始します。
OpenTP1を再開始すると,XAリソースサービスの閉塞が解除されます。バックアップ用XARファイルからトランザクションブランチを回復し,新しく作成したオンライン用XARファイルを使用してXAリソースサービスが再開始されます。
- 注意事項
-
停止したOpenTP1を正常開始,および再開始するときは,オンライン用およびバックアップ用の両方のXARファイルがI/O可能になっている必要があります。XARファイルに障害が発生したままではOpenTP1を開始できません。
オンライン用XARファイルに障害が発生し,さらにOpenTP1が停止した場合のXARファイルの入れ替え方法を次の図に示します。
(4) バックアップ用XARファイルに障害が発生しOpenTP1が停止した場合のXARファイルの入れ替え
オンライン用およびバックアップ用の両方のXARファイルに障害が発生し,さらにOpenTP1が停止(正常停止/異常停止)すると,XAリソースサービスは閉塞します。この場合,障害発生前のトランザクションブランチは回復できません。XAリソースサービスを再開始するには,新しいXARファイルを作成してからOpenTP1を強制正常開始します。
オンライン用およびバックアップ用の両方のXARファイルに障害が発生し,OpenTP1が停止した場合のXARファイルの入れ替え方法を次に示します。
-
新しいXARファイルを作成します。
オンライン用とバックアップ用のXARファイルを,同一レコード長,同一レコード数で,障害の発生していないディスクボリューム上に作成してください。
-
作成したXARファイルに合わせてXAリソースサービス定義のXARファイルの定義を変更します。
オンライン用およびバックアップ用の両方のXARファイルの定義を変更してください。
-
OpenTP1を強制正常開始します。
OpenTP1を再開始すると,XAリソースサービスの閉塞が解除されます。新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。ただし,障害前のトランザクションブランチは回復できません。
- 注意事項
-
停止したOpenTP1を強制正常開始するときは,オンライン用およびバックアップ用の両方のXARファイルがI/O可能になっている必要があります。XARファイルに障害が発生したままではOpenTP1を開始できません。
オンライン用およびバックアップ用の両方のXARファイルに障害が発生し,OpenTP1が停止した場合のXARファイルの入れ替え方法を次の図に示します。