JP3039456B2 - Task management system, task management method, and storage medium storing task management program - Google Patents

Task management system, task management method, and storage medium storing task management program

Info

Publication number
JP3039456B2
JP3039456B2 JP9176312A JP17631297A JP3039456B2 JP 3039456 B2 JP3039456 B2 JP 3039456B2 JP 9176312 A JP9176312 A JP 9176312A JP 17631297 A JP17631297 A JP 17631297A JP 3039456 B2 JP3039456 B2 JP 3039456B2
Authority
JP
Japan
Prior art keywords
task
child
child task
batch process
processing
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.)
Expired - Fee Related
Application number
JP9176312A
Other languages
Japanese (ja)
Other versions
JPH117394A (en
Inventor
貢 染次
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9176312A priority Critical patent/JP3039456B2/en
Publication of JPH117394A publication Critical patent/JPH117394A/en
Application granted granted Critical
Publication of JP3039456B2 publication Critical patent/JP3039456B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、マルチタスク処理
を実現したコンピュータシステムにて用いるタスク管理
システム及びタスク管理方法ならびにタスク管理プログ
ラムを格納した記憶媒体に関し、特にバッチ処理におけ
るタスクの起動を制御することによりデッドロック・エ
ラーの発生を回避するタスク管理システム及びタスク管
理方法ならびにタスク管理プログラムを格納した記憶媒
体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a task management system, a task management method, and a storage medium storing a task management program used in a computer system realizing multitask processing, and more particularly, to control activation of a task in batch processing. The present invention relates to a task management system, a task management method, and a storage medium storing a task management program, which can avoid occurrence of a deadlock error.

【0002】[0002]

【従来の技術】マルチタスクを実現したコンピュータシ
ステムでは、複数の処理を同時に実行する複数の子タス
クを親タスクにより管理している。このようなコンピュ
ータシステムによるバッチ処理において、複数の子タス
クが共通のマスタファイルを参照したり、更新したりす
る場合、マスタファイルへのアクセスのタイミングによ
ってはデッドロック・エラーが発生する場合がある。
2. Description of the Related Art In a computer system that realizes multitasking, a plurality of child tasks that simultaneously execute a plurality of processes are managed by a parent task. In a batch process by such a computer system, when a plurality of child tasks refer to or update a common master file, a deadlock error may occur depending on the timing of accessing the master file.

【0003】通常、デッドロック・エラーによりバッチ
処理が異常終了した場合、オペレーティングシステムの
標準的な機能としてトランザクションの再実行を行うこ
とにより復旧できる。しかし、当該バッチ処理が大規模
なマスタファイルに対する大量の処理を実行する場合
は、トランザクション1件ごとに強制書き出しを行うこ
とは多大な処理時間を要するため、デッドロック発生時
にトランザクションの再実行を行うことは不可能であっ
た。
Normally, when a batch process ends abnormally due to a deadlock error, it can be recovered by re-executing a transaction as a standard function of the operating system. However, when the batch processing executes a large amount of processing for a large-scale master file, forcibly writing out each transaction requires a great deal of processing time, so that the transaction is re-executed when a deadlock occurs. That was impossible.

【0004】そこで、大規模なマスタファイルに対する
大量の処理を要求するバッチ処理がデッドロック・エラ
ーにより異常終了した場合は、当該バッチ処理を再起動
することにより復旧しなければならなかった。しかし、
単に当該バッチ処理を再起動しただけでは、前回の当該
バッチ処理の実行時と同じタイミングで同じ子タスクに
よるマスタファイルへのアクセスが行われるため、前回
の実行時にデッドロック・エラーが発生したのと同じ箇
所で繰返しデッドロック・エラーが発生するおそれがあ
った。
[0004] Therefore, when a batch process requesting a large amount of processing for a large-scale master file ends abnormally due to a deadlock error, the batch process has to be restored by restarting it. But,
Simply restarting the batch process will cause the same child task to access the master file at the same time as the previous execution of the batch process, causing a deadlock error during the previous execution. There was a possibility that a deadlock error would repeatedly occur in the same place.

【0005】[0005]

【発明が解決しようとする課題】上述したように、大規
模なマスタファイルに対する大量の処理を要求するバッ
チ処理がデッドロック・エラーにより異常終了した場
合、当該バッチ処理を再起動することにより復旧しなけ
ればならないが、従来は、デッドロック・エラーが発生
した際の当該バッチ処理の実行時と同じ手順で再起動し
ていたため、再度同様のデッドロック・エラーが発生す
る可能性が高いという欠点があった。
As described above, when a batch process requesting a large amount of processing for a large-scale master file ends abnormally due to a deadlock error, the batch process is restored by restarting the batch process. However, in the past, the restart was performed in the same procedure as when the batch process was executed when a deadlock error occurred, so the disadvantage that the same deadlock error is likely to occur again is high. there were.

【0006】本発明は、上記従来の欠点を解決し、デッ
ドロック・エラーにより異常終了したバッチ処理の再処
理において、同様のデッドロック・エラーの発生を回避
するタスク管理システム及びタスク管理方法ならびにタ
スク管理プログラムを格納した記憶媒体を提供すること
を目的とする。
SUMMARY OF THE INVENTION The present invention solves the above-mentioned conventional drawbacks, and a task management system, a task management method, and a task management method for avoiding the occurrence of the same deadlock error in the reprocessing of batch processing abnormally terminated due to a deadlock error It is an object to provide a storage medium storing a management program.

【0007】[0007]

【課題を解決するための手段】上記の目的を達成する本
発明のタスク管理システムは、バッチ処理を実行する子
タスクと該子タスクを管理する親タスクとを含むマルチ
タスク処理を実現したコンピュータシステムにて用いる
タスク管理システムにおいて、前記親タスクが、前記子
タスクによる処理の実行状態を監視し、処理を終了した
子タスクの終了状態に関する情報を取得する子タスク終
了状態取得手段と、バッチ処理を起動する際に、該バッ
チ処理を実行するために必要な子タスクに関して、前記
子タスク終了状態取得手段により取得された該子タスク
の終了状態に関する情報を参照し、該バッチ処理がデッ
ドロック・エラーにより異常終了していた場合に、該デ
ッドロック・エラーを発生した子タスクを他の子タスク
よりも早いタイミングで起動する子タスク起動手段とを
備えたことを特徴とする。
A task management system according to the present invention that achieves the above object realizes a multitask process including a child task for executing batch processing and a parent task for managing the child task. In the task management system used in the above, the parent task monitors the execution state of processing by the child task, and acquires child task end state acquisition means for acquiring information on the end state of the child task that has completed processing. At the time of activation, regarding the child task necessary for executing the batch processing, the information regarding the end state of the child task obtained by the child task end state obtaining means is referred to, and the batch processing is determined to be a deadlock error. The child task that caused the deadlock error earlier than the other child tasks Characterized in that a starting child task activation means grayed.

【0008】これにより、バッチ処理がデッドロック・
エラーにより異常終了した場合、当該バッチ処理を再起
動したならば、エラー発生時とは異なるタイミングで子
タスクによる処理が実行されるため、当該子タスクが同
様のタイミングで再度デッドロック・エラーを発生する
ことはない。また、前回のバッチ処理の終了が異常終了
であったことを条件に自動的に子タスクの起動タイミン
グをずらすため、オペレータは、当該バッチ処理におけ
る前回の終了状態を意識することなく当該バッチ処理を
起動させることができる。
As a result, the batch processing becomes deadlocked.
If the batch processing is restarted due to an error, if the batch processing is restarted, the processing by the child task will be executed at a different timing from the time when the error occurred, so the child task will generate a deadlock error again at the same timing I will not do it. Also, in order to automatically shift the start timing of the child task on condition that the end of the previous batch process is abnormal end, the operator does not need to be aware of the previous end state in the batch process, and Can be activated.

【0009】請求項2の本発明のタスク管理システム
は、前記子タスクの起動タイミングを制御するためのイ
ンターバル時間を設定した計時手段をさらに備え、前記
親タスクの前記子タスク起動手段が、前記デッドロック
・エラーを発生した子タスクを起動すると共に、前記計
時手段による計時を開始させ、かつ前記計時手段の計時
において予め設定された前記インターバル時間に達した
場合に、前記残りの子タスクを起動することを特徴とす
る。
According to a second aspect of the present invention, the task management system further includes a timer for setting an interval time for controlling the activation timing of the child task, wherein the child task activation means of the parent task is provided with the dead task. Activate the child task in which the lock error has occurred, start the timing by the timing means, and activate the remaining child tasks when the time interval set in advance by the timing of the timing means has been reached. It is characterized by the following.

【0010】また、上記の目的を達成する本発明のタス
ク管理方法は、バッチ処理を実行する子タスクと該子タ
スクを管理する親タスクとを含むマルチタスク処理を実
現したコンピュータシステムのタスク管理方法におい
て、前記親タスクによる処理が、実行するバッチ処理に
応じて必要な前記子タスクを起動するステップと、前記
子タスクによる処理の実行を管理するステップとを含
み、前記子タスク管理ステップが、前記子タスクによる
処理の実行状態を監視するステップと、処理を終了した
子タスクの終了状態に関する情報を取得するステップと
を含み、前記子タスク起動ステップが、バッチ処理を起
動する際に、該バッチ処理を実行するために必要な子タ
スクに関して、前記子タスク終了状態取得手段により取
得された該子タスクの終了状態に関する情報を参照する
ステップと、前記起動しようとするバッチ処理がデッド
ロック・エラーにより異常終了していた場合に、該デッ
ドロック・エラーを発生した子タスクを起動するステッ
プと、前記デッドロック・エラーを発生した子タスクを
起動した後に、所定のタイミングで他の子タスクを起動
するステップとを含むことを特徴とする。
[0010] The task of the present invention for achieving the above object is also provided.
The task management method includes a child task for executing batch processing and the child task.
Perform multi-task processing including parent tasks that manage
In the task management method of the computer system that appeared
Therefore, the processing by the parent task is
Activating the required child task in response to the
Managing the execution of processing by child tasks.
The child task management step is performed by the child task.
The step of monitoring the execution state of the process, and the process has been completed
Obtaining information about the exit status of the child task;
Wherein the child task activation step initiates batch processing.
Required to execute the batch process.
The task is retrieved by the child task end status acquisition means.
Refers to the obtained information on the end state of the child task
Step and the batch process to be started are dead
If an abnormal termination has occurred due to a lock error,
A step that starts the child task that generated the
And the child task that caused the deadlock error
After starting, start other child tasks at predetermined timing
And performing the steps of:

【0011】請求項4の本発明のタスク管理方法は、前
記子タスク起動ステップが、バッチ処理を起動する際
に、該バッチ処理を実行するために必要な子タスクに関
して、前記子タスク終了状態取得手段により取得された
該子タスクの終了状態に関する情報を参照するステップ
と、前記起動しようとするバッチ処理がデッドロック・
エラーにより異常終了していた場合に、該デッドロック
・エラーを発生した子タスクを起動すると共に、予め設
定されたインターバル時間の計時を開始するステップ
と、前記インターバル時間に達した時点で、他の子タス
クを起動するステップとを含むことを特徴とする。
According to a fourth aspect of the present invention, there is provided the task management method according to the first aspect.
When the notifier task start step starts batch processing
Related to the child tasks required to execute the batch processing.
And obtained by the child task end state obtaining means.
A step of referring to information on an end state of the child task
And the batch process to be started is deadlocked
The deadlock when abnormal termination due to an error
・ Start the child task that generated the error, and
Step to start timing the specified interval time
When the interval time is reached, another child task
Activating the network .

【0012】さらに、上記の目的を達成する本発明のタ
スク管理を行うタスク管理プログラムを格納した記憶媒
体は、バッチ処理を実行する子タスクと該子タスクを管
理する親タスクとを含むマルチタスク処理を実現したコ
ンピュータシステムを制御してタスク管理を行うタスク
管理プログラムを格納した記憶媒体において、前記タス
ク管理プログラムにより実現される前記親タスクによる
処理が、実行するバッチ処理に応じて必要な前記子タス
クを起動するステップと、前記子タスクによる処理の実
行を管理するステップとを含み、前記子タスク管理ステ
ップが、前記子タスクによる処理の実行状態を監視する
ステップと、処理を終了した子タスクの終了状態に関す
る情報を取得するステップとを含み、前記子タスク起動
ステップが、バッチ処理を起動する際に、該バッチ処理
を実行するために必要な子タスクに関して、前記子タス
ク終了状態取得手段により取得された該子タスクの終了
状態に関する情報を参照するステップと、前記起動しよ
うとするバッチ処理がデッドロック・エラーにより異常
終了していた場合に、該デッドロック・エラーを発生し
た子タスクを起動するステップと、前記デッドロック・
エラーを発生した子タスクを起動した後に、所定のタイ
ミングで他の子タスクを起動するステップとを含むこと
を特徴とする。
Further, according to the present invention, which achieves the above objects,
Storage medium that stores a task management program that performs disk management
The body manages the child tasks that perform batch processing and the child tasks.
That realize multitask processing including the parent task
Tasks that control computer systems and perform task management
In the storage medium storing the management program, the task
By the parent task realized by the
The child task that is required for the batch process to be executed
Launching the task and executing the process by the child task.
Managing the rows.
Monitors the execution status of the process by the child task
Regarding the step and the end status of the child task that has finished processing
Acquiring child information.
When the step invokes a batch process, the batch process
For the child tasks required to perform the
Of the child task acquired by the task termination status acquisition means
Referring to information on the status;
Batch processing to be attempted is abnormal due to deadlock error
If the deadlock error occurs,
Launching a child task that has
After launching the child task that generated the error,
Activating another child task in the event that the child task starts .

【0013】[0013]

【0014】[0014]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0015】図1は、本発明の一実施形態によるタスク
管理システムの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a task management system according to one embodiment of the present invention.

【0016】図1を参照すると、本実施形態のタスク管
理システムは、バッチ処理の実行状態を監視して子タス
クの終了状態に関する情報を取得する子タスク終了状態
取得手段10と、子タスク終了状態取得手段10により
取得された子タスクの終了状態に関する情報を格納する
管理ファイル20と、バッチ処理の起動時に管理ファイ
ル20を参照して必要に応じて子タスクの起動を制御す
る子タスク起動手段30と、子タスクの起動の制御に用
いるシステムタイマ40とを備える。以上の構成におい
て、子タスク終了状態取得手段10と子タスク起動手段
30とは、子タスクを管理する親タスクの機能として実
現される。なお、記憶媒体50は、タスク管理システム
の動作を制御するコンピュータプログラムを格納してい
る。
Referring to FIG. 1, the task management system according to the present embodiment includes a child task end state acquiring unit 10 for monitoring the execution state of a batch process and acquiring information on the child task end state, A management file 20 for storing information on the end state of the child task acquired by the acquisition means 10, and a child task activation means 30 for controlling the activation of the child task as necessary by referring to the management file 20 when the batch processing is activated And a system timer 40 used to control the activation of the child task. In the above configuration, the child task end state acquisition means 10 and the child task activation means 30 are realized as functions of a parent task that manages child tasks. The storage medium 50 stores a computer program for controlling the operation of the task management system.

【0017】図2に、バッチ処理を実行する際の、親タ
スクによる子タスクの管理動作の流れを示す。図示のよ
うに、親タスクの子タスク起動手段30は、バッチ処理
を起動する際、まず管理ファイル20を参照して、当該
バッチ処理に関する情報が格納されていないか確認する
(ステップ201)。ここで、バッチ処理に関する情報
とは、当該バッチ処理が子タスクにおけるデッドロック
・エラーその他の障害によって異常終了したかどうかを
示す情報、及び異常終了した場合には当該子タスク(障
害タスク)を特定する情報である。異常終了に関する情
報が何ら格納されていない場合は、通常通り必要な子タ
スクを起動する(ステップ202、203)。一方、当
該バッチ処理が前回の実行時にデッドロック・エラーの
発生により異常終了したことを示す情報が格納されてい
た場合は、まず障害タスクを起動し(ステップ202、
204)、続いて他の子タスクを起動する(ステップ2
05)。なお、この場合における詳細な起動手順につい
ては後述する。
FIG. 2 shows a flow of the operation of managing the child task by the parent task when executing the batch processing. As shown in the figure, when starting a batch process, the child task starting unit 30 of the parent task first refers to the management file 20 to check whether information regarding the batch process is stored (step 201). Here, the information on the batch processing is information indicating whether the batch processing has abnormally terminated due to a deadlock error or other failure in a child task, and specifies the child task (failed task) when the batch processing has abnormally terminated. Information. If no information about the abnormal termination is stored, the necessary child task is started as usual (steps 202 and 203). On the other hand, if information indicating that the batch process has been abnormally terminated due to the occurrence of a deadlock error at the time of the previous execution is stored, first, the failed task is activated (step 202,
204) Then, start another child task (step 2)
05). The detailed activation procedure in this case will be described later.

【0018】次に、親タスクは子タスクによる処理の実
行状態を監視し(ステップ206)、子タスクによる処
理の終了を待つ(ステップ207)。子タスクによる処
理が終了し、子タスクから親タスクへ終了状態に関する
情報が通知されると、親タスクの終了状態取得手段10
は受け取った情報を、当該子タスクを特定する情報と共
に管理ファイル20に格納する(ステップ207、20
8)。
Next, the parent task monitors the execution state of the processing by the child task (step 206), and waits for the termination of the processing by the child task (step 207). When the processing by the child task ends and the child task notifies the parent task of information about the end state, the parent task end state acquisition unit 10
Stores the received information in the management file 20 together with the information specifying the child task (steps 207 and 207).
8).

【0019】図3に、親タスクによる子タスクの動作の
管理を詳細に示す。図示のように、親タスクにて、バッ
チ処理の実行に必要な子タスクを起動すると(ステップ
301)、当該子タスクが親タスクの管理の下、業務処
理を開始する(ステップ311)。親タスクは子タスク
の実行状態を監視する(ステップ302)。子タスク
は、業務処理を終了すると(ステップ312)、終了状
態、すなわち正常終了したかまたは異常終了したかを親
タスクに通知する(ステップ313)。終了状態の通知
を受け取った親タスクの子タスク終了状態取得手段10
は(ステップ303)、取得した終了状態を管理ファイ
ル20に格納する(ステップ304)。ここで、当該子
タスクがデッドロック・エラーにより異常終了した場合
は、この後、再起動による復旧を行うため、当該バッチ
処理に関連する全ての子タスクを強制的に終了させる
(ステップ305)。
FIG. 3 shows the management of the operation of the child task by the parent task in detail. As shown in the figure, when a parent task activates a child task necessary for executing batch processing (step 301), the child task starts business processing under the management of the parent task (step 311). The parent task monitors the execution state of the child task (step 302). When the child task ends the business process (step 312), the child task notifies the parent task of the end state, that is, whether the process has been completed normally or abnormally (step 313). Child task end state acquisition means 10 of the parent task that has received the end state notification
(Step 303), the acquired end state is stored in the management file 20 (Step 304). Here, if the child task ends abnormally due to a deadlock error, all child tasks related to the batch processing are forcibly ended thereafter in order to perform recovery by restarting (step 305).

【0020】図5を参照して具体的に説明すると、タス
クT−1ないしタスクT−mのm個の子タスクが共通の
マスタファイルM−1、M−2にアクセスするバッチ処
理において、タスクT−n(n:1≦n≦m)がデッド
ロック・エラーを発生した場合、親タスクは、タスクT
−nがデッドロック・エラーにより異常終了したことを
示す情報を管理ファイル20に格納し、他のタスクT−
1〜T−(n−1)、T−(n+1)〜T−mを強制終
了させる。
More specifically, referring to FIG. 5, in batch processing in which m child tasks of tasks T-1 to T-m access common master files M-1 and M-2, When T−n (n: 1 ≦ n ≦ m) generates a deadlock error, the parent task
-N is stored in the management file 20 to indicate that it has terminated abnormally due to a deadlock error, and other tasks T-
1 to T- (n-1) and T- (n + 1) to T-m are forcibly terminated.

【0021】図4に、バッチ処理の起動時における親タ
スクの子タスク起動手段30による子タスク起動動作を
詳細に示す。この処理は、図2に示したステップ201
からステップ205の処理に対応する。図示のように、
子タスク起動手段30は、バッチ処理の起動の最初に管
理ファイル20を参照する(ステップ401)。管理フ
ァイル20に、当該バッチ処理の異常終了に関する情報
が格納されていなければ、必要な子タスクを通常通り起
動する(ステップ402、403)。
FIG. 4 shows in detail the child task starting operation by the child task starting means 30 of the parent task at the time of starting the batch processing. This processing is performed in step 201 shown in FIG.
To step 205. As shown,
The child task activation means 30 refers to the management file 20 at the beginning of the activation of the batch processing (Step 401). If the information regarding the abnormal end of the batch processing is not stored in the management file 20, the necessary child task is activated as usual (steps 402 and 403).

【0022】一方、管理ファイル20に、当該バッチ処
理が前回の実行においてデッドロック・エラーにより異
常終了したことを示す情報が格納されていたならば、今
回の起動は異常終了の後の再起動であることが認識され
るので、当該異常終了した子タスク(障害タスク)を特
定する情報を取得する(ステップ402、404)。そ
して、システムタイマ40を起動して(ステップ40
5)、障害タスクを起動する(ステップ406)。これ
により、障害タスクが他の子タスクに先だって業務処理
を開始する(ステップ411)。
On the other hand, if the management file 20 stores information indicating that the batch process was abnormally terminated due to a deadlock error in the previous execution, the current activation is a restart after the abnormal termination. Since it is recognized that there is a child task (abnormal task), information for identifying the abnormally ended child task (failed task) is obtained (steps 402 and 404). Then, the system timer 40 is started (step 40).
5), start the failed task (step 406). As a result, the failed task starts business processing prior to other child tasks (step 411).

【0023】システムタイマ40は、親タスクからの制
御により起動した後、予め設定されたインターバル時間
に達した時点で親タスクに通知する。
After the system timer 40 is started under the control of the parent task, it notifies the parent task when a preset interval time has been reached.

【0024】親タスクの子タスク起動手段30は、シス
テムタイマ40からインターバル時間に達したことを示
す通知を受け取ると(ステップ407)、残りの子タス
クを起動する(ステップ408)。これにより、前回の
当該バッチ処理の実行においてデッドロック・エラーを
発生しなかった子タスクは、障害タスクが業務処理を開
始してからインターバル時間の経過後に業務を開始する
こととなる(ステップ421)。
When the child task activation means 30 of the parent task receives a notification indicating that the interval time has been reached from the system timer 40 (step 407), it activates the remaining child tasks (step 408). As a result, the child task that did not generate a deadlock error in the previous execution of the batch processing starts the business after the elapse of the interval time since the failed task started the business processing (step 421). .

【0025】図5の例を参照すると、親タスクは、管理
ファイル20を参照して、タスクT−nがデッドロック
・エラーを発生したことを認識し、当該障害タスクT−
nを他のタスクに先だって起動させ、インターバル時間
経過後に残りのタスクT−1〜T−(n−1)、T−
(n+1)〜T−mを起動する。
Referring to the example of FIG. 5, the parent task refers to the management file 20 and recognizes that the task T-n has caused a deadlock error, and the failure task T-
n is activated prior to other tasks, and the remaining tasks T-1 to T- (n-1), T-
Activate (n + 1) to T-m.

【0026】以上のようにして、バッチ処理がデッドロ
ック・エラーにより異常終了した場合、当該バッチ処理
を再起動したならば、前回の実行においてデッドロック
・エラーの発生した子タスクを他の子タスクに先んじて
起動するため、当該子タスクが同様の処理において同様
のタイミングで再度デッドロック・エラーを発生するこ
とはない。また、上述したように、バッチ処理の起動時
に管理ファイル20を参照し、当該バッチ処理における
異常終了に関する情報が格納されていることを条件に、
自動的に子タスクの起動タイミングをずらすため、オペ
レータは、当該バッチ処理における前回の終了状態を意
識することなく当該バッチ処理を起動させることができ
る。
As described above, when the batch processing is abnormally terminated due to the deadlock error, and the batch processing is restarted, the child task in which the deadlock error occurred in the previous execution is replaced with another child task. In this case, the child task does not generate a deadlock error again at the same timing in the same processing. Further, as described above, the management file 20 is referred to when the batch processing is started, and on the condition that the information regarding the abnormal termination in the batch processing is stored.
Since the start timing of the child task is automatically shifted, the operator can start the batch process without being conscious of the previous end state of the batch process.

【0027】上述した本実施形態における親タスクの機
能を実現するコンピュータプログラムは、図1に示すよ
うに、磁気ディスクや半導体メモリその他の記憶媒体5
0に格納して提供される。そして、タスク管理システム
の内部メモリに当該コンピュータプログラムをロード
し、CPUを制御することにより、上述した親タスクの
機能を実現する。
As shown in FIG. 1, the computer program for realizing the function of the parent task in the present embodiment includes a magnetic disk, a semiconductor memory, and other storage media 5.
0 and provided. Then, the computer program is loaded into the internal memory of the task management system and the CPU is controlled, thereby realizing the function of the parent task described above.

【0028】[0028]

【実施例】次に、本実施形態のタスク管理システムにつ
いて、実施例を上げてさらに具体的に説明する。
Next, the task management system according to this embodiment will be described in more detail with reference to examples.

【0029】図3に示す本実施例のタスク管理システム
は、親タスクの下でタスクTS01〜TS08の8個の
子タスクが管理され、バッチ処理において8個のマスタ
ファイルA〜Hを使用する。また、以下の説明における
バッチ処理では、タスクTS01〜TS08がマスタフ
ァイルA〜Hに対してランダムにアクセスし、データの
参照や更新を行う。なお、マスタファイルA〜Hは大規
模なマスタファイルであり、かつトランザクション毎の
強制書き出しは行わない。さらに、バッチ処理におい
て、タスクTS02とタスクTS03とがマスタファイ
ルCとマスタファイルDの同一レコードを交互に更新し
合う処理が存在するものとする。
In the task management system of this embodiment shown in FIG. 3, eight child tasks of tasks TS01 to TS08 are managed under a parent task, and eight master files A to H are used in batch processing. Further, in the batch processing described below, the tasks TS01 to TS08 randomly access the master files A to H to refer to and update data. Note that the master files A to H are large-scale master files and do not perform forced writing for each transaction. Further, in the batch processing, it is assumed that there is a processing in which the task TS02 and the task TS03 alternately update the same record of the master file C and the master file D.

【0030】まず、タスクTS02とタスクTS03に
よる業務処理及び親タスクによる管理について、図7を
参照して説明する。上述したように、タスクTS02と
タスクTS03とが共通の資源を更新し合う。すなわ
ち、図7に示すように、タスクTS02がマスタファイ
ルCに格納されたレコードXを取得してロックし、タス
クTS03がマスタファイルDに格納されたレコードY
を取得してロックする。次に、タスクTS02がレコー
ドYを取得しようとするが、タスクTS03によってロ
ックされているため、ロックの解除待ちの状態となる。
そして、タスクTS03がレコードXを取得しようとす
ると、タスクTS02とタスクTS03との間で相互に
要求するレコードをロックし合うこととなり、デッドロ
ックが発生する。そこで、タスクTS03が終了し、親
タスクの子タスク終了状態取得手段10は、タスクTS
03がデッドロックにより以上終了したことを示す情報
を管理ファイル20に書き込む。また、親タスクは、タ
スクTS02を含む他の子タスクを強制終了する。
First, business processing by the task TS02 and the task TS03 and management by the parent task will be described with reference to FIG. As described above, the task TS02 and the task TS03 update common resources. That is, as shown in FIG. 7, task TS02 acquires and locks record X stored in master file C, and task TS03 records record X stored in master file D.
Get and lock. Next, the task TS02 tries to acquire the record Y, but is locked by the task TS03, so that it is in a state of waiting for unlocking.
When the task TS03 tries to acquire the record X, the task TS02 and the task TS03 lock mutually requested records, and a deadlock occurs. Then, the task TS03 ends, and the child task end state acquisition means 10 of the parent task returns the task TS03.
03 is written to the management file 20 to indicate that it has been terminated by deadlock. Further, the parent task forcibly ends other child tasks including the task TS02.

【0031】次に、当該バッチ処理を再起動する際の動
作について、図8を参照して説明する。親タスクの子タ
スク起動手段30は、まず事前作業としてマスタファイ
ルA〜Hを復元した後、管理ファイル20を参照する。
管理ファイル20には、タスクTS03がデッドロック
により以上終了したことを示す情報が格納されているた
め、子タスク起動手段30は、システムタイマ40を起
動してタスクTS03を起動する。これにより、タスク
TS03は、マスタファイルCからレコードXを取得
し、さらにマスタファイルDからレコードYを取得して
業務処理を実行する。次に、子タスク起動手段30は、
システムタイマ40からインターバル時間が経過したこ
とを知らせる通知を受け取ると、タスクTS02を含む
残りの子タスクを起動させる。これにより、タスクTS
02はマスタファイルCからレコードXを取得するが、
起動タイミングがタスクTS03の起動タイミングとず
れているため、デッドロックは発生しない。
Next, the operation of restarting the batch processing will be described with reference to FIG. The child task activation means 30 of the parent task first restores the master files A to H as a preliminary operation, and then refers to the management file 20.
Since the management file 20 stores information indicating that the task TS03 has been completed due to the deadlock, the child task activation unit 30 activates the system timer 40 to activate the task TS03. As a result, the task TS03 acquires the record X from the master file C, acquires the record Y from the master file D, and executes the business process. Next, the child task activation means 30
Upon receiving a notification from the system timer 40 that the interval time has elapsed, the remaining child tasks including the task TS02 are started. Thereby, the task TS
02 acquires record X from master file C,
Since the activation timing is different from the activation timing of the task TS03, no deadlock occurs.

【0032】以上好ましい実施例をあげて本発明を説明
したが、本発明は必ずしも上記実施例に限定されるもの
ではない。なお、上記のようにして子タスクの起動タイ
ミングをずらしたとしても、新たに他の子タスクの処理
においてデッドロック・エラーが発生する可能性はある
が、少なくとも一度デッドロック・エラーが発生した後
は、同じタイミングでの同じ処理におけるデッドロック
・エラーは回避できるため、デッドロック障害の完全な
除去に近づけることが可能である。
Although the present invention has been described with reference to the preferred embodiments, the present invention is not necessarily limited to the above embodiments. Even if the start timing of the child task is shifted as described above, a deadlock error may occur in the processing of another child task, but after the deadlock error has occurred at least once. Can avoid deadlock errors in the same processing at the same timing, so that it is possible to approach deadlock failure completely.

【0033】[0033]

【発明の効果】以上説明したように、本発明によるタス
ク管理システム及びタスク管理方法ならびにタスク管理
プログラムを格納した記憶媒体は、マルチタスクを実現
したコンピュータシステムにおいてバッチ処理がデッド
ロック・エラーの発生により異常終了し、当該バッチ処
理を再起動することにより復旧を図る場合に、当該デッ
ドロック・エラーの発生したタスクを他のタスクよりも
早いタイミングで起動させる。したがって、デッドロッ
ク・エラーが発生した場合とは異なるタイミングで処理
が実行されるため、デッドロック・エラーの再発を防止
できるという効果がある。
As described above, the task management system, the task management method, and the storage medium storing the task management program according to the present invention provide a multitasking computer system in which batch processing is performed due to the occurrence of a deadlock error. In a case where recovery is attempted by restarting the batch processing after abnormal termination, the task in which the deadlock error has occurred is started earlier than other tasks. Therefore, since the process is executed at a timing different from the case where the deadlock error has occurred, the recurrence of the deadlock error can be prevented.

【0034】また、上記のようにデッドロック発生時に
トランザクションの再実行を行うのではなく、当該バッ
チ処理の再起動により復旧を図るため、当該バッチ処理
が当該コンピュータシステムにおける大規模なマスタフ
ァイルに対する大量の処理を伴う場合であっても、問題
なく復旧できるという効果がある。
In addition, since the transaction is restored by restarting the batch process instead of re-executing the transaction when a deadlock occurs as described above, the batch process requires a large amount of data for a large master file in the computer system. Thus, there is an effect that the recovery can be performed without any problem even when the above process is involved.

【0035】さらに、当該バッチ処理の異常終了の際、
終了状態を管理ファイルに書き込んでから終了するた
め、当該バッチ処理の再起動時に前回の終了状態を認識
し、適切にバッチ処理を起動することができる。これに
より、業務処理の実行状態を引き継ぐことができるた
め、オペレータは前回の終了状態を意識することなく、
再度当該バッチ処理を起動することができるという効果
がある。
Further, upon abnormal termination of the batch processing,
Since the end state is written in the management file before the end, the batch state can be recognized and the batch processing can be appropriately started when the batch processing is restarted. As a result, since the execution state of the business process can be taken over, the operator does not need to be aware of the previous end state,
There is an effect that the batch processing can be started again.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の一実施形態によるタスク管理システ
ムの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a task management system according to an embodiment of the present invention.

【図2】 本実施形態における親タスクによる子タスク
の管理動作の流れを示すフローチャートである。
FIG. 2 is a flowchart showing a flow of a management operation of a child task by a parent task in the present embodiment.

【図3】 本実施形態における親タスクによる子タスク
の動作の管理を詳細に示すフローチャートである。
FIG. 3 is a flowchart showing in detail the management of the operation of the child task by the parent task in the embodiment.

【図4】 本実施形態における親タスクによる子タスク
起動動作を詳細に示すフローチャートである。
FIG. 4 is a flowchart showing in detail a child task activation operation by a parent task in the embodiment.

【図5】 本実施形態によるタスク管理システムの具体
的な動作例を示す説明図である。
FIG. 5 is an explanatory diagram showing a specific operation example of the task management system according to the embodiment;

【図6】 本発明の具体的な実施例によるタスク管理シ
ステムの構成を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of a task management system according to a specific embodiment of the present invention.

【図7】 本実施例によるタスク管理システムにおける
デッドロック・エラーが発生した場合の動作を示す説明
図である。
FIG. 7 is an explanatory diagram showing an operation when a deadlock error occurs in the task management system according to the embodiment.

【図8】 本実施例によるタスク管理システムにおける
子タスク起動動作を示す説明図である。
FIG. 8 is an explanatory diagram illustrating a child task activation operation in the task management system according to the present embodiment.

【符号の説明】[Explanation of symbols]

10 子タスク終了状態取得手段 20 管理ファイル 30 子タスク起動手段 40 システムタイマ Reference Signs List 10 child task end status acquisition means 20 management file 30 child task activation means 40 system timer

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 9/46 G06F 11/14 G06F 12/00 G06F 15/16 G06F 11/00 ──────────────────────────────────────────────────続 き Continued on the front page (58) Fields surveyed (Int.Cl. 7 , DB name) G06F 9/46 G06F 11/14 G06F 12/00 G06F 15/16 G06F 11/00

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 バッチ処理を実行する子タスクと該子タ
スクを管理する親タスクとを含むマルチタスク処理を実
現したコンピュータシステムにて用いるタスク管理シス
テムにおいて、 前記親タスクが、 前記子タスクによる処理の実行状態を監視し、処理を終
了した子タスクの終了状態に関する情報を取得する子タ
スク終了状態取得手段と、 バッチ処理を起動する際に、該バッチ処理を実行するた
めに必要な子タスクに関して、前記子タスク終了状態取
得手段により取得された該子タスクの終了状態に関する
情報を参照し、該バッチ処理がデッドロック・エラーに
より異常終了していた場合に、該デッドロック・エラー
を発生した子タスクを他の子タスクよりも早いタイミン
グで起動する子タスク起動手段とを備えたことを特徴と
するタスク管理システム。
1. A task management system used in a computer system that realizes multitask processing including a child task that executes a batch process and a parent task that manages the child task, wherein the parent task is processed by the child task. Child task end status acquisition means for monitoring the execution status of the child task and acquiring information on the end status of the child task that has completed the processing, and regarding the child task necessary to execute the batch process when starting the batch process And referring to the information on the end state of the child task obtained by the child task end state obtaining means, and when the batch processing has abnormally ended due to the deadlock error, the child which has generated the deadlock error A task launching means for launching a task at a timing earlier than other child tasks. Management system.
【請求項2】 前記子タスクの起動タイミングを制御す
るためのインターバル時間を設定した計時手段をさらに
備え、 前記親タスクの前記子タスク起動手段が、 前記デッドロック・エラーを発生した子タスクを起動す
ると共に、前記計時手段による計時を開始させ、 かつ前記計時手段の計時において予め設定された前記イ
ンターバル時間に達した場合に、前記残りの子タスクを
起動することを特徴とする請求項1に記載のタスク管理
システム。
2. The child task activation means of the parent task further activates the child task in which the deadlock error has occurred, further comprising a timer for setting an interval time for controlling the activation timing of the child task. 2. The timer according to claim 1, further comprising: starting timing by the timing means; and activating the remaining child tasks when the interval time set in advance by the timing of the timing means has been reached. Task management system.
【請求項3】 バッチ処理を実行する子タスクと該子タ
スクを管理する親タスクとを含むマルチタスク処理を実
現したコンピュータシステムのタスク管理方法におい
て、 前記親タスクによる処理が、実行するバッチ処理に応じ
て必要な前記子タスクを起動するステップと、前記子タ
スクによる処理の実行を管理するステップとを含み、 前記子タスク管理ステップが、 前記子タスクによる処理の実行状態を監視するステップ
と、 処理を終了した子タスクの該終了状態に関する情報を取
得するステップとを含み、 前記子タスク起動ステップが、 バッチ処理を起動する際に、該バッチ処理を実行するた
めに必要な子タスクに関して、前記子タスク終了状態取
得手段により取得された該子タスクの終了状態に関する
情報を参照するステップと、 前記起動しようとするバッチ処理がデッドロック・エラ
ーの発生により異常終了していた場合に、該デッドロッ
ク・エラーを発生した子タスクを起動するステップと、 前記デッドロック・エラーを発生した子タスクを起動し
た後に、所定のタイミングで他の子タスクを起動するス
テップとを含むことを特徴とするタスク管理方法。
3. A task management method for a computer system that realizes a multitask process including a child task for executing a batch process and a parent task for managing the child task, wherein the process by the parent task is performed in the batch process to be executed. Activating the necessary child task, and managing the execution of the process by the child task, wherein the child task management step monitors an execution state of the process by the child task; Acquiring the information on the end state of the child task that has completed the processing. The child task activation step includes the steps of: starting a batch process, for the child task necessary to execute the batch process; Referring to information on the end state of the child task obtained by the task end state obtaining means; If the batch process to be started is abnormally terminated due to the occurrence of a deadlock error, a step of starting the child task that has generated the deadlock error; and starting the child task that has generated the deadlock error. Activating another child task at a predetermined timing after the execution.
【請求項4】 前記子タスク起動ステップが、 バッチ処理を起動する際に、該バッチ処理を実行するた
めに必要な子タスクに関して、前記子タスク終了状態取
得手段により取得された該子タスクの終了状態に関する
情報を参照するステップと、 前記起動しようとするバッチ処理がデッドロック・エラ
ーにより異常終了していた場合に、該デッドロック・エ
ラーを発生した子タスクを起動すると共に、予め設定さ
れたインターバル時間の計時を開始するステップと、 前記インターバル時間に達した時点で、他の子タスクを
起動するステップとを含むことを特徴とする請求項3に
記載のタスク管理方法。
4. The child task activating step, when a batch process is activated, terminates the child task acquired by the child task termination status acquiring means with respect to a child task required to execute the batch process. Referencing information about a state; and, when the batch process to be started has been abnormally terminated due to a deadlock error, activating a child task in which the deadlock error has occurred, and a preset interval. 4. The method according to claim 3 , further comprising: starting time counting; and activating another child task when the interval time is reached.
The described task management method.
【請求項5】 バッチ処理を実行する子タスクと該子タ
スクを管理する親タスクとを含むマルチタスク処理を実
現したコンピュータシステムを制御してタスク管理を行
うタスク管理プログラムを格納した記憶媒体において、 前記タスク管理プログラムにより実現される前記親タス
クによる処理が、実行するバッチ処理に応じて必要な前
記子タスクを起動するステップと、前記子タスクによる
処理の実行を管理するステップとを含み、 前記子タスク管理ステップが、 前記子タスクによる処理の実行状態を監視するステップ
と、 処理を終了した子タスクの該終了状態に関する情報を取
得するステップとを含み、 前記子タスク起動ステップが、 バッチ処理を起動する際に、該バッチ処理を実行するた
めに必要な子タスクに関して、前記子タスク終了状態取
得手段により取得された該子タスクの終了状態に関する
情報を参照するステップと、 前記起動しようとするバッチ処理がデッドロック・エラ
ーの発生により異常終了していた場合に、該デッドロッ
ク・エラーを発生した子タスクを起動するステップと、 前記デッドロック・エラーを発生した子タスクを起動し
た後に、所定のタイミングで他の子タスクを起動するス
テップとを含むことを特徴とするタスク管理プログラム
を格納した記憶媒体。
5. A storage medium storing a task management program for performing a task management by controlling a computer system implementing a multitask process including a child task for executing a batch process and a parent task for managing the child task, The processing by the parent task realized by the task management program includes a step of activating the necessary child task in accordance with a batch process to be executed, and a step of managing execution of the processing by the child task. The task management step includes a step of monitoring an execution state of processing by the child task, and a step of acquiring information on the end state of the child task that has completed processing, and the child task activation step activates batch processing. In doing so, regarding the child tasks necessary to execute the batch processing, the child tasks are terminated. Referring to information about the end state of the child task obtained by the end state obtaining means; and, if the batch process to be started has abnormally ended due to occurrence of a deadlock error, the deadlock error Activating a child task that has caused the deadlock error, and activating another child task at a predetermined timing after activating the child task that has generated the deadlock error. The storage medium in which it was stored.
【請求項6】 前記記憶媒体に格納された前記タスク管
理プログラムにおける子タスク起動ステップが、 バッチ処理を起動する際に、該バッチ処理を実行するた
めに必要な子タスクに関して、前記子タスク終了状態取
得手段により取得された該子タスクの終了状態に関する
情報を参照するステップと、 前記起動しようとするバッチ処理がデッドロック・エラ
ーにより異常終了していた場合に、該デッドロック・エ
ラーを発生した子タスクを起動すると共に、予め設定さ
れたインターバル時間の計時を開始するステップと、 前記インターバル時間に達した時点で、他の子タスクを
起動するステップとを含むことを特徴とする請求項5に
記載のタスク管理プログラムを格納した記憶媒体。
6. A child task activating state in the task management program stored in the storage medium, wherein, when a batch process is activated, a child task necessary for executing the batch process is set in the child task end state. A step of referring to information on an end state of the child task obtained by the obtaining unit; and a step of generating the deadlock error when the batch process to be started is abnormally ended due to a deadlock error. The method according to claim 5, further comprising: starting a task and starting timing of a preset interval time; and starting another child task when the interval time is reached.
A storage medium storing the described task management program.
JP9176312A 1997-06-16 1997-06-16 Task management system, task management method, and storage medium storing task management program Expired - Fee Related JP3039456B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9176312A JP3039456B2 (en) 1997-06-16 1997-06-16 Task management system, task management method, and storage medium storing task management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9176312A JP3039456B2 (en) 1997-06-16 1997-06-16 Task management system, task management method, and storage medium storing task management program

Publications (2)

Publication Number Publication Date
JPH117394A JPH117394A (en) 1999-01-12
JP3039456B2 true JP3039456B2 (en) 2000-05-08

Family

ID=16011390

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9176312A Expired - Fee Related JP3039456B2 (en) 1997-06-16 1997-06-16 Task management system, task management method, and storage medium storing task management program

Country Status (1)

Country Link
JP (1) JP3039456B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798031A (en) * 2017-02-17 2018-03-13 平安科技(深圳)有限公司 Policy information querying method and device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012020942A2 (en) 2010-08-09 2012-02-16 주식회사 엘지화학 Cathode current collector coated with a primer and magnesium secondary battery including same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798031A (en) * 2017-02-17 2018-03-13 平安科技(深圳)有限公司 Policy information querying method and device
CN107798031B (en) * 2017-02-17 2020-07-24 平安科技(深圳)有限公司 Policy information query method and device

Also Published As

Publication number Publication date
JPH117394A (en) 1999-01-12

Similar Documents

Publication Publication Date Title
US6694345B1 (en) External job scheduling within a distributed processing system having a local job control system
US9223823B2 (en) Transaction log management
JP2643070B2 (en) Method and system for simultaneous access during backup / copy of data
US8001091B2 (en) Apparatus, system, and method for hierarchical rollback of business operations
US5734896A (en) Recovery of a remotely initiated distributed prepared transaction by status report from a second database to an external coordinator
JP2009520253A (en) Method, computer program product, and system for transaction commitment in a distributed system
JP2003532190A (en) Method and apparatus for providing a volume snapshot dependency in a computer system
JP4726909B2 (en) Method, system and computer program for managing redundant storage of data in a storage hierarchy
US6754842B2 (en) Facilitating a restart operation within a data processing system
CN111858077A (en) Recording method, device and equipment for IO request log in storage system
JP2000194678A (en) Asynchronous i/o highly available in cluster computer system
JP3039456B2 (en) Task management system, task management method, and storage medium storing task management program
CN113590379A (en) Redis data persistence method and system
CN115292092B (en) Data rollback method, device, equipment and storage medium thereof
EP4333469A1 (en) User data disaster tolerance method and apparatus, network element device, and storage medium
US7065539B2 (en) Data transfer method
JPH1040123A (en) System and method for job management
CN114253474B (en) Method, system, equipment and readable storage medium for carrying out tape dump based on transfer machine
JP3494788B2 (en) Program execution management system and program execution management method
JP2710668B2 (en) Computer system
JP3277888B2 (en) Lock wait release device and machine-readable recording medium recording program
JP2933011B2 (en) Exclusive file control system
CN118244945A (en) Method, apparatus, device and medium for editing media items
CN117687806A (en) Deadlock processing method, electronic device and storage medium
JPH0827749B2 (en) Transaction control

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees