4.2.1 ステータスファイル
(1) ステータスファイルの目的
前回のOpenTP1が,dcstopコマンドを入力して終了したか,障害が起こって異常終了したかを判断して,再開始処理を自動化するためのデータを格納します。OpenTP1を開始するために引き継がなければならないシステム制御情報を,状態が変化した時点で格納します。システム制御情報には,次のようなものがあります。
-
OpenTP1の終了状態
-
開始処理中,稼働中,終了処理中などシステムサービスやUAPの稼働状況
-
システムファイルとユーザファイルのオープン・クローズ状態
-
MCFで接続している各種装置の接続状態
(2) ステータスファイルの構成
ステータスファイルは,OpenTP1を開始するためのきわめて重要なファイルです。ステータスファイルに何らかの障害が起こった場合でもOpenTP1を開始できるように,二つのステータスファイルを組にして二重化します。組になった二つのステータスファイルを論理ファイルといい,個々のステータスファイルをそれぞれA系,B系と呼んで区別します。ステータスサービス定義で,論理ファイルを7個まで指定し,論理ファイルとステータスファイルの対応関係を定義します。
二つのステータスファイルが同時に障害にならないように,A系のステータスファイルとB系のステータスファイルは,なるべくディスクを分けてください。組になるA系とB系のステータスファイルの容量とレコード長は,同じでなければなりません。
ユーザは,ステータスサービス定義で論理ファイルに任意の名称を指定します。この論理ファイル名を使用することで,A系,B系のステータスファイルを同時にオープン,クローズするなど,論理ファイル単位に運用できます。
(3) ステータスファイルの状態
ステータスファイルは次の状態に分けられます。
-
現時点でシステム制御情報の出力対象になっているオープン中の状態です。ファイルの実体が必要です。
-
現時点でシステム制御情報の出力対象にはなっていないが,現用のステータスファイルが入出力障害などで使用できなくなったときに,現用のステータスファイルと切り替えるためにオープン中の状態です。ファイルの実体が必要です。
-
ステータスサービス定義に指定されているが,オープンしないとオンラインでは使用できないクローズ中の状態です。また,削除されて実体のない状態を,実体なしの無効ファイルといいます。OpenTP1開始時にファイルの実体がない無効ファイルがあると,OpenTP1は開始できません。
-
オンライン中に障害が発生し,閉塞しているクローズ中の状態です。
OpenTP1は,OpenTP1の開始時に,ステータスサービス定義で指定したすべてのステータスファイルをオープンします。オープンしたステータスファイルのうちステータス情報の出力対象となっているファイルを現用ファイルといい,オープン中のその他のファイルを予備ファイルといいます。ステータスファイルに障害が発生しないかぎり,ステータス情報は常に同じステータスファイルに格納されます。
システム制御情報は,まずA系のステータスファイルに書き込まれ,その後B系のファイルに書き込まれます。このため,A系ファイル書き込み中にOpenTP1が異常終了し,A系ファイルが利用できなくなっても,B系ファイルは元の状態を保っているので,全面回復時にB系ファイルを読み込むことで再開始できます。
(4) ステータスファイルのスワップ
ステータスファイルは論理ファイル単位で現用ファイルを切り替えます。A系またはB系のステータスファイルに入出力障害が発生すると,OpenTP1は正常な系のステータスファイルからシステム制御情報を予備の論理ファイルに複写します。システム制御情報は,まず正常な系のファイルを予備のA系ファイルに複写し,次に予備のB系ファイルに複写します。複写が終わると,現用と予備を切り替えます。
予備の論理ファイルがない場合には,OpenTP1は異常終了します。OpenTP1が異常終了した場合の処置は,「5.3 障害対策の概要」を参照してください。ただし,ステータスファイルの片系運転をする指定があれば,片系運転となります。
障害の発生によって閉塞したステータスファイルは,stsrmコマンドで削除し,容量を変更して再作成できます。stsrmコマンドで削除できるのは,閉塞・無効状態のファイルです。現用・予備ファイルは削除できません。
ステータスファイル内のシステム制御情報は,スワップすることでステータスファイルの先頭から再編成されます。OpenTP1の開始・終了を繰り返すとステータスファイルにフラグメンテーションが発生することがあります。このため,OpenTP1は必要に応じて自動的にステータスファイルをスワップしてフラグメンテーションを解消します。
ステータスファイルのスワップを次の図に示します。ステータスファイルに障害が発生した場合の処理については,「5.3 障害対策の概要」を参照してください。