JPH05165539A - バッチプログラムの自動再起動制御方式 - Google Patents

バッチプログラムの自動再起動制御方式

Info

Publication number
JPH05165539A
JPH05165539A JP3334714A JP33471491A JPH05165539A JP H05165539 A JPH05165539 A JP H05165539A JP 3334714 A JP3334714 A JP 3334714A JP 33471491 A JP33471491 A JP 33471491A JP H05165539 A JPH05165539 A JP H05165539A
Authority
JP
Japan
Prior art keywords
program
batch
processing
restart
history information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3334714A
Other languages
English (en)
Inventor
Yuji Hirose
裕士 廣瀬
Ichiro Yokoyama
一郎 横山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3334714A priority Critical patent/JPH05165539A/ja
Publication of JPH05165539A publication Critical patent/JPH05165539A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Retry When Errors Occur (AREA)

Abstract

(57)【要約】 【目的】バッチプログラムの実行管理で省力化を行なう
ため、バッチプログラムの実行状況を履歴情報として取
得しプログラムの実行が中断したとき同期点まで中断し
た処理を回復し再起動可能かの判断の後、プログラムの
再起動を再起動されたプログラムに履歴情報から再開始
点を指示して、人手を介さずにバッチプログラムの処理
を続行させる。 【構成】バッチプログラムの自動再起動を可能とするた
めバッチプログラムのプログラムA11からアダプタ1
2を介して制御プログラム13との連絡処理を行う。制
御プログラム13は、プログラムA11の実行結果を処
理対象データセット14と履歴データセット15に記録
し、この情報をもとにプログラムの自動再起動を行な
う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータシステム
における障害発生時のプログラムの自動立ち上げ技術に
関し、特にバッチプログラムの中断に対して自動的にプ
ログラムの再起動を行なう自動再起動の制御方式に関す
るものである。
【0002】
【従来の技術】コンピュータシステムを用いた情報処理
分野では処理量が年々増加している。このため、バッチ
プログラムの実行が深夜になるなどの要因でプログラム
の中断時の対処などの実行管理の省力化が要求されてい
る。また、オンラインシステムが緊急停止したときなど
再開始が必要となるが迅速に復旧するためには中断した
バッチプログラムの再起動に人手を介さないで済むよう
にすることが必要となる。 従来、この様なプログラム
の自動再起動に関する技術として、オンラインメッセー
ジプログラムのように端末とやりとりをするようなプロ
グラムで未完了メッセージを回復し自動復旧をするよう
なものはあった。(特開昭63−155333号公報
システムダウンの自動復旧方式)しかし、バッチプログ
ラムのようにシステムが処理の区切りを認識できないと
きは、実行が中断して回復処理を行った後に再起動する
ことはできても再開始点を与えることはできなかった。
このため、完了している処理を人手を介して取り除くか
処理済みであっても再度処理して問題ないものに限って
再起動を行なっていた。
【0003】
【発明が解決しようとする課題】上記従来の技術では、
完了している処理を取り除くか処理済みであっても再度
処理して問題ないものに限って再起動を行うといった作
業に人手を介する必要があり、中断したプログラムを自
動的に再起動できないという問題があった。
【0004】本発明では、オンラインシステムにおいて
未完了メッセージの自動復旧ができるように、バッチプ
ログラムの処理においても、障害が発生して中断したプ
ログラムの再起動に人手を介さずに、自動再起動を行な
うことを目的とする。
【0005】
【課題を解決するための手段】本発明では、バッチプロ
グラムについての実行中の処理内容を履歴情報として記
録する。この時にバッチプログラムの処理の同期点から
同期点までのまとまりの開始と終了を制御プログラムに
通知し、制御プログラムはこの通知を履歴情報における
処理の区切りとして記録してシステムがバッチプログラ
ムの処理の区切りを認識できるようにする。
【0006】プログラムが中断したとき、制御プログラ
ムは、バッチプログラムの実行状態を、中断した処理の
開始点までの状態にもどす。次に、履歴情報からプログ
ラムの中断理由を調べ再起動可能かの判断を行ない、再
起動可能と判断した時は、プログラムの再起動を行な
う。バッチプログラムの処理実行は、履歴情報から処理
再開始点を判断し、すでに完了した処理をスキップして
未完了となっている処理からプログラムを続行する。
【0007】このようにして、人手を介することなくバ
ッチプログラムの自動再起動制御を行う。
【0008】障害の種別や同一プログラムが何度も中断
した時など再起動が不可能と判断したときはその旨を履
歴情報に取得した後、当該プログラムの再起動を中止す
る。
【0009】
【作用】プログラムの実行中の処理内容を履歴情報とし
て取得することによりプログラムが中断したとき同期点
まで中断した処理の回復が行え、その中断理由から再起
動可能かの判断を行なえる。この時にバッチプログラム
の処理の同期点から同期点までのまとまりの開始と終了
を履歴情報として取得しているのでシステムがプログラ
ムの実行状況を把握できる。実行状況を把握しているの
で、再起動されたプログラムの処理再開始点を求めら
れ、すでに完了した処理をスキップし未完了となってい
た処理からプログラムを続行できる。
【0010】さらに、障害の種別や同一プログラムが何
度も中断した時など再起動が不可能と判断したときはそ
の旨を履歴情報に取得した後、当該プログラムの再起動
を中止するのでプログラムの再起動が不当に繰り返され
ることはない。
【0011】
【実施例】以下、本発明の一実施例を図面を用いて詳細
に説明する。本発明の一実施例のシステム構成と、処理
の流れを図1に示す。図1において、プログラムA11
は本発明が適用されるバッチプログラムである。14は
プログラムA11の実行結果を格納する処理対象データ
セットであり、15はプログラムA11の処理の履歴を
格納する履歴データセットである。13はプログラムA
の実行処理の履歴や結果を処理対象データセット14や
履歴データセット15に記録する等システムの制御を行
なう制御プログラムである。12はプログラムA11と
制御プログラム13との連絡処理を行なうアダプタであ
る。その他、図示していないが、プログラムAの処理コ
マンドや他のコマンド等を入力する入力装置や、プログ
ラムAの実行結果等を可視出力するまたは印刷する出力
装置により本発明のシステムは構成される。
【0012】次に、処理の流れを図1を用いて説明す
る。プログラムA11の起動要求がアダプタ12を介し
て制御プログラム13に対して行なわれると制御プログ
ラム13はプログラムA11を起動し、プログラムA1
1を通常起動したことを履歴データセット15に記録す
る。プログラムA11が起動されるとまず、制御プログ
ラム13に処理開始点の取得要求を行なう。制御プログ
ラム13は、履歴データセット15を検索する。履歴デ
ータセット15には、プログラムAの通常起動がセット
されているので、先頭からの開始をプログラムA11に
指示する。プログラムA11は、処理開始点により処理
の振り分けを行なう。この場合は、先頭から処理を行な
う。プログラムA11は、先頭の処理である処理1の開
始を制御プログラム13に通知する。制御プログラム1
3は処理1が開始したことを履歴データセット15に取
得する。プログラムAの処理1で処理対象データセット
14の内容をA→A’に変更する。制御プログラム13
は、処理対象データセット14の内容をA→A’に変更
したことを履歴データセット15に取得する。プログラ
ムA11で処理1が終了したことを制御プログラム13
に通知すると、制御プログラム13は、処理1の終了履
歴を履歴データセット15に取得する。
【0013】同様にして処理2を実行する。ここで、障
害が発生したら、プログラムA11は、障害の発生を制
御プログラム13に通知する。制御プログラム13は障
害発生通知を受けると、履歴データセット15にプログ
ラムA異常終了をセットする。また、履歴データセット
15を検索し未完了となった処理2の内容を処理2の開
始点まで回復する。次に、プログラムA11の異常終了
履歴を取得し、障害種別を判断して再起動可能か判断す
る。たとえば、メモリ不足や資源排他でのデッドロック
などは外部条件の変化により異常が回避される可能性が
あるので再起動可能と判断する。データベース操作コマ
ンドの文法エラーなどプログラム修正が必要な場合は再
起動不可能と判断する。また、再起動可能なときでも再
起動の回数が任意に設定された一定数値の上限に達して
いるときは、再起動を中止する。
【0014】再起動可能と判断したときは、プログラム
A11を再起動する。プログラムA11は、起動を受け
ると前回と同様に制御プログラム13に処理開始点の取
得要求を行なう。制御プログラム13は、履歴データセ
ット15を検索し処理2で中断していることから処理2
からの開始をプログラムA11に指示する。プログラム
A11は、処理開始点により処理の振り分けを行なう。
今度は、処理2からなので処理1をスキップし処理2か
ら再開始を行なう。すべての処理が終了したら制御プロ
グラム13にプログラムA11の終了を通知する。制御
プログラム13がプログラムA11の正常終了履歴を取
得するとプログラムA11の処理が完結する。
【0015】以上の処理を実現するために必要な履歴デ
ータセット15内の異常終了時の履歴情報を図2に示
す。履歴データセット15中のプログラム履歴情報を履
歴情報テーブル21の形で示すと次のようになる。履歴
情報テーブル21は、プログラム識別情報22、処理完
了通番23、起動回数24及び、終了要因コード25と
からなる。
【0016】プログラムA11から制御プログラム13
への処理開始/終了通知などの同期点通知で、プログラ
ム識別情報22、処理完了通番23、終了要因コード2
5の情報を制御プログラム13が取得し履歴情報テーブ
ル21を更新する。
【0017】プログラム識別情報22は、プログラム名
称等のプログラムを識別するための情報である。処理完
了通番23は、前記プログラムの処理がどこまで完了し
ているかを示す通番であり、0000は、完了済みの処
理がないことを示し、nnnnは、第nnnn番目まで
の処理が完了したことを示す。再開始点の通知は、nn
nnに1を加えた処理から再開始するように指示され
る。起動回数24は、プログラムが何回起動されたかを
示す情報であり、起動回数が決められた上限値に達した
ときは、再起動を行なわないように制御される。終了要
因コード25は、プログラム終了の要因を示す情報であ
り、本実施例では、次のように区分する。0000は、
プログラムの正常終了を示す。0001から4999は
再現性のない障害による異常終了を示す。メモリ不足や
デッドロックなど再起動により処理が続行できる可能性
があることを示す。5000から9998はデータベー
ス操作コマンドの文法エラーなど再起動による続行が不
可能であることを示す。9999は再現性のない障害だ
が起動回数の上限に達したのでプログラムの再起動を打
ち切ったことを示す。
【0018】例えば、PROG0001が起動され、3
番目の処理完了後に終了要因コード0001で異常終了
すると、履歴情報テーブル21の一段目に示す履歴情報
を記憶する。再起動の判断は、本例では終了要因コード
0001なので再起動可であり再起動を行なう。バッチ
プログラム再起動後に制御プログラム13に処理開始点
を要求すると、制御プログラム13は履歴データセット
15中の履歴情報を参照し、処理管理通番の3番目に1
を加えた4番目から処理を開始するように指示する。
【0019】再開始後に異常終了したときは起動回数に
1を加えて情報を記録し再び再起動を行なう。この例を
履歴情報テーブル21の2段目に示す。
【0020】プログラムが正常終了したときは、履歴情
報テーブル21の3段目に示すように終了要因コード0
000として情報を記憶する。
【0021】履歴情報デーブル21の4段目に示す例
は、PROG0002が、処理が1つで最初の起動で正
常終了したことを示す。
【0022】5段目に示す例は、PROG0003が再
起動不可の要因で終了したことを示す。制御プログラム
は、再起動時、終了要因コードが5000なので再起動
不可と判断し再起動を行なわないようにする。
【0023】6段目に示す例は、PROG0004が、
1番目の処理終了後に終了要因コード0003の要因で
異常終了した例を示し、次に示す例は、PROG000
4が、3番目の処理まで終了後再起動可能な要因で異常
終了し、10回目の再起動を行なったが異常終了をした
ことを示す。再起動回数の上限を10回と設定してある
ときは再現性のない障害であっても処理を打ち切る。本
例では、終了要因コードを9999とし起動回数による
打ち切りが生じたことがあとから判るようになってい
る。
【0024】本例では、PROG0003とPROG0
004は、自動再起動により処理が続行できなかったの
で障害要因を取り除いたあとで再起動の要求を手動で行
なう必要があるがPROG0001については本発明に
より人手を介さずにバッチプログラムの自動再起動が可
能となる。
【0025】
【発明の効果】本発明によれば、バッチプログラムの実
行が深夜になったり、オンラインシステムが緊急停止し
たときの再開始などに中断したバッチプログラムの再起
動を人手を介さずに行なうことが可能になり、バッチプ
ログラムの実行管理の省力化が行なえる。
【図面の簡単な説明】
図1は、本発明の一実施例のバッチプログラムの自動再
起動のシステム構成と処理の流れを示したものである。
図2は、本発明の履歴データセット中に保持するプログ
ラム履歴情報の内容と情報の利用の方法をを示したもの
である。
【符号の説明】
11…バッチプログラムA11 12…アダプタ 13…制御プログラム 14…処理対象データセット 15…履歴データセット 21…履歴情報テーブル

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】複数の独立した処理を一括して行なうバッ
    チ処理システムにおいて、バッチプログラムの実行状況
    を履歴情報として取得し、プログラムの実行中断時、前
    記履歴情報に基づき、中断時に実行中の処理を該処理の
    開始時点まで回復し、再起動可能なときバッチプログラ
    ムの再起動を行ない、再起動されたバッチプログラムは
    既に終了した処理をスキップして未実行の処理から実行
    することを特徴とするバッチプログラムの自動再起動制
    御方式。
  2. 【請求項2】複数の独立した処理を一括して行なうため
    のバッチプログラムと、処理結果を格納するメモリと、
    それらの制御を行なう制御手段とからなるバッチ処理シ
    ステムにおいて、バッチ処理の各処理の開始と終了を制
    御手段に伝える手段と、前記処理の開始と終了を含むバ
    ッチ処理の内容を履歴情報として格納する手段を備え、
    前記バッチプログラムは、起動時にバッチ処理の開始位
    置の検索要求を制御手段に出し、該制御手段に指示され
    た位置からバッチ処理を開始し、該制御手段は検索要求
    に応答して前記履歴情報を検索して未完了の処理の開始
    位置を検出して前記バッチプログラムに指示することを
    特徴とするバッチプログラムの自動再起動制御方式。
  3. 【請求項3】請求項2記載のバッチプログラムの自動再
    起動制御方式において、前記バッチプログラムは、バッ
    チ処理の中断時に中断理由を制御手段に渡し、該制御手
    段は、中断理由が再起動可能なときだけバッチプログラ
    ムの再起動指示を出すことを特徴とするバッチプログラ
    ムの自動再起動制御方式。
JP3334714A 1991-12-18 1991-12-18 バッチプログラムの自動再起動制御方式 Pending JPH05165539A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3334714A JPH05165539A (ja) 1991-12-18 1991-12-18 バッチプログラムの自動再起動制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3334714A JPH05165539A (ja) 1991-12-18 1991-12-18 バッチプログラムの自動再起動制御方式

Publications (1)

Publication Number Publication Date
JPH05165539A true JPH05165539A (ja) 1993-07-02

Family

ID=18280398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3334714A Pending JPH05165539A (ja) 1991-12-18 1991-12-18 バッチプログラムの自動再起動制御方式

Country Status (1)

Country Link
JP (1) JPH05165539A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114426A (ja) * 1993-10-19 1995-05-02 Nec Corp プログラム再起動自動化方式
JPH07160352A (ja) * 1993-12-09 1995-06-23 Nec Corp プログラム実行方式
JPH07271611A (ja) * 1994-03-31 1995-10-20 Fujitsu Ltd プロセス自動再起動処理方式
JPH0997188A (ja) * 1995-09-29 1997-04-08 Mitsubishi Electric Corp ジョブのスケジュール方式
JPH09282193A (ja) * 1996-04-15 1997-10-31 Omron Corp データ処理方法
JP2001255955A (ja) * 2000-03-14 2001-09-21 Seiko Epson Corp 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラムを記録した記録媒体
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2006285576A (ja) * 2005-03-31 2006-10-19 Nec Corp 分散処理システム及び分散処理方法
US7546604B2 (en) 2003-11-26 2009-06-09 International Business Machines Corporation Program reactivation using triggering

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114426A (ja) * 1993-10-19 1995-05-02 Nec Corp プログラム再起動自動化方式
JPH07160352A (ja) * 1993-12-09 1995-06-23 Nec Corp プログラム実行方式
JPH07271611A (ja) * 1994-03-31 1995-10-20 Fujitsu Ltd プロセス自動再起動処理方式
JPH0997188A (ja) * 1995-09-29 1997-04-08 Mitsubishi Electric Corp ジョブのスケジュール方式
JPH09282193A (ja) * 1996-04-15 1997-10-31 Omron Corp データ処理方法
JP2001255955A (ja) * 2000-03-14 2001-09-21 Seiko Epson Corp 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラムを記録した記録媒体
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
US7546604B2 (en) 2003-11-26 2009-06-09 International Business Machines Corporation Program reactivation using triggering
JP2006285576A (ja) * 2005-03-31 2006-10-19 Nec Corp 分散処理システム及び分散処理方法

Similar Documents

Publication Publication Date Title
EP0319034B1 (en) Method of recovering failure of online control program
JPH05165539A (ja) バッチプログラムの自動再起動制御方式
CN111446015B (zh) 核电站反应堆控制棒组试验方法、装置、设备及介质
JPH1153202A (ja) 並列トランザクション処理システム
US7428660B2 (en) Starting control method, duplex platform system, and information processor
JP2809271B2 (ja) ジョブ再実行方式
JP2000330778A (ja) 修正ロードモジュール置換後の復旧方法ならびに装置
US9891615B2 (en) Numerical controller with function of automatically reconstructing settings and function of preventing incorrect settings
CN110597609A (zh) 一种集群迁移与自动恢复方法及系统
JP2006323494A (ja) 障害復旧方法およびマイクロコンピュータ
CN117827546B (zh) 一种Linux系统下控制服务器重启监管系统及方法
JP3965678B2 (ja) 情報処理装置
JP2853527B2 (ja) ファイル障害自動復旧システム
EP0738969B1 (en) System starter unit and method
CN112181609B (zh) 服务守护方法、装置及可读存储介质
JP2000315190A (ja) ジョブのリカバリ方式
JPH05100935A (ja) データベース管理方式
CN117827546A (zh) 一种Linux系统下控制服务器重启监管系统及方法
JPH07168641A (ja) ジョブ自動運転システム
JPH05191496A (ja) 故障診断方式
JPH052499A (ja) 情報処理装置のジヨブ障害再処理方式
JP2003289381A (ja) ファイル更新方法、ファイル更新システム、及び、ファイル更新プログラム
JPS6125250A (ja) 情報処理装置の障害回復方法
CN113204562A (zh) 流式程序的运行检测方法及装置
JPH07271611A (ja) プロセス自動再起動処理方式