JP2817773B2 - トランザクションを跨がったプログラムループの検出方式 - Google Patents
トランザクションを跨がったプログラムループの検出方式Info
- Publication number
- JP2817773B2 JP2817773B2 JP7041375A JP4137595A JP2817773B2 JP 2817773 B2 JP2817773 B2 JP 2817773B2 JP 7041375 A JP7041375 A JP 7041375A JP 4137595 A JP4137595 A JP 4137595A JP 2817773 B2 JP2817773 B2 JP 2817773B2
- Authority
- JP
- Japan
- Prior art keywords
- level value
- transaction
- derived
- value storage
- message
- 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
Links
Description
ョン処理システムに関し、特に端末,コンピュータシス
テム等のメッセージ発信装置から発信されたトランザク
ション起動メッセージによって起動されたトランザクシ
ョンを起点として、同一のトランザクションが次々と派
生して起動されることによって一連の処理を完結するオ
ンライントランザクション処理システムにおけるトラン
ザクションを跨がったプログラムループの検出方式に関
する。
ョン処理システムでは、起動された各トランザクション
単位にプログラムループを検出する方策が講じられてき
たが、アプリケーションプログラムの誤動作によって同
一のトランザクションが次々と派生していくといったト
ランザクションを跨がったプログラムループが生じた場
合には、これを検出する手段はなく、システムを停止さ
せる等の処置をとらなければならなかった。
イントランザクション処理システムでは、アプリケーシ
ョンプログラムの誤動作によって同一のトランザクショ
ンが次々と派生していくといったトランザクションを跨
がったプログラムループが発生した場合には、トランザ
クションを停止する契機を見つけることができなかった
ので、オンライントランザクション処理システムの各資
源は高負荷状態が続き、そのためにオンライントランザ
クション処理システムの処理能力が低下するといった事
態を招くことがあるという問題点があった。
トランザクションが起点のトランザクションから数えて
何段階(レベル)目に派生したものかを示す派生レベル
値を使用して、アプリケーションプログラムの誤動作に
よるトランザクションを跨がったプログラムループを検
出できるようにしたトランザクションを跨がったプログ
ラムループの検出方式を提供することにある。
ンを跨がったプログラムループの検出方式は、メッセー
ジ発信装置から発信されたトランザクション起動メッセ
ージによって起動されたトランザクションを起点とし
て、同一のトランザクションが次々と派生して起動され
ることによって一連の処理を完結するオンライントラン
ザクション処理システムにおいて、派生レベル値が格納
されるレベル値格納部を備えるトランザクション起動メ
ッセージと、このトランザクション起動メッセージを受
信して前記レベル値格納部から派生レベル値を取り出し
てレベル値記憶領域に保存する受信処理手段と、同一の
トランザクションを派生して起動する必要が生じたとき
に起動され、前記レベル値記憶域の派生レベル値が上限
値以上のときにはエラー処理を行うプログラムループ抑
止手段と、このプログラムループ抑止手段により前記レ
ベル値記憶域の派生レベル値が上限値未満であると判断
されたときに起動され、前記レベル値記憶域から取り出
した派生レベル値を更新してトランザクション起動メッ
セージ中のレベル値格納部にセットして該トランザクシ
ョン起動メッセージを送信する送信処理手段とを有す
る。
ムループの検出方式では、トランザクション起動メッセ
ージが派生レベル値が格納されるレベル値格納部を備
え、受信処理手段がトランザクション起動メッセージを
受信してレベル値格納部から派生レベル値を取り出して
レベル値記憶領域に保存し、同一のトランザクションを
派生して起動する必要が生じたときに起動されたプログ
ラムループ抑止手段がレベル値記憶域の派生レベル値が
上限値以上のときにはエラー処理を行い、プログラムル
ープ抑止手段によりレベル値記憶域の派生レベル値が上
限値未満であると判断されたときに起動された送信処理
手段がレベル値記憶域から取り出した派生レベル値を更
新してトランザクション起動メッセージ中のレベル値格
納部にセットして該トランザクション起動メッセージを
送信する。
説明する。
クションを跨がったプログラムループの検出方式の構成
を示すブロック図である。本実施例のトランザクション
を跨がったプログラムループの検出方式は、トランザク
ション起動メッセージ20(図2参照)の発信源となる
端末,コンピュータシステム等からなるメッセージ発信
装置11と、メッセージ発信装置11からのトランザク
ション起動メッセージ20によって起動されるトランザ
クション12とから、その主要部が構成されている。な
お、トランザクション12は、ホストコンピュータ(図
示せず)上で動作する。
3と、レベル値記憶領域14と、プログラムループ抑止
手段15と、送信処理手段16とを含んで構成されてい
る。
メッセージ20には、トランザクション処理に必要なデ
ータを格納するフィールドの他に、レベル値格納部21
が設けられている。
理手順は、トランザクション起動メッセージ受信ステッ
プ31と、派生レベル値取出しステップ32と、派生レ
ベル値保存ステップ33とからなる。
手段15の処理手順は、派生レベル値取出しステップ4
1と、派生レベル値/上限値比較ステップ42と、送信
処理手段起動ステップ43と、エラー処理ステップ44
とからなる。
理手順は、派生レベル値取出しステップ51と、派生レ
ベル値加算およびセットステップ52と、トランザクシ
ョン起動メッセージ送信ステップ53とからなる。
ランザクションを跨がったプログラムループの検出方式
の動作について説明する。
クション12)からトランザクション12を起動するた
めにトランザクション起動メッセージ20が送信される
と、トランザクション起動メッセージ20により起動さ
れたトランザクション12では、受信処理手段13がト
ランザクション起動メッセージ20の受信処理を行う。
ジ発信装置11(またはトランザクション12)からの
トランザクション起動メッセージ20を受信し(ステッ
プ31)、トランザクション起動メッセージ20中のレ
ベル値格納部21から派生レベル値Xを取り出し(ステ
ップ32)、この派生レベル値Xをレベル値記憶領域1
4に保存する(ステップ33)。
(図示せず)が行われ、新たに同一のトランザクション
12を派生して起動する必要が生じると、プログラムル
ープ抑止手段15がまず起動される。
は、トランザクション12が新たに同一のトランザクシ
ョン12を起動させることができるかどうかを判定す
る。
は、レベル値記憶領域14から派生レベル値Xを取り出
し(ステップ41)、取り出した派生レベル値Xが派生
レベル値の上限値Xmax以上であるかどうかを判定す
る(ステップ42)。派生レベル値Xが上限値Xmax
未満であれば、プログラムループ抑止手段15は、送信
処理手段16を起動する(ステップ43)。一方、派生
レベル値Xが上限値Xmax以上であれば、プログラム
ループ抑止手段15は、エラー処理を行って(ステップ
44)、処理を終了させる。この結果、新たな同一のト
ランザクション12は起動されない。
クション起動メッセージ20を送信する。
記憶領域14に保存されている派生レベル値Xを取り出
し(ステップ51)、取り出した派生レベル値Xに1を
加算してトランザクション起動メッセージ20中のレベ
ル値格納部21にセットし(ステップ52)、トランザ
クション起動メッセージ20を送信する(ステップ5
3)。この結果、新たに同一のトランザクション12が
起動される。
ランザクション起動メッセージ20−1により起動され
たトランザクション12Aを起点とし、起動されるトラ
ンザクション12の派生レベル値Xの上限値Xmaxを
2回までとした場合の動作について例示している。以
下、この図6に基づいて具体的な動作について説明す
る。
ョン起動メッセージ20−1中のレベル値格納部21に
派生レベル値“0”がセットされて送信されると、トラ
ンザクション起動メッセージ20−1により起動された
トランザクション12Aでは、受信処理手段13Aが、
トランザクション処理メッセージ20−1を受信して、
トランザクション処理メッセージ20−1中のレベル値
格納部21から派生レベル値“0”を取り出して、その
派生レベル値“0”をレベル値記憶領域14Aに保存す
る。
一のトランザクション12Bを起動させる必要が生じる
と、プログラムループ抑止手段15Aが起動される。
ル値記憶領域14Aの派生レベル値“0”と上限値
“2”とを比較し、派生レベル値“0”が上限値“2”
に達していないので、送信処理手段16Aを起動する。
14Aから取り出した派生レベル値“0”に“1”を加
算した派生レベル値“1”をトランザクション起動メッ
セージ20−2中のレベル値格納部21にセットして、
トランザクション起動メッセージ20−2を送信する。
により起動されたトランザクション12Bでは、受信処
理手段13Bが、トランザクション起動メッセージ20
−2を受信し、トランザクション起動メッセージ20−
2中のレベル値格納部21から派生レベル値“1”を取
り出して、その派生レベル値“1”をレベル値記憶領域
14Bに保存する。
たに同一のトランザクション12Cを起動させる必要が
生じると、同じくプログラムループ抑止手段15Aが起
動される。
ル値記憶領域14Aの派生レベル値“0”と上限値
“2”とを比較し、派生レベル値“0”が上限値“2”
に達していないので、送信処理手段16Aを起動する。
14Aから取り出した派生レベル値“0”に“1”を加
算した派生レベル値“1”をトランザクション起動メッ
セージ20−3中のレベル値格納部21にセットして、
トランザクション起動メッセージ20−3を送信する。
により起動されたトランザクション12Cでは、受信処
理手段13Cが、トランザクション起動メッセージ20
−3を受信し、トランザクション起動メッセージ20−
3中のレベル値格納部21から派生レベル値“1”を取
り出して、その派生レベル値“1”をレベル値記憶領域
14Cに保存する。
Aから派生して起動されたトランザクション12Bおよ
び12Cの派生レベル値はすべて“1”となり、これら
のトランザクション12Bおよび12Cがトランザクシ
ョン12Aから1段階(レベル)目に派生したことがわ
かる。
一のトランザクション12Dを起動させる必要が生じる
と、プログラムループ抑止手段15Bが起動される。
ル値記憶領域14Bの派生レベル値“1”と上限値
“2”とを比較して、派生レベル値“1”が上限値
“2”に達していないので、送信処理手段16Bを起動
する。
14Bから取り出した派生レベル値“1”に“1”を加
算した派生レベル値“2”をトランザクション起動メッ
セージ20−4中のレベル値格納部21にセットして、
トランザクション起動メッセージ20−4を送信する。
により起動されたトランザクション12Dでは、受信処
理手段13Dが、トランザクション起動メッセージ20
−4を受信し、トランザクション起動メッセージ20−
4中のレベル値格納部21から派生レベル値“2”を取
り出して、その派生レベル値“2”をレベル値記憶領域
14Dに保存する。これにより、トランザクション12
Dが、起点のトランザクション12Aから2段階(レベ
ル)目に派生したことがわかる。
同一のトランザクション12を起動させる必要が生じた
ときには、プログラムループ抑止手段15Dは、レベル
値記憶領域14Dの派生レベル値“2”と上限値“2”
とを比較し、両者が等しいので、これ以上トランザクシ
ョン起動メッセージ20を送信することができないと判
断し、送信処理手段16を起動しないで、エラー処理を
行う。
えてトランザクション12が起動されることはなくな
り、アプリケーションプログラムの誤動作によるトラン
ザクションを跨がったプログラムループが未然に解消さ
れる。
置11から発信されたトランザクション起動メッセージ
20中のレベル値格納部21に派生レベル値の初期値
“0”が設定され、送信処理手段16により派生レベル
値が1ずつ加算されるようにしたが、派生レベル値の初
期値をある正の整数とし、送信処理手段16により派生
レベル値が1ずつ減算されるようにするなどの種々の変
形が可能であることはいうまでもない。
クション起動メッセージ中にレベル値格納部を設け、レ
ベル値格納部にセットされた派生レベル値に基づいてト
ランザクション中のプログラムループ抑止手段によって
送信処理手段の起動の可否を判断することにより、アプ
リケーションプログラムの誤動作によるトランザクショ
ンを跨がったプログラムループを自動的に検出して解消
させることができ、オンライントランザクション処理シ
ステムの各資源の無駄使いを最小限度に食い止めること
ができるので、オンライントランザクション処理システ
ムの処理能力が低下するといったシステム全体への影響
を抑制することが可能になる効果がある。
がったプログラムループの検出方式の構成を示すブロッ
ク図である。
ラムループの検出方式におけるトランザクション起動メ
ッセージのフォーマットを示す図である。
である。
を示す流れ図である。
である。
ラムループの検出方式の動作例を示す図である。
セージ 21 レベル値格納部
Claims (2)
- 【請求項1】 メッセージ発信装置から発信されたトラ
ンザクション起動メッセージによって起動されたトラン
ザクションを起点として、同一のトランザクションが次
々と派生して起動されることによって一連の処理を完結
するオンライントランザクション処理システムにおい
て、 派生レベル値が格納されるレベル値格納部を備えるトラ
ンザクション起動メッセージと、 このトランザクション起動メッセージを受信して前記レ
ベル値格納部から派生レベル値を取り出してレベル値記
憶領域に保存する受信処理手段と、 同一のトランザクションを派生して起動する必要が生じ
たときに起動され、前記レベル値記憶域の派生レベル値
が上限値以上のときにはエラー処理を行うプログラムル
ープ抑止手段と、 このプログラムループ抑止手段により前記レベル値記憶
域の派生レベル値が上限値未満であると判断されたとき
に起動され、前記レベル値記憶域から取り出した派生レ
ベル値を更新してトランザクション起動メッセージ中の
レベル値格納部にセットして該トランザクション起動メ
ッセージを送信する送信処理手段とを有することを特徴
とするトランザクションを跨がったプログラムループの
検出方式。 - 【請求項2】 前記メッセージ発信装置から発信された
トランザクション起動メッセージ中のレベル値格納部に
派生レベル値の初期値が設定され、前記送信処理手段に
より派生レベル値が1ずつ加算される請求項1記載のト
ランザクションを跨がったプログラムループの検出方
式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7041375A JP2817773B2 (ja) | 1995-02-06 | 1995-02-06 | トランザクションを跨がったプログラムループの検出方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7041375A JP2817773B2 (ja) | 1995-02-06 | 1995-02-06 | トランザクションを跨がったプログラムループの検出方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08212163A JPH08212163A (ja) | 1996-08-20 |
JP2817773B2 true JP2817773B2 (ja) | 1998-10-30 |
Family
ID=12606674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7041375A Expired - Fee Related JP2817773B2 (ja) | 1995-02-06 | 1995-02-06 | トランザクションを跨がったプログラムループの検出方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2817773B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3732113B2 (ja) * | 2001-05-14 | 2006-01-05 | 株式会社八十二銀行 | トランザクション制御システム、方法及びプログラム |
-
1995
- 1995-02-06 JP JP7041375A patent/JP2817773B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08212163A (ja) | 1996-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100442884B1 (ko) | 펌웨어 업데이트 방법 | |
US20040135701A1 (en) | Apparatus operating system | |
CN110928952A (zh) | 基于区块链的数据同步方法及装置 | |
JP2817773B2 (ja) | トランザクションを跨がったプログラムループの検出方式 | |
JP3013868B2 (ja) | コードレス電話におけるメモリ揮発防止システム | |
JP2006053737A (ja) | レプリケーションシステム及びレプリケーション方法 | |
JP2973724B2 (ja) | 割り込み制御方式 | |
JP2004032405A (ja) | テレメータデータ送信装置およびテレメータデータ送信方法 | |
JPH0267671A (ja) | オンライン処理の実行再開方式 | |
JPH06132988A (ja) | データ送信装置 | |
JP2570096B2 (ja) | システム時刻一致方法及びシステム時刻一致装置 | |
JPH06168193A (ja) | トランザクションデータ再送方式 | |
JP2541502B2 (ja) | 制御電文送受信方法 | |
JPH1032604A (ja) | パケット順序情報を付与した通信方法 | |
JPS58225738A (ja) | 分散形伝送システム | |
CN103684876B (zh) | 告警信息同步的方法及其装置 | |
KR20190056569A (ko) | 차량 통신의 부하 분산 장치 및 방법 | |
JP3105025B2 (ja) | 二重化制御装置 | |
JPH06311076A (ja) | メモリ内データ変更方法 | |
JPH0895831A (ja) | システム異常からの復帰方法 | |
JPH0764908A (ja) | 西暦・和暦変換方式 | |
JPH10312360A (ja) | 受信処理方法および受信装置 | |
JPH07226762A (ja) | ネットワーク管理システム | |
JPH05189342A (ja) | 通信処理装置動作監視方式 | |
JPS6156540B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070821 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080821 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080821 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090821 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090821 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100821 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |