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