JP5515286B2 - Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor - Google Patents

Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor Download PDF

Info

Publication number
JP5515286B2
JP5515286B2 JP2008320366A JP2008320366A JP5515286B2 JP 5515286 B2 JP5515286 B2 JP 5515286B2 JP 2008320366 A JP2008320366 A JP 2008320366A JP 2008320366 A JP2008320366 A JP 2008320366A JP 5515286 B2 JP5515286 B2 JP 5515286B2
Authority
JP
Japan
Prior art keywords
transaction
manager
layer
resource manager
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.)
Active
Application number
JP2008320366A
Other languages
Japanese (ja)
Other versions
JP2010146134A (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 JP2008320366A priority Critical patent/JP5515286B2/en
Publication of JP2010146134A publication Critical patent/JP2010146134A/en
Application granted granted Critical
Publication of JP5515286B2 publication Critical patent/JP5515286B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法並びにそのプログラムに関し、特に障害発生時における分散トランザクションの障害復旧に関する。   The present invention relates to a distributed transaction processing system, a server apparatus, a distributed transaction failure recovery method used therefor, and a program thereof, and more particularly to a distributed transaction failure recovery when a failure occurs.

本発明に関連する分散トランザクション処理システムでは、複数のリソースマネージャを有し、それら複数のリソースマネージャのコミットメントを正しく行うために、トランザクションマネージャが二層コミットメントの手続きを実施している。   In the distributed transaction processing system related to the present invention, the transaction manager has a plurality of resource managers, and the transaction manager performs a two-layer commitment procedure in order to correctly perform the commitments of the plurality of resource managers.

以下、二層コミットメント処理の概略について説明する。二層コミットメント処理は、第一層処理と第二層処理とからなっている。トランザクションの更新処理では、トランザクションマネージャが第1層処理として各リソースマネージャに対してプリペアリクエストを発行する。各リソースマネージャはコミットメントの可否をトランザクションマネージャに返答する。   The outline of the two-layer commitment process will be described below. The two-layer commitment process includes a first layer process and a second layer process. In the transaction update process, the transaction manager issues a prepare request to each resource manager as the first layer process. Each resource manager returns to the transaction manager whether the commitment is possible.

トランザクションマネージャは、全てのリソースマネージャから返答を受け取ると、全てのリソースマネージャからコミットメント可能の返答を受け取った場合、第二層処理としてコミットメントリクエストを発行する。トランザクションマネージャは、全てのリソースマネージャから第二層処理の返答を受け取った時点で、一連のトランザクションを完了する。   When the transaction manager receives replies from all resource managers, the transaction manager issues a commitment request as a second layer process when replies that can be committed are received from all resource managers. The transaction manager completes a series of transactions when receiving the response of the second layer processing from all the resource managers.

第一層処理において、一つ以上のリソースマネージャからコミット不可の返答を受け取った場合、トランザクションマネージャは、第二層処理としてロールバックリクエストを発行し、全てのリソースマネージャから返答を受け取った時点で一連のトランザクションを完了する。   In the first layer processing, when a response that cannot be committed is received from one or more resource managers, the transaction manager issues a rollback request as the second layer processing, and when a response is received from all resource managers, Complete the transaction.

トランザクション処理は、トランザクション実行中にトランザクションマネージャが動作するサーバ装置が停止した場合に未完了状態となり、トランザクションに関連するリソースマネージャは、データベースの更新処理が完了するまでの間、他からの更新が行われないようにするためにロックされているので、使用不能状態となっている。トランザクション処理は、トランザクションマネージャが動作するサーバ装置が起動した際に再開される。   Transaction processing becomes incomplete when the server device on which the transaction manager operates stops during transaction execution, and the resource manager associated with the transaction performs updates from other sources until the database update processing is completed. It is locked to prevent it from being broken, so it is in an unusable state. Transaction processing is resumed when the server device on which the transaction manager operates is started.

アプリケーションの信頼性を高める場合は、稼動系のサーバ装置と待機系のサーバ装置との対からなるクラスタを構成する。この構成において、トランザクションマネージャは、稼動系のサーバ装置が停止した場合、直ちに待機系のサーバ装置が起動してトランザクション処理が再開され、リソースマネージャのロックが解放される。   In order to increase the reliability of the application, a cluster including a pair of an active server device and a standby server device is configured. In this configuration, when the active server device stops, the transaction manager immediately starts up the standby server device, resumes transaction processing, and releases the resource manager lock.

本発明に関連する他の分散トランザクションの障害復旧方式としては、同一ノード内にトランザクションをリカバリするための装置を用意する方式(例えば、特許文献1参照)、障害発生時に仕掛かり中のトランザクションの決着処理を短時間に行う方式(例えば、特許文献2参照)が提案されている。
特開2005−250998号公報 特開2004−234203号公報
Other distributed transaction failure recovery methods related to the present invention include a method of preparing a device for recovering transactions in the same node (see, for example, Patent Document 1), and determination of a transaction in progress when a failure occurs. A method of performing processing in a short time (for example, see Patent Document 2) has been proposed.
JP 2005-250998 A JP 2004-234203 A

しかしながら、近年、アプリケーションの信頼性を高めるために、図1で示すように、負荷分散装置を用いて複数のサーバ装置へ処理を振り分けている。この方式では、サーバ装置に待機系を配置しない構成をとる。   However, in recent years, in order to increase the reliability of applications, as shown in FIG. 1, processing is distributed to a plurality of server devices using a load balancer. In this system, a configuration is adopted in which a standby system is not arranged in the server device.

そのため、あるサーバ装置が停止した場合、そのサーバ装置上で動作していたトランザクションは代替装置での起動が行われない。よって、リソースマネージャの更新中の領域は、他のトランザクションから参照不可であるため、トランザクションが回復以前に他のサーバ装置からリソースマネージャへの処理が行われると、システム全体が停止してしまうという問題がある。   For this reason, when a certain server device is stopped, a transaction that was operating on the server device is not started on the alternative device. Therefore, since the area being updated by the resource manager cannot be referenced by other transactions, if the transaction is processed from another server device to the resource manager before the transaction is recovered, the entire system will stop. There is.

本発明に関連する分散トランザクション処理システムの問題点は、サーバ障害等が発生した場合に、トランザクションが回復するのに時間がかかるということである。   A problem of the distributed transaction processing system related to the present invention is that it takes time to recover a transaction when a server failure or the like occurs.

その理由は、上記の特許文献1の方式の場合、トランザクション復旧手段やトランザクション情報管理テーブルとトランザクション実行手段が同一サーバ上で動作するため回復ができず、上記の特許文献2の方式の場合、トランザクション復旧手段を含むサーバがダウンすると、トランザクションの回復手段がないためである。   The reason is that in the case of the above-described method of Patent Document 1, the transaction recovery means, the transaction information management table, and the transaction execution means operate on the same server, so that recovery cannot be performed. This is because if the server including the recovery means goes down, there is no transaction recovery means.

そこで、本発明の目的は上記の問題点を解消し、障害が発生した場合にリソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法並びにそのプログラムを提供することにある。   Therefore, an object of the present invention is to solve the above-mentioned problems, and when a failure occurs, a distributed transaction processing that can minimize the lock time of the resource manager and minimize the stop time of the entire system. It is an object to provide a system, a server device, a failure recovery method for a distributed transaction used for them, and a program therefor.

本発明による分散トランザクション処理システムは、トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムであって、
前記中継装置は、前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信手段と、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを備えている。
A distributed transaction processing system according to the present invention includes a transaction manager and a relay device having a resource manager , and the resource manager performs a two-layer commitment process of a transaction based on an instruction from the transaction manager,
The relay device receives and transmits the instruction from the transaction manager and transmits to the resource manager, detection means for detecting an abnormal end of the transaction manager, and when the detection means detects the abnormal end Execution means for executing the second layer processing of the two-layer commitment processing of the transaction on the resource manager based on the elapsed time from the completion of the first layer processing of the two-layer commitment processing.

本発明によるサーバ装置は、トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いるサーバ装置であって、
前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信手段と、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを備えている。
A server device according to the present invention includes a transaction manager and a relay device having a resource manager , and the server device is used in a distributed transaction processing system in which a resource manager performs a two-layer commitment process of a transaction based on an instruction from the transaction manager. ,
Transmission / reception means for receiving the instruction from the transaction manager and transmitting it to the resource manager, detection means for detecting abnormal termination of the transaction manager, and the two-layer commitment processing when the detection means detects the abnormal termination Execution means for executing the second layer processing of the two-layer commitment processing of the transaction on the resource manager based on the elapsed time from the completion of the first layer processing.

本発明による分散トランザクションの障害復旧方法は、トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いる分散トランザクションの障害復旧方法であって、
前記中継装置が、前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信処理と、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを実行している。
Error recovery method for distributed transactions according to the invention comprises a transaction manager, and a relay device having a resource manager, the resource manager on the basis of the instructions of the transaction manager uses the distributed transaction processing system that performs two layers commitment of a transaction distributed A transaction recovery method,
The relay device receives the instruction from the transaction manager and transmits it to the resource manager, a detection process for detecting abnormal termination of the transaction manager, and the abnormal termination is detected in the detection process In this case, execution processing for executing the second layer processing of the two-layer commitment processing of the transaction is executed for the resource manager based on the elapsed time from the completion of the first layer processing of the two-layer commitment processing.

本発明によるプログラムは、トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムにおいて前記中継装置内の中央処理装置が実行するプログラムであって、
前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信処理と、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを含むことを特徴とする。
A program according to the present invention includes a transaction manager and a relay device having a resource manager, and a central processing in the relay device in a distributed transaction processing system in which a resource manager performs a two-layer commitment process of a transaction based on an instruction from the transaction manager. A program executed by the device,
A transmission / reception process for receiving the instruction from the transaction manager and transmitting it to the resource manager, a detection process for detecting an abnormal end of the transaction manager, and the two layers when the abnormal end is detected in the detection process And an execution process for executing the second layer process of the two-layer commitment process of the transaction on the resource manager based on the elapsed time from the completion of the first layer process of the commitment process.

本発明は、上記のような構成及び動作とすることで、障害が発生した場合にリソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができるという効果が得られる。   The present invention is configured and operated as described above, so that when a failure occurs, the lock time of the resource manager can be minimized, and the stop time of the entire system can be minimized. Is obtained.

次に、本発明の実施の形態について図面を参照して説明する。まず、本発明による分散トランザクション処理システムの概要について説明する。本発明による分散トランザクション処理システムは、端末装置とサーバ装置と負荷分散装置とをLAN(Local Area Network)で接続し、端末装置からサーバ装置に対してデータの更新を行うシステムである。   Next, embodiments of the present invention will be described with reference to the drawings. First, an outline of a distributed transaction processing system according to the present invention will be described. A distributed transaction processing system according to the present invention is a system in which a terminal device, a server device, and a load distribution device are connected by a LAN (Local Area Network), and data is updated from the terminal device to the server device.

上記のシステムにおいて、サーバ装置は、リソースマネージャと中継装置とからなり、中継装置は切断検出部と、受信部と、送信部と、記憶部と、経過判断部とを備え、サーバ装置の障害によりトランザクションの継続が困難になった場合に、中継装置がトランザクションを決定することによって、リソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。   In the system described above, the server device includes a resource manager and a relay device. The relay device includes a disconnection detection unit, a reception unit, a transmission unit, a storage unit, and a progress determination unit. When it becomes difficult to continue the transaction, the relay device determines the transaction, thereby minimizing the lock time of the resource manager and minimizing the downtime of the entire system.

尚、本発明による分散トランザクション処理システムは、上述した背景技術のように、複数のリソースマネージャを有し、それら複数のリソースマネージャのコミットメントを正しく行うために、トランザクションマネージャが二層コミットメントの手続きを実施しているものとする。   The distributed transaction processing system according to the present invention has a plurality of resource managers as in the background art described above, and the transaction manager executes a two-layer commitment procedure in order to correctly perform the commitments of the plurality of resource managers. Suppose you are.

本発明による分散トランザクション処理システムでは、サーバ装置の障害が発生した場合に、第一層処理からの経過時間に基づいてトランザクションの状態を決定することで、システム全体での処理を継続している。これによって、本発明による分散トランザクション処理システムでは、トランザクションマネージャが解決するトランザクションをリソースマネージャ側で決定することによって、リソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。   In the distributed transaction processing system according to the present invention, when a failure occurs in the server device, the state of the transaction is determined based on the elapsed time from the first layer processing, thereby continuing the processing in the entire system. Thus, in the distributed transaction processing system according to the present invention, the resource manager lock time can be minimized by determining the transaction to be solved by the transaction manager on the resource manager side, thereby minimizing the downtime of the entire system. can do.

図1は本発明の第1の実施の形態による分散トランザクション処理システムの構成例を示すブロック図である。図1において、本発明の第1の実施の形態による分散トランザクション処理システムは、負荷分散装置5に接続された2台のサーバ装置1−1,1−2と、データベース等のリソースマネージャが動作するサーバ装置2及びサーバ装置3と、端末装置4−1,4−2と、これらを接続するネットワークとから構成されている。   FIG. 1 is a block diagram showing a configuration example of a distributed transaction processing system according to the first exemplary embodiment of the present invention. In FIG. 1, the distributed transaction processing system according to the first embodiment of the present invention operates two server apparatuses 1-1 and 1-2 connected to a load distribution apparatus 5 and a resource manager such as a database. The server device 2 and the server device 3, terminal devices 4-1 and 4-2, and a network connecting them are configured.

サーバ装置1−1は、アプリケーションサーバ11−1を備え、アプリケーションサーバ11−1は、トランザクションマネージャ111−1と、アプリケーション112−1とを含んでいる。サーバ装置1−2は、アプリケーションサーバ11−2を備え、アプリケーションサーバ11−2は、トランザクションマネージャ111−2と、アプリケーション112−2とを含んでいる。   The server device 1-1 includes an application server 11-1, and the application server 11-1 includes a transaction manager 111-1 and an application 112-1. The server apparatus 1-2 includes an application server 11-2, and the application server 11-2 includes a transaction manager 111-2 and an application 112-2.

サーバ装置2は、中継装置21と、リソースマネージャ22とを備え、中継装置21は、切断検出部211と、受信部212と、送信部213と、記憶部214と、経過判断部215とを含んでいる。サーバ装置3は、リソースマネージャ31を備えている。   The server device 2 includes a relay device 21 and a resource manager 22, and the relay device 21 includes a disconnection detection unit 211, a reception unit 212, a transmission unit 213, a storage unit 214, and a progress determination unit 215. It is out. The server device 3 includes a resource manager 31.

トランザクションマネージャ111−1は、サーバ装置1−1のアプリケーションサーバ11−1上で動作を行い、リソースマネージャ22とリソースマネージャ31との分散トランザクションを管理する。   The transaction manager 111-1 operates on the application server 11-1 of the server device 1-1 and manages distributed transactions between the resource manager 22 and the resource manager 31.

アプリケーション112−1は、端末装置4−1と端末装置4−2とから要求を受け、リソースマネージャ22とリソースマネージャ31との情報の更新を行い、トランザクションマネージャ111−1に対してコミットメントもしくはロールバック要求を行う。   The application 112-1 receives a request from the terminal device 4-1 and the terminal device 4-2, updates information of the resource manager 22 and the resource manager 31, and commits or rolls back the transaction manager 111-1. Make a request.

切断検出部211は、サーバ装置2の中継装置21上で動作し、トランザクションマネージャ111−1,111−2の動作停止を検出する。受信部212は、サーバ装置2の中継装置21上で動作し、アプリケーション112−1,112−2及びトランザクションマネージャ111−1,111−2からリソースマネージャ22への通信を受信する。   The disconnection detection unit 211 operates on the relay device 21 of the server device 2 and detects the operation stop of the transaction managers 111-1 and 111-2. The receiving unit 212 operates on the relay device 21 of the server device 2 and receives communications from the applications 112-1 and 112-2 and the transaction managers 111-1 and 111-2 to the resource manager 22.

送信部213は、サーバ装置2の中継装置21上で動作し、受信部212で受信した通信内容をリソースマネージャ22に送信すると共に、リソースマネージャ22が停止した時にリソースマネージャ22にトランザクション完了通知を送信する。   The transmission unit 213 operates on the relay device 21 of the server device 2, transmits the communication content received by the reception unit 212 to the resource manager 22, and transmits a transaction completion notification to the resource manager 22 when the resource manager 22 stops. To do.

記憶部214は、サーバ装置2の中継装置21上で動作し、中継装置21が決定したトランザクションの状態を保持する。   The storage unit 214 operates on the relay device 21 of the server device 2 and holds the transaction state determined by the relay device 21.

図2及び図3は本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートであり、図4は本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置に異常が発生した場合の動作の流れを示すフローチャートである。   2 and 3 are sequence charts showing the flow of operations when a transaction ends normally in the distributed transaction processing system according to the first exemplary embodiment of the present invention. FIG. 4 is a sequence chart illustrating the first exemplary embodiment of the present invention. It is a flowchart which shows the flow of operation | movement when abnormality has generate | occur | produced in the server apparatus in the distributed transaction processing system by a form.

図5は本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置が障害からの回復した場合の動作の流れを示すシーケンスチャートである。これら図1〜図5を参照して本発明の第1の実施の形態による分散トランザクション処理システム全体の動作について説明する。尚、図2〜図5の処理において、サーバ装置2の中継装置21が実行する処理は、図示せぬCPU(中央処理装置)がプログラムを実行することで実現される。   FIG. 5 is a sequence chart showing an operation flow when the server apparatus recovers from the failure in the distributed transaction processing system according to the first exemplary embodiment of the present invention. The overall operation of the distributed transaction processing system according to the first embodiment of the present invention will be described with reference to FIGS. 2 to 5, the processing executed by the relay device 21 of the server device 2 is realized by a CPU (Central Processing Unit) (not shown) executing a program.

以下の説明においては、端末装置4−1から負荷分散装置5を介してサーバ装置1−1に処理を行うものとする。また、端末装置4−1からの要求は、サーバ装置2、サーバ装置3上のリソースマネージャ22とリソースマネージャ31とを更新するものとする。   In the following description, it is assumed that processing is performed from the terminal device 4-1 to the server device 1-1 via the load distribution device 5. Further, the request from the terminal device 4-1 updates the resource manager 22 and the resource manager 31 on the server device 2 and the server device 3.

以下、
・正常に終了する場合の動作
・異常が発生した場合の動作(ケース1:第一層処理が完了した状態でサーバ装置1−1に異常が発生)
・異常が発生した場合の動作(ケース2:第一層処理が未完了の状態でサーバ装置1−1に異常が発生)
・異常が発生した場合の動作(ケース3:第二層処理が完了した状態でサーバ装置1−1に異常が発生)
・異常発生後に回復した場合の動作(サーバ装置1−1が再起動)
という各ケースの動作について説明する。
Less than,
-Operation when it ends normally-Operation when an abnormality occurs (Case 1: An abnormality occurs in the server device 1-1 when the first layer processing is completed)
Operation when an abnormality occurs (Case 2: An abnormality occurs in the server device 1-1 when the first layer processing is not completed)
-Operation when an abnormality occurs (Case 3: An abnormality occurs in the server device 1-1 when the second layer processing is completed)
・ Operation when recovering after an error occurs (server device 1-1 is restarted)
The operation of each case will be described.

まず、正常に終了する場合、すなわちトランザクションマネージャ111−1からリソースマネージャ22とリソースマネージャ31への二層コミットメント処理が正常に終了した場合の処理について説明する。   First, a description will be given of processing when the processing ends normally, that is, when the two-layer commitment processing from the transaction manager 111-1 to the resource manager 22 and the resource manager 31 ends normally.

図2及び図3を参照すると、まず、端末装置4−1が負荷分散装置5に対してトランザクション処理要求を発行する(図2のa1)。負荷分散装置5は、接続されるサーバ装置1−1に対して、端末装置4−1から受信したトランザクション処理要求を転送する(図2のa2)。   2 and 3, first, the terminal device 4-1 issues a transaction processing request to the load balancer 5 (a1 in FIG. 2). The load distribution device 5 transfers the transaction processing request received from the terminal device 4-1 to the server device 1-1 connected (a 2 in FIG. 2).

サーバ装置1−1のアプリケーションサーバ11は、トランザクション処理要求を受信すると、トランザクションマネージャ111−1を用いてトランザクションを開始する。ここで開始されるトランザクションを[T1]とする(図2のa3)。   When receiving the transaction processing request, the application server 11 of the server apparatus 1-1 starts a transaction using the transaction manager 111-1. The transaction started here is [T1] (a3 in FIG. 2).

アプリケーションサーバ11上のアプリケーション112−1は、リソースマネージャ22を更新するため、中継装置21に対して更新処理を要求する(図2のa4)。   The application 112-1 on the application server 11 requests the relay device 21 to perform update processing in order to update the resource manager 22 (a 4 in FIG. 2).

中継装置21上の受信部212は、アプリケーション112−1からの更新要求を受信すると、その更新要求を送信部213を用いてリソースマネージャ22に送信する(図2のa5)。その後、リソースマネージャ22はデータの更新を行う。リソースマネージャ22の更新後、中継装置21の記憶部214は、現在の時刻、トランザクション情報、サーバ装置1−1の情報を記録する(図2のa6)。   When receiving the update request from the application 112-1, the reception unit 212 on the relay device 21 transmits the update request to the resource manager 22 using the transmission unit 213 (a5 in FIG. 2). Thereafter, the resource manager 22 updates the data. After the resource manager 22 is updated, the storage unit 214 of the relay device 21 records the current time, transaction information, and information of the server device 1-1 (a6 in FIG. 2).

アプリケーションサーバ11上のアプリケーション112−1は、リソースマネージャ31を更新する(図2のa7)。アプリケーション112−1の処理完了後、アプリケーションサーバ11は、トランザクションマネージャ111−1を用いてトランザクション[T1]のコミットメント処理を行う(図2のa8)。   The application 112-1 on the application server 11 updates the resource manager 31 (a7 in FIG. 2). After completing the process of the application 112-1, the application server 11 performs the commitment process for the transaction [T1] using the transaction manager 111-1 (a8 in FIG. 2).

トランザクションマネージャ111−1は、リソースマネージャ22の第一層処理を開始し、中継装置21に対して第一層処理の開始要求を発行する(図2のa9)。   The transaction manager 111-1 starts the first layer processing of the resource manager 22, and issues a first layer processing start request to the relay device 21 (a9 in FIG. 2).

中継装置21上の受信部212は、第一層処理の開始要求を受けると、送信部213を用いてリソースマネージャ22に第一層処理の開始要求を送信する(図2のa10)。リソースマネージャ22は、第一層処理を実行する。   When receiving the first layer processing start request, the reception unit 212 on the relay device 21 transmits the first layer processing start request to the resource manager 22 using the transmission unit 213 (a10 in FIG. 2). The resource manager 22 executes the first layer process.

その第一層処理の完了後、中継装置21上の記憶部214は、上記のa6の処理で記憶した時刻を現在の時刻で更新すると共に、第一層処理の完了の状態を記憶する(図3のa11)。   After the completion of the first layer process, the storage unit 214 on the relay device 21 updates the time stored in the process a6 described above with the current time, and stores the completion state of the first layer process (see FIG. 3 a11).

リソースマネージャ22の第一層処理の完了後、トランザクションマネージャ111−1は、リソースマネージャ31に第一層処理を要求する(図3のa12)。リソースマネージャ31は、第一層処理を実行する。   After the completion of the first layer processing of the resource manager 22, the transaction manager 111-1 requests the first layer processing from the resource manager 31 (a12 in FIG. 3). The resource manager 31 executes the first layer process.

リソースマネージャ22とリソースマネージャ31とにおいて第一層処理が完了した後、トランザクションマネージャ111−1は、第二層処理を開始する。上記の第一層処理と同様に、トランザクションマネージャ111−1は、リソースマネージャの第二層処理要求を中継装置21に対して発行する(図3のa13)。   After the first layer processing is completed in the resource manager 22 and the resource manager 31, the transaction manager 111-1 starts the second layer processing. Similar to the above first layer processing, the transaction manager 111-1 issues a second layer processing request from the resource manager to the relay device 21 (a13 in FIG. 3).

第二層処理の開始要求を受けた中継装置21上の受信部212は、送信部213を用いてリソースマネージャ22に第二層処理要求の開始を送信する(図3のa14)。リソースマネージャ22は、第二層処理を実行する。   The receiving unit 212 on the relay device 21 that has received the request for starting the second layer processing transmits the start of the second layer processing request to the resource manager 22 using the transmitting unit 213 (a14 in FIG. 3). The resource manager 22 executes the second layer process.

その第二層処理の完了後、中継装置21上の記憶部214は、上記のa6の処理とa11の処理とで記憶した情報の削除を行う(図3のa15)。   After the completion of the second layer process, the storage unit 214 on the relay device 21 deletes the information stored in the process a6 and the process a11 (a15 in FIG. 3).

トランザクションマネージャ111−1は、リソースマネージャ31に対し、第二層処理の開始を要求する(図3のa16)。リソースマネージャ31は、第二層処理を実行する。   The transaction manager 111-1 requests the resource manager 31 to start the second layer process (a16 in FIG. 3). The resource manager 31 executes the second layer process.

リソースマネージャ22及びリソースマネージャ31で第二層処理が完了することによって、トランザクション[T1]は完了する(図3のa17)。
続いて、異常が発生した場合(ケース1)、すなわち第一層処理の完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。
When the resource manager 22 and the resource manager 31 complete the second layer process, the transaction [T1] is completed (a17 in FIG. 3).
Next, processing when an abnormality occurs (case 1), that is, when a failure occurs in the server device 1-1 when the first layer processing is completed will be described.

図4を参照すると、先ず中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると(図4ステップS1)、経過判断部215は、記憶部214からトランザクションの状態を取得する(図4ステップS2)。   Referring to FIG. 4, first, when the disconnection detection unit 211 of the relay device 21 detects the stop of the server device 1-1 (step S1 in FIG. 4), the progress determination unit 215 acquires the transaction state from the storage unit 214 ( FIG. 4 step S2).

経過判断部215は、現在の時刻と記憶部214に記録されている時刻との差分よりトランザクションの決定を行う(図4ステップS3)。送信部213は、リソースマネージャ22に対して第一層処理が処理済みのトランザクションの一覧を要求する(図4ステップS4)。リソースマネージャ22は、第一層処理の結果を中継装置21に返却する。   The progress determination unit 215 determines a transaction based on the difference between the current time and the time recorded in the storage unit 214 (step S3 in FIG. 4). The transmission unit 213 requests the resource manager 22 for a list of transactions that have been processed by the first layer process (step S4 in FIG. 4). The resource manager 22 returns the result of the first layer process to the relay device 21.

中継装置21は、トランザクションの決定に基づき、記憶部214に登録されているトランザクションに対して第二層処理を送信する(図4ステップS5)。記録部214は、登録されているトランザクション情報を更新する(図4のステップS6)。   Based on the transaction determination, the relay device 21 transmits the second layer process to the transaction registered in the storage unit 214 (step S5 in FIG. 4). The recording unit 214 updates the registered transaction information (step S6 in FIG. 4).

これらの処理によって、リソースマネージャ22の更新処理は正常に完了する。   With these processes, the update process of the resource manager 22 is normally completed.

次に、異常が発生した場合(ケース2)、すなわち第一層処理が未完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。   Next, processing when an abnormality occurs (case 2), that is, when a failure occurs in the server device 1-1 when the first layer processing is not completed will be described.

まず、中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると、経過判断部215は、記憶部214からトランザクションの状態を取得する。この場合、経過判断部215は、記憶部214にトランザクションの状態が記録されていないため、トランザクションとしてロールバックに決定する。   First, when the disconnection detection unit 211 of the relay device 21 detects the stop of the server device 1-1, the progress determination unit 215 acquires the transaction state from the storage unit 214. In this case, since the transaction state is not recorded in the storage unit 214, the progress determination unit 215 determines to roll back as a transaction.

中継装置21は、このトランザクションの決定に基づき、記憶部214に登録されているトランザクションに対してロールバック処理を要求する。記録部214は、登録されているトランザクション情報を削除する。   The relay device 21 requests a rollback process for the transaction registered in the storage unit 214 based on the determination of the transaction. The recording unit 214 deletes the registered transaction information.

これらの処理によって、第一層処理が完了していないトランザクションはすべてロールバック処理を完了する。   By these processes, all transactions for which the first layer process has not been completed complete the rollback process.

さらに、異常が発生した場合(ケース3)、すなわち第二層処理が完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。   Furthermore, a process when an abnormality occurs (Case 3), that is, when a failure occurs in the server device 1-1 when the second layer process is completed will be described.

まず、中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると、経過判断部215は、記憶部214からトランザクションの状態を取得する。この場合、経過判断部215は、記憶部214にトランザクションの状態が記録されていないため、以後の処理は実施されない。リソースマネージャ22は、すべて処理を完了しているため、サーバ装置1−2からのトランザクション処理を妨げることはない。   First, when the disconnection detection unit 211 of the relay device 21 detects the stop of the server device 1-1, the progress determination unit 215 acquires the transaction state from the storage unit 214. In this case, since the transaction state is not recorded in the storage unit 214, the progress determination unit 215 does not perform the subsequent processing. Since the resource manager 22 has completed the processing, the transaction processing from the server device 1-2 is not hindered.

次に、サーバ装置1−1が障害から回復した場合、すなわちトランザクションマネージャ111−1が処理を再開する場合について説明する。   Next, a case where the server apparatus 1-1 recovers from a failure, that is, a case where the transaction manager 111-1 resumes processing will be described.

トランザクションマネージャ111−1は、トランザクション決定時、すなわちすべてのリソースマネージャ22,31に対しての第一層処理が完了している場合、トランザクションのリカバリ処理を実行する。   The transaction manager 111-1 executes transaction recovery processing when a transaction is determined, that is, when the first layer processing for all the resource managers 22 and 31 is completed.

図5を参照すると、サーバ装置1−1の再起動後、トランザクションマネージャ111−1は、リソースマネージャ22のトランザクションの状態を確認するため、トランザクション確認要求を発行する(図5のb1)。   Referring to FIG. 5, after the server apparatus 1-1 is restarted, the transaction manager 111-1 issues a transaction confirmation request in order to confirm the transaction state of the resource manager 22 (b1 in FIG. 5).

中継装置21上の受信部212は、トランザクション状態確認要求を受信すると、記録部214に記録されているトランザクション状態を返却する(図5のb2)。   When receiving the transaction status confirmation request, the receiving unit 212 on the relay device 21 returns the transaction status recorded in the recording unit 214 (b2 in FIG. 5).

トランザクションマネージャ111−1は、トランザクション状態と整合を取ると共に、リソースマネージャ31のトランザクションが完了していなければ、トランザクション処理を再開する(図5のb3)。この際、トランザクションマネージャ111−1と中継装置21とから返却された状態に不一致があれば、トランザクションマネージャ111−1は、ログ等に状態を出力する。   The transaction manager 111-1 matches the transaction state, and resumes transaction processing if the transaction of the resource manager 31 is not completed (b3 in FIG. 5). At this time, if there is a discrepancy between the status returned from the transaction manager 111-1 and the relay device 21, the transaction manager 111-1 outputs the status to a log or the like.

以上の処理により仕掛かり中のトランザクションは、完了、あるいは状態不一致の状態となり、完了する。状態不一致のトランザクションについては、運用管理者が手動にて状態を一致させる。   Through the above processing, the transaction in progress is completed or is in a state inconsistent state and is completed. For transactions that do not match the status, the operation administrator manually matches the status.

このように、本実施の形態では、中継装置21がトランザクションマネージャ111−1を含むサーバ装置1−1の異常終了を検出し、独自にトランザクションを決定するので、トランザクションマネージャ111−1の復旧を待たずに、リソースマネージャ22,31を更新する。   As described above, in the present embodiment, the relay device 21 detects the abnormal end of the server device 1-1 including the transaction manager 111-1, and independently determines the transaction, so the recovery of the transaction manager 111-1 is awaited. Instead, the resource managers 22 and 31 are updated.

本実施の形態では、トランザクションマネージャ111−1の復旧を要求しないため、アプリケーションサーバ11を含むサーバ装置1−1はクラスタ構成等の特別な構成をとる必要がなく、装置の再起動等が行われない状況においても、他のサーバ装置からの処理がリソースマネージャ22,31の更新のためのロック等により中断されることはない。   In the present embodiment, since the recovery of the transaction manager 111-1 is not requested, the server apparatus 1-1 including the application server 11 does not need to take a special configuration such as a cluster configuration, and the apparatus is restarted. Even in such a situation, processing from other server devices is not interrupted by a lock for updating the resource managers 22 and 31 or the like.

したがって、本実施の形態では、中継装置21がトランザクションを決定し、リソースマネージャ22,31を更新するため、トランザクションマネージャ111−1の障害時にトランザクションマネージャ111−1の状態にかかわらず、短時間でリソースマネージャ22,31のロックを解放することができる。   Therefore, in this embodiment, since the relay device 21 determines the transaction and updates the resource managers 22 and 31, the resource can be quickly acquired regardless of the state of the transaction manager 111-1 when the transaction manager 111-1 fails. The locks of the managers 22 and 31 can be released.

よって、本実施の形態では、サーバ装置1−1に障害が発生した場合にリソースマネージャ22,31のロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。   Therefore, in this embodiment, when a failure occurs in the server device 1-1, the lock time of the resource managers 22 and 31 can be minimized, and the stop time of the entire system can be minimized.

尚、上記の実施の形態では、2台のサーバ装置を用いて、データの更新を行う場合について説明したが、サーバマシンの数、端末装置の数、リソースマネージャの数に制限はない。また、リースマネージャはデータベースやメッセージキューシステム等、トランザクションマネージャと連携する機能を有しているものであり、機能的な制限はない。   In the above embodiment, the case of updating data using two server devices has been described. However, the number of server machines, the number of terminal devices, and the number of resource managers are not limited. In addition, the lease manager has a function to cooperate with the transaction manager, such as a database and a message queue system, and has no functional limitation.

本発明は、複数のデータベースを参照する情報更新装置や、情報更新装置をコンピュータに実現するためのプログラムといった用途に適用することができる。   The present invention can be applied to applications such as an information updating apparatus that refers to a plurality of databases and a program for realizing the information updating apparatus in a computer.

本発明の第1の実施の形態による分散トランザクション処理システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the distributed transaction processing system by the 1st Embodiment of this invention. 本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートである。It is a sequence chart which shows the flow of operation | movement when the transaction in the distributed transaction processing system by the 1st Embodiment of this invention is complete | finished normally. 本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートである。It is a sequence chart which shows the flow of operation | movement when the transaction in the distributed transaction processing system by the 1st Embodiment of this invention is complete | finished normally. 本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置に異常が発生した場合の動作の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement when abnormality has generate | occur | produced in the server apparatus in the distributed transaction processing system by the 1st Embodiment of this invention. 本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置が障害からの回復した場合の動作の流れを示すシーケンスチャートである。It is a sequence chart which shows the flow of operation | movement when a server apparatus recovers from a failure in the distributed transaction processing system by the 1st Embodiment of this invention.

符号の説明Explanation of symbols

1−1,1−2,2,3 サーバ装置
4−1,4−2 端末装置
5 負荷分散装置
11−1,11−2 アプリケーションサーバ
21 中継装置
22,31 リソースマネージャ
111−1,111−2 トランザクションマネージャ
112−1,112−2 アプリケーション
211 切断検出部
212 受信部
213 送信部
214 記憶部
215 経過判断部
1-1, 1-2,2,3 server device
4-1, 4-2 Terminal equipment
5 Load balancer 11-1, 11-2 Application server
21 Relay device
22, 31 Resource manager 111-1, 111-2 Transaction manager 112-1, 112-2 Application
211 Cutting detection unit
212 Receiver
213 Transmitter
214 Storage unit
215 progress judgment part

Claims (19)

トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムであって、
前記中継装置は、前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信手段と、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを有することを特徴とする分散トランザクション処理システム。
A distributed transaction processing system including a transaction manager and a relay device having a resource manager , wherein the resource manager performs a two-layer commitment process of a transaction based on an instruction of the transaction manager,
The relay device receives and transmits the instruction from the transaction manager and transmits to the resource manager, detection means for detecting an abnormal end of the transaction manager, and when the detection means detects the abnormal end And a means for executing a second layer process of the two-layer commitment process of a transaction on the resource manager based on an elapsed time from the completion of the first layer process of the two-layer commitment process. Transaction processing system.
前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項1記載の分散トランザクション処理システム。   2. The distributed transaction processing system according to claim 1, wherein when the abnormal termination is detected, the resource manager is updated without waiting for the recovery of the transaction manager. 前記中継装置は、前記中継装置が決定したトランザクションの状態を保持する記憶手段を含み、
前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項1または請求項2記載の分散トランザクション処理システム。
The relay device includes storage means for holding a transaction state determined by the relay device,
Whether an abnormality has occurred in the transaction manager when the first layer processing has been completed, or has an abnormality occurred in the transaction manager in a state where the first layer processing has not been completed, based on the storage contents of the storage means 3. The distributed transaction processing system according to claim 1, wherein it is determined whether an abnormality has occurred in the transaction manager in a state where the second layer processing is completed.
前記中継装置は、前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項3記載の分散トランザクション処理システム。   4. The distributed transaction processing system according to claim 3, wherein the relay apparatus determines the transaction based on the storage contents of the storage unit and updates the resource manager. 前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項3または請求項4記載の分散トランザクション処理システム。   The transaction information on which the first layer processing has been completed is obtained from the resource manager with reference to the storage means, and the transaction that has completed the first layer processing is determined in an appropriate state. The distributed transaction processing system according to claim 3 or claim 4. 前記異常終了から回復した場合に前記トランザクションマネージャと前記中継装置との間でトランザクションの整合性チェックを実施することを特徴とする請求項1から請求項5のいずれか記載の分散トランザクション処理システム。   6. The distributed transaction processing system according to claim 1, wherein a transaction consistency check is performed between the transaction manager and the relay device when recovery from the abnormal termination. トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いるサーバ装置であって、
前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信手段と、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを有することを特徴とするサーバ装置。
A server device used in a distributed transaction processing system including a transaction manager and a relay device having a resource manager , wherein the resource manager performs a two-layer commitment process of a transaction based on an instruction of the transaction manager,
Transmission / reception means for receiving the instruction from the transaction manager and transmitting it to the resource manager, detection means for detecting abnormal termination of the transaction manager, and the two-layer commitment processing when the detection means detects the abnormal termination A server apparatus comprising: an execution unit configured to execute a second layer process of the two-layer commitment process of a transaction on the resource manager based on an elapsed time from the completion of the first layer process.
前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項7記載のサーバ装置。   8. The server apparatus according to claim 7, wherein when the abnormal end is detected, the resource manager is updated without waiting for the transaction manager to recover. 決定したトランザクションの状態を保持する記憶手段を含み、
前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項7または請求項8記載のサーバ装置。
Storage means for holding the state of the determined transaction;
Whether an abnormality has occurred in the transaction manager when the first layer processing has been completed, or has an abnormality occurred in the transaction manager in a state where the first layer processing has not been completed, based on the storage contents of the storage means 9. The server device according to claim 7, wherein whether or not an abnormality has occurred in the transaction manager in a state where the second layer processing has been completed is determined.
前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項9記載のサーバ装置。   The server apparatus according to claim 9, wherein the resource manager is updated by determining the transaction based on a storage content of the storage unit. 前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項9または請求項10記載のサーバ装置。   The transaction information on which the first layer processing has been completed is obtained from the resource manager with reference to the storage means, and the transaction that has completed the first layer processing is determined in an appropriate state. The server device according to claim 9 or claim 10. 前記異常終了から回復した場合に前記トランザクションマネージャとの間でトランザクションの整合性チェックを実施することを特徴とする請求項7から請求項11のいずれか記載のサーバ装置。   12. The server apparatus according to claim 7, wherein a transaction consistency check is performed with the transaction manager when the abnormal end is recovered. トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いる分散トランザクションの障害復旧方法であって、
前記中継装置が、前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信処理と、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを実行することを特徴とする分散トランザクションの障害復旧方法。
A distributed transaction failure recovery method used in a distributed transaction processing system including a transaction manager and a relay device having a resource manager , wherein the resource manager performs two-layer commitment processing of transactions based on an instruction of the transaction manager,
The relay device receives the instruction from the transaction manager and transmits it to the resource manager, a detection process for detecting abnormal termination of the transaction manager, and the abnormal termination is detected in the detection process And executing an execution process for executing a second layer process of the two-layer commitment process of a transaction on the resource manager based on an elapsed time from the completion of the first layer process of the two-layer commitment process. A failure recovery method for distributed transactions.
前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項13記載の分散トランザクションの障害復旧方法。   14. The distributed transaction failure recovery method according to claim 13, wherein the resource manager is updated without waiting for recovery of the transaction manager when the abnormal termination is detected. 前記中継装置において、前記中継装置が決定したトランザクションの状態を記憶手段に保持しておき、
前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項13または請求項14記載の分散トランザクションの障害復旧方法。
In the relay device, the state of the transaction determined by the relay device is held in the storage means,
Whether an abnormality has occurred in the transaction manager when the first layer processing has been completed, or has an abnormality occurred in the transaction manager in a state where the first layer processing has not been completed, based on the storage contents of the storage means 15. The distributed transaction failure recovery method according to claim 13 or 14, further comprising: determining whether an abnormality has occurred in the transaction manager in a state where the second layer processing has been completed.
前記中継装置が、前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項15記載の分散トランザクションの障害復旧方法。   16. The distributed transaction failure recovery method according to claim 15, wherein the relay device determines the transaction based on the storage contents of the storage means and updates the resource manager. 前記中継装置が、前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項15または請求項16記載の分散トランザクションの障害復旧方法。   The relay device refers to the storage means, obtains transaction information that the first layer processing has been completed from the resource manager, and determines that the transaction that has completed the first layer processing is in an appropriate state. The distributed transaction failure recovery method according to claim 15 or 16, characterized in that: 前記異常終了から回復した場合に前記トランザクションマネージャと前記中継装置との間でトランザクションの整合性チェックを実施することを特徴とする請求項13から請求項17のいずれか記載の分散トランザクションの障害復旧方法。   18. The distributed transaction failure recovery method according to claim 13, wherein a transaction consistency check is performed between the transaction manager and the relay device when recovered from the abnormal termination. . トランザクションマネージャとリソースマネージャを有する中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムにおいて前記中継装置内の中央処理装置が実行するプログラムであって、
前記トランザクションマネージャの前記指示を受信して前記リソースマネージャに送信する送受信処理と、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを含むことを特徴とするプログラム。
A program executed by a central processing unit in the relay device in a distributed transaction processing system including a transaction manager and a relay device having a resource manager , wherein the resource manager performs two-layer commitment processing of transactions based on instructions from the transaction manager. There,
A transmission / reception process for receiving the instruction from the transaction manager and transmitting it to the resource manager, a detection process for detecting an abnormal end of the transaction manager, and the two layers when the abnormal end is detected in the detection process An execution process for executing a second layer process of the two-layer commitment process of a transaction on the resource manager based on an elapsed time from the completion of the first layer process of the commitment process.
JP2008320366A 2008-12-17 2008-12-17 Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor Active JP5515286B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008320366A JP5515286B2 (en) 2008-12-17 2008-12-17 Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008320366A JP5515286B2 (en) 2008-12-17 2008-12-17 Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor

Publications (2)

Publication Number Publication Date
JP2010146134A JP2010146134A (en) 2010-07-01
JP5515286B2 true JP5515286B2 (en) 2014-06-11

Family

ID=42566541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008320366A Active JP5515286B2 (en) 2008-12-17 2008-12-17 Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor

Country Status (1)

Country Link
JP (1) JP5515286B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317913B (en) * 2011-07-30 2016-11-16 华为技术有限公司 A kind of transaction recovery method and transaction recovery device
US9667475B2 (en) 2014-02-28 2017-05-30 Red Hat, Inc. Systems and methods for communicating information of participants registered with a sub-coordinator during distributed transaction processing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259397A (en) * 1993-03-04 1994-09-16 Hitachi Ltd Decentralized transaction processing system
JP3392236B2 (en) * 1994-11-04 2003-03-31 富士通株式会社 Distributed transaction processing system
JPH1074155A (en) * 1996-04-22 1998-03-17 Fujitsu Ltd Recovery method for transaction and program storage medium
JPH10228405A (en) * 1996-12-09 1998-08-25 Toshiba Corp Transaction management system and its method
JP2000020619A (en) * 1998-06-30 2000-01-21 Oki Electric Ind Co Ltd Transaction compensation system

Also Published As

Publication number Publication date
JP2010146134A (en) 2010-07-01

Similar Documents

Publication Publication Date Title
CN109542639B (en) Processing method and processing device for guaranteeing consistency of microservice calling data
US8880486B2 (en) Distributed database system utilizing an extended two-phase-commit process
US8504873B1 (en) Method and apparatus for providing in-memory checkpoint services within a distributed transaction
CN109144748B (en) Server, distributed server cluster and state driving method thereof
US20080288812A1 (en) Cluster system and an error recovery method thereof
JP2007226400A (en) Computer management method, computer management program, stand-by server for managing configuration of execution server, and computer system
CN106843749A (en) Write request processing method, device and equipment
CN110413687B (en) Distributed transaction fault processing method and related equipment based on node interaction verification
CN102317913A (en) Transaction recovery method and apparatus
JPH09204341A (en) Numbering mechanism, data compatibility confirming mechanism, transaction rerun mechanism and distributed transaction processing system
US6842763B2 (en) Method and apparatus for improving message availability in a subsystem which supports shared message queues
US8880552B2 (en) Database system and database control method
JP5515286B2 (en) Distributed transaction processing system, server apparatus, and distributed transaction failure recovery method used therefor
JP2007058506A (en) Document management server, document management system, and document management program and its recording medium
EP4060514A1 (en) Distributed database system and data disaster backup drilling method
CN107465725B (en) Heterogeneous long transaction processing system and method based on client information control system
JP5480046B2 (en) Distributed transaction processing system, apparatus, method and program
CN112491633B (en) Fault recovery method, system and related components of multi-node cluster
CN115396296A (en) Service processing method and device, electronic equipment and computer readable storage medium
US11500857B2 (en) Asynchronous remote calls with undo data structures
CN114185590A (en) Application system operation and maintenance configuration management method and device
CN114356888A (en) Transaction processing method and device, storage medium and electronic equipment
CN112231601A (en) Link management method, device, equipment and computer storage medium
JP6856574B2 (en) Service continuation system and service continuation method
CN110580232B (en) Lock management method and device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140317

R150 Certificate of patent or registration of utility model

Ref document number: 5515286

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150