3.4.7 起動条件付きジョブネットの実行世代が異常終了したときの実行抑止
起動条件付きジョブネットの実行世代が異常終了した場合,それ以降の起動条件の成立による実行世代の実行を抑止できます。これによって,実行世代が異常終了した場合に,異常の原因を解決してから運用を再開できます。
実行抑止の機能には,次の2種類があります。
-
実行保留
実行世代の実行を保留します。
-
監視停止
起動条件の監視を停止します。
- 補足事項
-
起動条件付きジョブネットをJP1/AJS3 - Viewで監視する場合には,複数世代が表示される[デイリースケジュール(階層表示)]ウィンドウを使用してください。
(1) 実行保留
実行保留を設定すると,実行中の実行世代が異常終了したあとに起動条件が成立すると,「起動条件待ち」状態の実行世代は「保留中」状態または「起動条件待ち」状態のままになります。異常終了したあとに起動条件が成立した世代を運用再開時に実行させる場合に有効です。
実行世代が多重起動できるかどうか,多重起動できない場合は実行世代が異常終了したときにその世代の実行終了を待っていた起動条件成立済みの世代(前回世代の終了待ち世代)があったかどうかによって動作が異なります。
(a) 実行世代が多重起動できない場合
実行世代が多重起動できない場合,前回世代の終了待ち世代があるかないかによって,実行保留したときの動作が異なります。
■ 前回世代の終了待ち世代がないとき
実行世代が異常終了した場合に,その世代の実行終了を待っていた起動条件成立済みの世代(前回世代の終了待ち世代)がないときについて説明します。この場合の実行保留の動作について,次の図に示します。
|
実行世代1が異常終了した場合,そのあとに最初に起動条件(2)が成立して実行開始される実行世代2は,「起動条件待ち」状態から「保留中」状態に遷移します。それ以降の実行世代3は,起動条件(3)が成立しても前回世代(実行世代2)が終了していないため,「起動条件待ち」状態のままになります。
■ 前回世代の終了待ち世代があるとき
実行世代が異常終了した場合に,その世代の実行終了を待っていた起動条件成立済みの世代(前回世代の終了待ち世代)があるときについて説明します。この場合の実行保留の動作について,次の図に示します。
|
実行世代1が異常終了する前に起動条件(2),(3)がすでに成立している場合,異常終了世代の次に実行開始する実行世代2は,実行世代1が異常終了したあとに「起動条件待ち」状態から「保留中」状態に遷移します。それ以降の実行世代3は,すでに起動条件が成立していますが,前回世代(実行世代2)が終了していないため「起動条件待ち」状態のままになります。さらに起動条件(4)が成立しても,同様に次の実行世代4は「起動条件待ち」状態のままになります。
■ 注意事項
実行世代が多重起動できない場合,次の図のように異常終了世代を再実行中(1),その終了後で保留解除前(2),保留解除後の実行中(3)に起動条件が成立すると,「起動条件待ち」状態の世代である実行世代5,6,7が新たに生成されます。
|
このように,ジョブネットが異常終了したことによって「起動条件待ち」状態の世代が多数生成されます。「起動条件待ち」状態の世代が7,680世代を超過した場合,メッセージ「KAVS0274-E 登録可能なジョブネット数が限界値を超えました(Jobnet:ジョブネット名, code:コード)」が出力され,監視世代が「監視中」状態から「監視打ち切り終了」状態に遷移して起動条件の監視を終了します。そのため,早期に異常終了した世代を回復させて業務を再開する必要があります。
■ 運用回復方法
運用回復手順を次に示します。
-
異常の原因を解決後,異常終了しているジョブネットを再実行させるか,ジョブ状態変更で「正常終了」状態または「警告検出終了」状態にする。
-
異常終了していた次の実行世代の保留を解除する。
保留解除して実行した実行世代が終了すると,以降の「起動条件待ち」状態の実行世代が順次実行されます。
図3‒62 多重起動できないジョブネットを実行保留した場合の運用回復方法
(b) 実行世代が多重起動できる場合
実行世代が多重起動できる場合の実行保留の動作を,次の図に示します。
|
実行世代1が異常終了した場合,異常終了世代と多重実行している実行世代2は,そのまま実行を継続します。異常終了後に起動条件(3),(4)が成立して実行開始される実行世代3,4は「起動条件待ち」状態から「保留中」状態に遷移します。
このように,異常終了したあとのジョブネットが保留中になるため,任意のタイミングで保留を解除して運用を再開できます。
起動条件成立によって「起動条件待ち」状態から「保留中」状態に遷移しなくなるのは,異常終了世代がなくなった,次の図の起動条件(6),(7)成立時です。起動条件(5)の成立時点では,実行世代2が「異常終了」状態であるため,実行世代5は「起動条件待ち」状態から「保留中」状態に遷移します。
|
- 異常終了世代が削除された場合
-
次の図のように,保存世代数の設定によって異常終了世代が削除されたあとに起動条件(4)が成立した場合も,実行世代4は「起動条件待ち」状態から「保留中」状態に遷移します。
図3‒65 異常終了世代が削除された場合の実行保留の動作 - スケジューラーサービスが再起動された場合
-
スケジューラーサービスを再起動すると(クラスタ系切り替えも含む),その時点で存在する終了世代を検索し,異常終了世代があれば,起動条件成立時に「起動条件待ち」状態の実行世代が「保留中」状態に遷移します。異常終了世代がなければ,起動条件成立時に「起動条件待ち」状態の実行世代は「実行中」状態に遷移します。
スケジューラーサービスが再起動された場合の実行保留の動作を次の図に示します。
図3‒66 スケジューラーサービスが再起動された場合の実行保留の動作 スケジューラーサービス再起動時に実行世代1が異常終了している場合は,起動条件(3)成立時に,実行世代3が「起動条件待ち」状態から「保留中」状態に遷移します。
スケジューラーサービス再起動時に実行世代1が保存世代数の設定によって消滅している場合は,起動条件(3)成立時に,実行世代3が「起動条件待ち」状態から「実行中」状態に遷移します。
■ 運用回復方法
運用回復手順を次に示します。
-
異常の原因を解決後,異常終了しているすべての実行世代を再実行させるか,ジョブ状態変更で「正常終了」状態または「警告検出終了」状態にする。
-
異常終了したジョブが状態遷移したあと,「保留中」状態になっているすべての実行世代の保留を解除する。
図3‒67 多重起動できるジョブネットを実行保留した場合の運用回復方法
(2) 監視停止
実行中の実行世代が異常終了すると,監視中の世代が「監視打ち切り終了」状態になります。異常終了したあとに監視を継続したくない場合に有効です。
実行世代が多重起動できるかどうか,多重起動できない場合は実行世代が異常終了したときにその世代の実行終了を待っていた起動条件成立済みの世代(前回世代の終了待ち世代)があったかどうかによって動作が異なります。
(a) 実行世代が多重起動できない場合
実行世代が多重起動できない場合,前回世代の終了待ち世代があるかないかによって,監視停止したときの動作が異なります。
■ 前回世代の終了待ち世代がないとき
実行世代が異常終了した場合に,起動条件成立済みの世代(前回世代の終了待ち世代)がないときについて説明します。この場合の監視停止の動作について,次の図に示します。
|
実行世代1が異常終了すると,監視世代が「監視中」状態から「監視打ち切り終了」状態に遷移します。「起動条件待ち」状態の実行世代2は世代が消滅します。
■ 前回世代の終了待ち世代があるとき
実行世代が異常終了した場合に,その世代の実行終了を待っていた起動条件成立済みの世代(前回世代の終了待ち世代)があるときについて説明します。この場合の監視停止の動作について次の図に示します。
|
実行世代1が異常終了すると,監視世代が「監視中」状態から「監視打ち切り終了」状態に遷移します。異常終了する前に起動条件(2),(3)がすでに成立している場合,異常終了世代の次に実行開始される実行世代2は,「起動条件待ち」状態から「保留中」状態に遷移します。それ以降の実行世代3は,すでに起動条件が成立していますが多重起動できないジョブネットであり,前回世代(実行世代2)が終了していないため,「起動条件待ち」状態のままになります。起動条件成立待ちしている実行世代4は世代が消滅します。
■ 運用回復方法
運用回復手順を次に示します。
- 前回世代の終了待ち世代がない場合
-
-
異常の原因を解決後,異常終了しているすべての実行世代を再実行させるか,ジョブ状態変更で「正常終了」状態または「警告検出終了」状態にして回復する。
図3‒70 多重起動できないジョブネットを監視停止した場合の運用回復方法(前回世代の終了待ち世代がない場合)
-
- 前回世代の終了待ち世代がある場合
-
-
異常の原因を解決後,異常終了している実行世代を再実行させるか,ジョブ状態変更で「正常終了」状態または「警告検出終了」状態にする。
-
異常終了していた次の世代を保留解除する。
保留解除して実行した実行世代が終了すると,以降の「起動条件待ち」状態の実行世代が順次実行されます。
図3‒71 多重起動できないジョブネットを監視停止した場合の運用回復方法(前回世代の終了待ち世代がある場合)
-
(b) 実行世代が多重起動できる場合
実行世代が多重起動できる場合の監視停止の動作について,次の図に示します。
|
実行世代1が異常終了すると,監視世代が「監視中」状態から「監視打ち切り終了」状態に遷移します。異常終了した世代と多重実行している実行世代2は,そのまま実行を継続します。起動条件成立待ちしている実行世代3は世代が消滅します。
■ 運用回復方法
運用回復手順を次に示します。
-
異常の原因を解決後,異常終了しているすべての実行世代を再実行させるか,ジョブ状態変更で「正常終了」状態または「警告検出終了」状態にして回復する。
図3‒73 多重起動できるジョブネットを監視停止した場合の運用回復方法
(3) 補足事項
-
この機能は,ルートジョブネットだけが対象です。ルートジョブネットの状態のうち,異常終了として扱われる状態※を次に示します。
-
異常検出終了
-
順序不正
-
中断
-
強制終了
- 注※
-
実行世代の結果が「繰り越し未実行」状態の場合は,次回の実行世代の実行を保留しますが,監視世代は「監視打ち切り終了」状態には遷移しないで監視を継続します。
-
-
実行世代が異常終了したことによって実行抑止するのは,監視世代が同一の世代だけです。ほかの監視世代および実行世代の終了状態には影響されません。
-
最後の実行世代が異常終了した場合に次の監視世代の実行を抑止する場合は,ルートジョブネットの保留定義で「前回異常時だけ保留」,または「前回異常警告時だけ保留」を指定してください。
-
起動条件付きジョブネットをJP1/AJS3 - Viewで監視する場合には,複数世代が表示される[デイリースケジュール(階層表示)]ウィンドウを使用してください。