JP3513550B2 - Transaction continuation method and resource manager therefor - Google Patents

Transaction continuation method and resource manager therefor

Info

Publication number
JP3513550B2
JP3513550B2 JP04945594A JP4945594A JP3513550B2 JP 3513550 B2 JP3513550 B2 JP 3513550B2 JP 04945594 A JP04945594 A JP 04945594A JP 4945594 A JP4945594 A JP 4945594A JP 3513550 B2 JP3513550 B2 JP 3513550B2
Authority
JP
Japan
Prior art keywords
server
transaction
resource manager
resource
phase commit
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
JP04945594A
Other languages
Japanese (ja)
Other versions
JPH07262073A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP04945594A priority Critical patent/JP3513550B2/en
Publication of JPH07262073A publication Critical patent/JPH07262073A/en
Application granted granted Critical
Publication of JP3513550B2 publication Critical patent/JP3513550B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、トランザクション続行
方法、特にクライアントから各サーバに対してトランザ
クションに基づく処理を依頼し、これを受けたサーバは
その中の資源アクセスをリソースマネージャに再依頼
し、トランザクションの終了後、クライアントからトラ
ンザクション管理部にトランザクションコミットを通知
し、これを受けたトランザクション管理部はリソースマ
ネージャに対して2フェーズコミット処理を実行するよ
うにしたトランザクション続行方法などに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a transaction continuation method, and in particular, a client requests each server to perform processing based on a transaction, and the server that receives the request re-requests the resource access in the server to the resource manager. After the transaction is completed, the client notifies the transaction management unit of the transaction commit, and the transaction management unit which receives the transaction commits the two-phase commit process to the resource manager.

【0002】なお、サーバとリソースマネージャとの関
係は両者が1対1で対応している場合や、一つのリソー
スマネージャが複数のサーバからそれぞれの資源アクセ
スを依頼されている場合など様々である。
There are various relationships between a server and a resource manager, such as a one-to-one correspondence between them and a case where one resource manager is requested to access each resource by a plurality of servers.

【0003】また、2フェーズコミット処理におけるリ
ソースマネージャは、資源アクセスにともなう処理結果
の実更新と、資源アクセスがロールバックされてないか
どうかの返答とをサーバ単位で行っている。
Further, the resource manager in the two-phase commit processing performs the actual update of the processing result associated with the resource access and the reply as to whether the resource access has been rolled back or not on a server-by-server basis.

【0004】一般に、コンピュータシステムの形態は、
ホスト上にプログラムを配置した集中型から、パソコ
ン、サーバ、ホストのそれぞれに機能別のプログラムを
配置し、それらを組み合わせて業務を遂行するクライア
ント/サーバ型に移行しつつある。
Generally, the form of a computer system is
There is a shift from a centralized type in which programs are arranged on a host to a client / server type in which programs for each function are arranged in each of a personal computer, a server, and a host, and these are combined to perform business.

【0005】また、クライアント/サーバ型のコンピュ
ータシステムでは、1件のトランザクション(処理要
求)を受け付けたクライアントが、機能別にあらかじめ
用意された複数のサーバを呼び出して処理を依頼するこ
とによりトランザクションに対応している。なお、複数
のサーバを用いた処理形態の一例としては、あるサーバ
でDBMS(Database Management System)を実行し、他
のサーバで非同期通信を実行することなどである。
In the client / server type computer system, a client that accepts one transaction (processing request) responds to the transaction by calling a plurality of servers prepared in advance for each function and requesting the processing. ing. An example of a processing mode using a plurality of servers is that one server executes a DBMS (Database Management System) and another server executes asynchronous communication.

【0006】従来、あるサーバまたはその資源アクセス
を実行するリソースマネージャで異常が発生した場合、
すでに正常に実行済の他のサーバの資源アクセスについ
てはその状態が担保され、また次のサーバの処理が継続
されるようにすることが要請されており、本発明は、こ
のような要請に応えるものである。
Conventionally, when an error occurs in a server or a resource manager that executes the resource access,
Regarding the resource access of another server that has already been normally executed, its state is guaranteed, and it is requested that the processing of the next server be continued. The present invention responds to such a request. It is a thing.

【0007】[0007]

【従来の技術】図6は、従来のグローバルトランザクシ
ョンの概要を示す説明図であり、1はクライアント、2
はトランザクション管理部、3および3′はサーバ、4
はリソースマネージャ、5はXAインタフェース処理
部、6は2フェーズコミット処理をそれぞれ示してい
る。
2. Description of the Related Art FIG. 6 is an explanatory view showing an outline of a conventional global transaction, 1 is a client, 2 is
Is a transaction manager, 3 and 3'are servers, 4
Is a resource manager, 5 is an XA interface processing unit, and 6 is a two-phase commit process.

【0008】一般に、クライアント/サーバ型のコンピ
ュータシステムでは、複数のサーバ3、3′・・・から
の依頼によりリソースマネージャ4で実行されるサーバ
単位の資源アクセス間の整合性を確保するための技術と
してグローバルトランザクションがある。
Generally, in a client / server type computer system, a technique for ensuring consistency between resource access in server units executed by the resource manager 4 in response to requests from a plurality of servers 3, 3 '... There is a global transaction.

【0009】そして、このグローバルトランザクション
はトランザクション管理部2のソフトウェアプロダクト
により制御され、各ソフトウェアプロダクト間のインタ
フェース標準がX/OPENのXAインタフェースとし
て規約化されている。
The global transaction is controlled by the software product of the transaction management unit 2, and the interface standard between the software products is standardized as the X / OPEN XA interface.

【0010】ここで、トランザクション管理部2は、ク
ライアント1からのトランザクション開始の通知により
グローバルトランザクションを開始し、その後、クライ
アント1からのトランザクションコミットの通知により
2フェーズコミット処理を実行している。なお、このト
ランザクションコミットはトランザクションに基づくす
べてのサーバの処理が正常終了したときなどに発行され
る。
Here, the transaction management unit 2 starts a global transaction by a transaction start notification from the client 1, and then executes a two-phase commit process by a transaction commit notification from the client 1. Note that this transaction commit is issued when the processing of all servers based on the transaction ends normally.

【0011】また、クライアント1から呼び出されたサ
ーバ3、3′はその処理手順の中の資源アクセスを例え
ば関数の呼び出しのかたちでリソースマネージャ4に再
依頼する。そして、この一連の処理が正常に終了すると
そのサーバはクライアント1に正常復帰し、この一連の
処理で異常が発生するとそのサーバはクライアント1に
異常復帰する。なお、リソースマネージャ4で異常が発
生した場合、クライアント1への異常復帰は依頼元のサ
ーバを経由して行われる。
Further, the servers 3 and 3'called from the client 1 re-request the resource manager in the processing procedure to the resource manager 4 by calling a function, for example. Then, when this series of processing ends normally, the server returns to the client 1 normally, and when an error occurs in this series of processing, the server returns to the client 1 abnormally. When an abnormality occurs in the resource manager 4, the abnormality return to the client 1 is performed via the requesting server.

【0012】また、異常が発生した場合には対応の資源
アクセスがリソースマネージャ4によりロールバックさ
れる。なお、サーバ3、3′で異常が発生した場合に
は、当該サーバは対応の資源アクセスのロールバック要
請をリソースマネージャ4に行っている。もっとも、こ
のロールバック要請が実効性を持つのはソースマネージ
ャ4からサーバに戻った後の処理で異常が発生したとき
である。
If an abnormality occurs, the corresponding resource access is rolled back by the resource manager 4. When an error occurs in the server 3, 3 ', the server requests the resource manager 4 to roll back the corresponding resource access. However, this rollback request is effective when an error occurs in the processing after returning from the source manager 4 to the server.

【0013】そして、あるサーバからの異常復帰にとも
ないクライアント1はトランザクションロールバックを
トランザクション管理部2に通知し、これを受けたトラ
ンザクション管理部2はグローバルトランザクション全
体の資源アクセスをロールバックし、その後の再度のト
ランザクション開始の指示に基づいて再試行処理ルーチ
ンまたは代行処理ルーチンに移行する。
The client 1 notifies a transaction rollback to the transaction management unit 2 in response to an abnormal return from a certain server, and the transaction management unit 2 receiving this notification rolls back the resource access of the entire global transaction, and then Based on the instruction to start the transaction again, the processing shifts to the retry processing routine or the proxy processing routine.

【0014】図示の場合、サーバ3′の異常復帰にとも
なうトランザクション管理部2のロールバック指示によ
り、正常復帰したサーバ3の資源アクセスもロールバッ
クされることになる。
In the case shown in the figure, the resource access of the server 3 which has returned to the normal state is also rolled back by the rollback instruction of the transaction management unit 2 accompanying the abnormal return of the server 3 '.

【0015】一方、すべてのサーバが正常復帰した場合
には、クライアント1はトランザクションコミットをト
ランザクション管理部2のXAインタフェース処理部5
に通知し、2フェーズコミット処理6へと移行する。
On the other hand, when all the servers have returned to normal, the client 1 commits the transaction by the XA interface processing unit 5 of the transaction management unit 2.
To the two-phase commit process 6.

【0016】すなわち、XAインタフェース処理部5は
リソースマネージャ4にコミットを通知し、これを受け
たリソースマネージャ4の方では各サーバの資源アクセ
スの内容を実更新し、さらにはサーバごとのロールバッ
クの有無についての資源アクセス管理情報を参照するこ
とにより、資源アクセスがロールバックされていないサ
ーバに関しては「正常」を、また資源アクセスがロール
バックされているサーバに関しては「異常」をそれぞれ
返答する。
That is, the XA interface processing unit 5 notifies the resource manager 4 of the commit, and the resource manager 4 receiving this notification actually updates the content of resource access of each server, and further rolls back each server. By referring to the resource access management information regarding presence / absence, "normal" is returned for a server for which resource access is not rolled back, and "abnormal" is returned for a server for which resource access is rolled back.

【0017】なお、この資源アクセス管理情報はリソー
スマネージャ4において作成・保管されており、例えば
すべてのサーバの正常復帰が真正であれば2フェーズコ
ミットのXAインタフェース処理部5への返答は「正
常」のみとなる。
Note that this resource access management information is created and stored in the resource manager 4. For example, if the normal recovery of all the servers is true, the reply to the XA interface processing unit 5 of the two-phase commit is "normal". Will only be.

【0018】[0018]

【発明が解決しようとする課題】このように、従来のト
ランザクション管理方式では、クライアントから呼び出
されたサーバやそれに対応の資源アクセスの処理で異常
が発生すると、正常に実行された資源アクセスを含むグ
ローバルトランザクション全体をロールバックした後で
再試行処理または代行処理を実行しているため、デ−タ
処理の効率が悪くなるという問題点があった。
As described above, according to the conventional transaction management method, when an error occurs in the processing of the server called by the client or the corresponding resource access, the global including the normally executed resource access is executed. Since the retry process or the proxy process is executed after the entire transaction is rolled back, there is a problem that the efficiency of the data process is deteriorated.

【0019】また、様々な異常に対応するため、例えば
異常の程度によってはトランザクションを停止させてし
まうなどの処理シーケンスを考慮してクライアントプロ
グラムを設計しなければならず、プログラム開発の生産
性が悪いなどの問題点があった。
Further, in order to deal with various abnormalities, the client program must be designed in consideration of a processing sequence such as a transaction being stopped depending on the degree of the abnormality, and the productivity of program development is poor. There were problems such as.

【0020】そこで、本発明では、異常状態のサーバに
対応の資源アクセスのみをロールバックしてこのサーバ
単位での再試行処理や代行処理を実行することにより、
デ−タ処理の効率を高めるとともに、プログラム開発の
生産性の向上を図ることを目的とする。
Therefore, in the present invention, by rolling back only the resource access corresponding to the server in the abnormal state and executing the retry processing or the proxy processing in units of this server,
The purpose is to improve the efficiency of data processing and improve the productivity of program development.

【0021】さらには、このロールバックの実行に際し
て標準インタフェース(XAインタフェース処理部5)
を変更せずに、すなわちトランザクション管理プログラ
ムに依存することなくリソースマネージャ単独で当該ロ
ールバックを実行できるようにすることを目的とする。
Further, when executing this rollback, a standard interface (XA interface processing section 5) is used.
It is an object of the present invention to enable the rollback to be executed by the resource manager by itself without changing, that is, without depending on the transaction management program.

【0022】[0022]

【課題を解決するための手段】図1は本発明の原理説明
図であり、図6の従来の場合と対比した図となっている
が各サーバでの異常発生の態様は説明の便宜上図6とは
逆の関係、すなわちサーバ3が異常復帰でサーバ3′が
正常復帰としている。
FIG. 1 is a diagram for explaining the principle of the present invention, and is a diagram for comparison with the conventional case of FIG. 6, but the mode of abnormality occurrence in each server is shown in FIG. The opposite relationship, that is, the server 3 is abnormally recovered and the server 3'is normally recovered.

【0023】なお、図6では示していない構成要素とし
て、サーバプログラム7、無効化API(Application I
nterface) 8、資源アクセスのロールバックを実行する
ための処理部9、2フェーズコミットへの対応の省略化
を実行するための処理部10がある。
As components not shown in FIG. 6, the server program 7 and the invalidation API (Application I
nterface) 8, a processing unit 9 for executing rollback of resource access, and a processing unit 10 for executing omission of correspondence to two-phase commit.

【0024】ここで、図6の従来の場合との主な相違点
は、 サーバ3の処理で異常が発生したとき、当該サーバか
らリソースマネージャ4に無効化指示を発行すること この無効化指示を無効化API8を介して受けるリソ
ースマネージャ4は、対応の資源アクセスを処理部9で
ロールバックするとともに、サーバ3に関する2フェー
ズコミット処理の省略化(後述)を処理部10で実行する
こと リソースマネージャ4がサーバ3に対応の資源アクセ
スで異常状態となったとき、この資源アクセスを処理部
9でロールバックするとともに、サーバ3に関する2フ
ェーズコミット処理の省略化(後述)を処理部10で実行
すること クライアント1は、サーバからの異常復帰があったと
きにはその後の任意の時点で代行サーバへの移行ルーチ
ンを実行すること トランザクション管理部2は、2フェーズコミットの
返答として「異常」が通知された場合(図4、図5参
照)にはグローバルトランザクション全体のロールバッ
クを指示することなどである。
Here, the main difference from the conventional case of FIG. 6 is that when an abnormality occurs in the process of the server 3, the invalidation instruction is issued from the server to the resource manager 4 to issue this invalidation instruction. The resource manager 4 received via the invalidation API 8 rolls back the corresponding resource access in the processing unit 9 and executes the omission (described later) of the two-phase commit process regarding the server 3 in the processing unit 10. Resource manager 4 When an error occurs in the resource access corresponding to the server 3, the processing unit 9 rolls back this resource access, and the processing unit 10 executes the omission of the two-phase commit processing related to the server 3 (described later). When an abnormal return from the server occurs, the client 1 executes a transfer routine to the proxy server at an arbitrary point after that. This and transaction management section 2, when the "abnormality" is notified as a response of the two-phase commit (see FIGS. 4 and 5) or the like to instruct the rollback of the entire global transaction to.

【0025】なお、サーバ3に関する2フェーズコミッ
ト処理6の省略化とは、 ・サーバ3は2フェーズコミット処理6の対象外である
旨をリソースマネージャ4からXAインタフェース処理
部5に通知すること(図4参照) ・リソースマネージャ4はこの2フェーズコミットに対
するサーバ3についての返答として、資源アクセスが正
常に実行された場合と同じく「正常」を通知すること
(図5参照)などである。
The omission of the two-phase commit processing 6 for the server 3 means that the server 3 notifies the XA interface processing unit 5 that the server 3 is not subject to the two-phase commit processing 6 (see FIG. 4) The resource manager 4 notifies the server 3 to the two-phase commit of "normal" as in the case where the resource access is normally executed (see FIG. 5).

【0026】前者の場合にはサーバ3に関するXAイン
タフェース処理部5とリソースマネージャ4との間の2
フェーズコミットの時間分だけ要処理時間が短縮され、
また後者の場合にはリソースマネージャ4はサーバ3に
関する本来のコミット処理はされないまま、すなわち資
源アクセスの実更新ができないのに「正常」を通知する
ことになる。
In the former case, 2 between the XA interface processing unit 5 and the resource manager 4 relating to the server 3
Processing time is reduced by the time of phase commit,
In the latter case, the resource manager 4 notifies "normal" while the original commit process for the server 3 is not performed, that is, the resource access cannot be actually updated.

【0027】[0027]

【作用】本発明は、このように、クライアントから呼び
出されたサーバでの処理または当該サーバから資源アク
セスを依頼されたリソースマネージャでの処理に異常が
発生した場合、リソースマネージャが単独でこの資源ア
クセスをロールバックしてクライアントに異常復帰する
とともに、その後の当該サーバについてのトランザクシ
ョン管理部からの2フェーズコミット処理のときに「異
常」が返答されることのないようにしたものである。
According to the present invention, when an error occurs in the process in the server called by the client or the process in the resource manager requested to access the resource by the server, the resource manager independently executes the resource access. Is rolled back to return to the client abnormally, and "abnormal" is not returned in the subsequent two-phase commit processing from the transaction management unit for the server.

【0028】また、グローバルトランザクション全体の
ロールバックが実行されるのは2フェーズコミット処理
の返答として「異常」が通知されたときとし、クライア
ントへの異常復帰によってもこのロールバックが実行さ
れることはない。
Further, rollback of the entire global transaction is executed when "abnormal" is notified as a reply of the two-phase commit process, and this rollback is also executed by abnormal return to the client. Absent.

【0029】なお、サーバまたはリソースマネージャで
異常が発生したときに実行される資源アクセスのロール
バックにともなってリソースマネージャが保持している
資源アクセス管理情報の対応部分が削除される(図2参
照)。
Incidentally, the corresponding portion of the resource access management information held by the resource manager is deleted due to the rollback of the resource access executed when an abnormality occurs in the server or the resource manager (see FIG. 2). .

【0030】[0030]

【実施例】図3〜図5を参照して本発明の実施例を説明
する。図3は、DB処理や、OLTP(On Line Transac
tion Processing ) 分野おけるアプリケーション間のメ
ッセージ保証型の非同期メッセージ通信を含むグローバ
ルトランザクションへの適用例を示す説明図であり、11
はワークステーション、12はクライアント、13はDB処
理用サーバ、14は書き込み用サーバ、15は代行サーバ、
16はDB処理用サーバに対応のリソースマネージャ、17
は書き込み用サーバに対応のリソースマネージャ、18は
プリンタ、19は非同期メッセージ通信用のファイル装
置、20は大型コンピュータをそれぞれ示している。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described with reference to FIGS. FIG. 3 shows DB processing and OLTP (On Line Transac).
11) is an explanatory diagram showing an application example to a global transaction including a message guarantee type asynchronous message communication between applications in the field
Is a workstation, 12 is a client, 13 is a DB processing server, 14 is a writing server, 15 is a proxy server,
16 is a resource manager corresponding to the DB processing server, 17
Is a resource manager corresponding to a writing server, 18 is a printer, 19 is a file device for asynchronous message communication, and 20 is a large computer.

【0031】ここで、クライアント12はDB処理用サー
バ13および書き込み用サーバ14を呼び出し、前者ではリ
ソースマネージャ16によるデ−タベースの追加、更新、
削除などの処理を実行し、また後者ではリソースマネー
ジャ17による非同期メッセージ通信用のファイル装置19
へのメッセージの書き込み処理を実行している。
Here, the client 12 calls the DB processing server 13 and the writing server 14, and in the former case, the resource manager 16 adds or updates the database.
It executes processing such as deletion, and in the latter case, the file device 19 for asynchronous message communication by the resource manager 17
The process of writing a message to is being executed.

【0032】そして、図示のように非同期メッセージ通
信の処理で異常が発生した場合にはここでの資源アクセ
スのみをロールバックしてこの書き込み用サーバ14はク
ライアント12に異常復帰する。
When an error occurs in the asynchronous message communication processing as shown in the figure, only the resource access here is rolled back, and the writing server 14 returns to the client 12 abnormally.

【0033】これを受けたクライアント12は代行サーバ
15を呼び出してこれを動作させることにより、プリンタ
18に対し異常メッセージ、すなわち非同期メッセージ通
信の処理で異常が発生したことを示すメッセージの配信
を行っている。
The client 12 receiving this is a proxy server
By calling 15 and running this, the printer
An abnormal message, that is, a message indicating that an error has occurred in the process of asynchronous message communication, is delivered to 18.

【0034】図4および図5は、2フェーズコミット処
理の様子を示す説明図であり、 ・RM(1) は、2フェーズコミット処理の省略化の機能を
備え、かつ異常発生のため自らの資源アクセスのロール
バックを実行したリソースマネージャ ・RM(2) は、依頼元サーバおよび自らの処理で異常が発
生していないリソースマネージャ ・RM(3) は、2フェーズコミット処理の省略化の機能を
備えておらず、かつ異常発生のため自らの資源アクセス
のロールバックを実行したリソースマネージャ ・21は、RM名とそれぞれに対する2フェーズコミットの
要否とを個々に対応付けて格納したテーブルをそれぞれ
示している。
FIG. 4 and FIG. 5 are explanatory diagrams showing a state of the two-phase commit processing. RM (1) has a function of omitting the two-phase commit processing and has its own resource due to the occurrence of an abnormality. The resource manager / RM (2) that executed the rollback of the access has no abnormality in the request source server and its own processing. The resource manager / RM (3) has the function of omitting the two-phase commit processing. If not, and the resource manager that performed the rollback of its own resource access due to the occurrence of an error, shows the tables that respectively store the RM names and the necessity of the two-phase commit for each, respectively. There is.

【0035】なお、このRM名は資源アクセスの依頼元サ
ーバと1対1に対応したものであり、テーブル21は実質
的には各サーバについての2フェーズコミットの要否を
記したものとなっている。
Note that this RM name corresponds to the server that requested the resource access in a one-to-one correspondence, and the table 21 essentially describes whether or not two-phase commit is required for each server. There is.

【0036】ここで、2フェーズコミット処理の省略化
の機能を備え、かつ自らの資源アクセスをロールバック
した状態のRM(1) は、図4の場合には対応サーバを2フ
ェーズコミット処理の対象外とする旨をXAインタフェ
ース処理部5にあらかじめ通知しておき、また図5の場
合には異常が発生していないRM(2) と同じ内容を2フェ
ーズコミット処理の返答としている。そのため、いずれ
の場合にも2フェーズコミットの返答として「異常」が
RM(1) からXAインタフェース処理部5に通知されるこ
とはない。
Here, in the case of FIG. 4, the RM (1) having the function of omitting the two-phase commit processing and rolling back its own resource access is the target of the two-phase commit processing for the corresponding server. Notifying the XA interface processing unit 5 in advance of the fact that it is outside is the same, and in the case of FIG. 5, the same content as RM (2) in which no abnormality has occurred is the reply of the two-phase commit processing. Therefore, in any case, "abnormal" is returned as the response of the two-phase commit.
There is no notification from the RM (1) to the XA interface processing unit 5.

【0037】一方、このRM(1) と同じく資源アクセスを
ロールバックした状態になっているRM(3) からは、図4
および図5のいずれの場合にも2フェーズコミットの返
答として「異常」がXAインタフェース処理部5に通知
され、これを受けたトランザクション管理部2はグロー
バルトランザクション全体の資源アクセスのロールバッ
クを指示する。
On the other hand, from the RM (3) which is in the state where the resource access is rolled back like this RM (1), FIG.
In any of the cases of FIG. 5 and FIG. 5, the XA interface processing unit 5 is notified of "abnormal" as a reply of the two-phase commit, and the transaction management unit 2 receiving this notification instructs the rollback of the resource access of the entire global transaction.

【0038】[0038]

【発明の効果】本発明は、このように、異常状態のサー
バおよびリソースマネージャに対応の資源アクセスのみ
をロールバックしてこのサーバ単位での再試行処理や代
行処理を実行しているため、デ−タ処理の効率を高める
とともにプログラム開発の生産性の向上を図ることがで
きる。
As described above, according to the present invention, since only the resource access corresponding to the server and the resource manager in the abnormal state is rolled back and the retry process or the proxy process is executed for each server, -It is possible to improve the efficiency of data processing and improve the productivity of program development.

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

【図1】本発明の、原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の、異常発生時のリソースマネージャで
の処理の一部を示す説明図である。
FIG. 2 is an explanatory diagram showing a part of the processing by the resource manager when an abnormality occurs according to the present invention.

【図3】本発明の、DB処理や、メッセージ保証型の非
同期メッセージ通信を含むグローバルトランザクション
への適用例を示す説明図である。
FIG. 3 is an explanatory diagram showing an example of application of the present invention to a global transaction including DB processing and message guarantee type asynchronous message communication.

【図4】本発明の、2フェーズコミット処理の様子を示
す説明図である(その1)。
FIG. 4 is an explanatory diagram showing the state of two-phase commit processing according to the present invention (No. 1).

【図5】本発明の、2フェーズコミット処理の様子を示
す説明図である(その2)。
FIG. 5 is an explanatory diagram showing a state of a two-phase commit process of the present invention (No. 2).

【図6】従来の、グローバルトランザクションの概要を
示す説明図である。
FIG. 6 is an explanatory diagram showing an outline of a conventional global transaction.

【符号の説明】 図1において、1・・・クライアント 2・・・トランザクション管理部 3・・・サーバ 4・・・リソースマネージャ 5・・・XAインターフェース処理部 6・・・2フェーズコミット処理 7・・・サーバプログラム 8・・・無効化API 9・・・資源アクセスのロールバックのための処理部 10・・・2フェーズコミットへの対応の省略化のための
処理部
[Description of Reference Signs] In FIG. 1, 1 ... Client 2 ... Transaction management unit 3 ... Server 4 ... Resource manager 5 ... XA interface processing unit 6 ... Two-phase commit processing 7 ... ..Server program 8 ... Invalidation API 9 ... Processing unit for rollback of resource access 10 ... Processing unit for omission of support for two-phase commit

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−229333(JP,A) 特開 平3−12773(JP,A) 特開 平4−64146(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 G06F 11/14 G06F 15/16 - 15/177 ─────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-4-229333 (JP, A) JP-A-3-12773 (JP, A) JP-A-4-64146 (JP, A) (58) Field (Int.Cl. 7 , DB name) G06F 12/00 G06F 11/14 G06F 15/16-15/177

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 クライアントから各サーバに対してトラ
ンザクションに基づく処理を依頼し、これを受けた当該
サーバはその中の資源アクセスをリソースマネージャに
再依頼し、トランザクションの終了後、前記クライアン
トからトランザクション管理部にトランザクションコミ
ットを通知し、これを受けた当該トランザクション管理
部は前記リソースマネージャに対して前記各サーバを対
象とする2フェーズコミット処理を実行するようにした
トランザクション続行方法において、 異常が発生した前記サーバは、前記クライアントに異常
復帰するとともに前記リソースマネージャに対して無効
化指示を発行し、 当該無効化指示を受けた前記リソースマネージャは、そ
の発行元サーバに対応の資源アクセスのみのロールバッ
クを実行し、前記2フェーズコミット処理の際には、当
該発行元サーバを前記2フェーズコミット処理の対象外
とするため、当該発行元サーバに関する本来の処理をせ
ずに「正常」を前記トランザクション管理部に返答す
る、ことを特徴とするトランザクション続行方法。
1. A client requests a process based on a transaction from each server, and the server which receives the request re-requests the resource manager for the resource access therein, and after the transaction ends, the client manages the transaction. In the transaction continuation method, the transaction management unit, which notifies the section of the transaction commit, executes the two-phase commit process for each of the servers with respect to the resource manager. The server abnormally returns to the client and issues an invalidation instruction to the resource manager. Upon receipt of the invalidation instruction, the resource manager executes rollback only for resource access corresponding to the issuing server. The above During the phase commit processing, the issuer server is excluded from the target of the two-phase commit processing. Therefore, “normal” is returned to the transaction management unit without performing the original processing relating to the issuer server. Transaction continuation method characterized by.
【請求項2】 クライアントから各サーバに対してトラ
ンザクションに基づく処理を依頼し、これを受けた当該
サーバはその中の資源アクセスをリソースマネージャに
再依頼し、トランザクションの終了後、前記クライアン
トからトランザクション管理部にトランザクションコミ
ットを通知し、これを受けた当該トランザクション管理
部は前記リソースマネージャに対して前記各サーバを対
象とする2フェーズコミット処理を実行するようにした
トランザクション続行方法において、 任意のサーバに対応の資源アクセスで異常が発生した前
記リソースマネージャは、当該サーバへの異常復帰およ
び当該資源アクセスのみのロールバックを実行し、前記
2フェーズコミット処理の際には、当該サーバを前記2
フェーズコミット処理の対象外とするため、当該サーバ
に関する本来の処理をせずに「正常」を前記トランザク
ション管理部に返答する、ことを特徴とするトランザク
ション続行方法。
2. A client requests a process based on a transaction from each server, and upon receipt of this request, the server re-requests resource access from the server to the resource manager, and after the transaction ends, the client manages the transaction. In the transaction continuation method, the transaction manager that notifies the department of the transaction commit and executes the two-phase commit process for each server to the resource manager responds to any server. When an error occurs in the resource access of the resource manager, the resource manager executes an abnormal recovery to the server and rolls back only the resource access.
A transaction continuation method characterized by returning "normal" to the transaction management unit without performing the original process for the server in order to exclude it from the phase commit process.
【請求項3】 前記トランザクション管理部は、前記2
フェーズコミット処理の返答として「異常」を受けた場
合にはグローバルトランザクション全体のロールバック
を指示する、ことを特徴とする請求項1または2記載の
トランザクション続行方法。
3. The transaction management unit is configured to
3. The transaction continuation method according to claim 1, further comprising the step of instructing rollback of the entire global transaction when "abnormal" is received as a response to the phase commit process.
【請求項4】 クライアントから各サーバに対してトラ
ンザクションに基づく処理を依頼し、これを受けた当該
サーバはその中の資源アクセスをリソースマネージャに
再依頼し、トランザクションの終了後、前記クライアン
トからトランザクション管理部にトランザクションコミ
ットを通知し、これを受けた当該トランザクション管理
部は前記リソースマネージャに対して前記各サーバを対
象とする2フェーズコミット処理を実行する形式のトラ
ンザクション処理に用いられるリソースマネージャにお
いて、 任意のサーバに対応の資源アクセスで異常が発生したと
き、 当該サーバへの異常復帰、および当該資源アクセスのみ
のロールバックを実行するとともに、 前記2フェーズコミット処理の際には、当該サーバを前
記2フェーズコミット処理の対象外とするため、当該サ
ーバに関する本来の処理をせずに「正常」を前記トラン
ザクション管理部に返答する、ことを特徴とするリソー
スマネージャ。
4. A client requests each server to perform processing based on a transaction, and the server which receives the request re-requests the resource manager for the resource access therein, and after the transaction ends, the client manages the transaction. The transaction management unit which has notified the unit of the transaction commit, and the transaction management unit which has received the notification, in the resource manager used for the transaction process of the type for executing the two-phase commit process for each server to the resource manager, When an error occurs in the resource access corresponding to the server, abnormal return to the server and rollback of only the resource access are executed, and when the two-phase commit processing is performed, the server is committed to the two-phase commit. place A resource manager, which returns "normal" to the transaction management unit without performing the original process for the server in order to exclude it from the reason.
JP04945594A 1994-03-18 1994-03-18 Transaction continuation method and resource manager therefor Expired - Fee Related JP3513550B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04945594A JP3513550B2 (en) 1994-03-18 1994-03-18 Transaction continuation method and resource manager therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04945594A JP3513550B2 (en) 1994-03-18 1994-03-18 Transaction continuation method and resource manager therefor

Publications (2)

Publication Number Publication Date
JPH07262073A JPH07262073A (en) 1995-10-13
JP3513550B2 true JP3513550B2 (en) 2004-03-31

Family

ID=12831620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04945594A Expired - Fee Related JP3513550B2 (en) 1994-03-18 1994-03-18 Transaction continuation method and resource manager therefor

Country Status (1)

Country Link
JP (1) JP3513550B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346905B2 (en) * 2003-06-10 2008-03-18 International Business Machines Corporation Apparatus and method for maintaining resource integrity without a unified transaction manager in a software environment
JP4291060B2 (en) 2003-07-01 2009-07-08 富士通株式会社 Transaction processing method, transaction control device, and transaction control program
JP4500318B2 (en) * 2004-11-29 2010-07-14 富士通株式会社 Distributed transaction processing method, apparatus, and program

Also Published As

Publication number Publication date
JPH07262073A (en) 1995-10-13

Similar Documents

Publication Publication Date Title
US5796934A (en) Fault tolerant client server system
US5781910A (en) Preforming concurrent transactions in a replicated database environment
JP2557192B2 (en) Transaction processing synchronization method, transaction processing monitoring method, and transaction commit processing method
US5923833A (en) Restart and recovery of OMG-compliant transaction systems
US6826601B2 (en) Exactly one cache framework
US7213038B2 (en) Data synchronization between distributed computers
JP5008991B2 (en) Apparatus and method for controlling data recovery
US7055063B2 (en) Method and system for advanced restart of application servers processing time-critical requests
US8341125B2 (en) Transaction log management
US20020035590A1 (en) Guaranteed end-to-end transaction execution in a client/server environment
US7992148B2 (en) Issuing syncpoints during execution of a batch application to minimize or eliminate periods of record unavailability due to batch related record locking
US20030065708A1 (en) Exactly once JMS communication
WO1993018454A1 (en) Distributed transaction processing system
JPS58225447A (en) Operation of calculator
US20050004952A1 (en) Transaction processing method, transaction control apparatus and program thereof
JP3513550B2 (en) Transaction continuation method and resource manager therefor
EP0525946B1 (en) Data processing system with transaction processing application
US5576945A (en) Transaction monitor process with pre-arranged modules for a multiprocessor system
AU2002332845A1 (en) Exactly once cache framework
WO2003023633A1 (en) Exactly once cache framework
US5964828A (en) Method and system for maintaining the integrity of objects
US7213029B2 (en) Quiescing work bounded by application transactions consisting of multiple relational database transactions
US7484215B2 (en) Method, system and program product for processing a transaction
JP3335893B2 (en) Passbook / Certificate issuing system
JPH07114495A (en) Multiplexing file managing system

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20030617

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031215

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080123

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090123

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100123

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110123

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees