JP2010146134A - 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法 - Google Patents

分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法 Download PDF

Info

Publication number
JP2010146134A
JP2010146134A JP2008320366A JP2008320366A JP2010146134A JP 2010146134 A JP2010146134 A JP 2010146134A JP 2008320366 A JP2008320366 A JP 2008320366A JP 2008320366 A JP2008320366 A JP 2008320366A JP 2010146134 A JP2010146134 A JP 2010146134A
Authority
JP
Japan
Prior art keywords
transaction
manager
layer
processing
resource manager
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.)
Granted
Application number
JP2008320366A
Other languages
English (en)
Other versions
JP5515286B2 (ja
Inventor
Shinjiro Yagi
真二郎 八木
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/ja
Publication of JP2010146134A publication Critical patent/JP2010146134A/ja
Application granted granted Critical
Publication of JP5515286B2 publication Critical patent/JP5515286B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】 障害が発生した場合にリソースマネージャのロック時間を最小にし、システム全体の停止時間を最小限にすることが可能な分散トランザクション処理システムを提供する。
【解決手段】 分散トランザクション処理システムは、トランザクションマネージャ(111−1,111−2)とリソースマネージャ(22,31)と中継装置(21)とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う。中継装置(21)は、トランザクションマネージャの異常終了を検出する検出手段(211)と、検出手段が異常終了を検出した場合に二層コミットメント処理の第一層処理完了からの経過時間に基づいてリソースマネージャに対してトランザクションの二層コミットメント処理の第二層処理を実行する実行手段(215)とを有する。
【選択図】 図1

Description

本発明は分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法並びにそのプログラムに関し、特に障害発生時における分散トランザクションの障害復旧に関する。
本発明に関連する分散トランザクション処理システムでは、複数のリソースマネージャを有し、それら複数のリソースマネージャのコミットメントを正しく行うために、トランザクションマネージャが二層コミットメントの手続きを実施している。
以下、二層コミットメント処理の概略について説明する。二層コミットメント処理は、第一層処理と第二層処理とからなっている。トランザクションの更新処理では、トランザクションマネージャが第1層処理として各リソースマネージャに対してプリペアリクエストを発行する。各リソースマネージャはコミットメントの可否をトランザクションマネージャに返答する。
トランザクションマネージャは、全てのリソースマネージャから返答を受け取ると、全てのリソースマネージャからコミットメント可能の返答を受け取った場合、第二層処理としてコミットメントリクエストを発行する。トランザクションマネージャは、全てのリソースマネージャから第二層処理の返答を受け取った時点で、一連のトランザクションを完了する。
第一層処理において、一つ以上のリソースマネージャからコミット不可の返答を受け取った場合、トランザクションマネージャは、第二層処理としてロールバックリクエストを発行し、全てのリソースマネージャから返答を受け取った時点で一連のトランザクションを完了する。
トランザクション処理は、トランザクション実行中にトランザクションマネージャが動作するサーバ装置が停止した場合に未完了状態となり、トランザクションに関連するリソースマネージャは、データベースの更新処理が完了するまでの間、他からの更新が行われないようにするためにロックされているので、使用不能状態となっている。トランザクション処理は、トランザクションマネージャが動作するサーバ装置が起動した際に再開される。
アプリケーションの信頼性を高める場合は、稼動系のサーバ装置と待機系のサーバ装置との対からなるクラスタを構成する。この構成において、トランザクションマネージャは、稼動系のサーバ装置が停止した場合、直ちに待機系のサーバ装置が起動してトランザクション処理が再開され、リソースマネージャのロックが解放される。
本発明に関連する他の分散トランザクションの障害復旧方式としては、同一ノード内にトランザクションをリカバリするための装置を用意する方式(例えば、特許文献1参照)、障害発生時に仕掛かり中のトランザクションの決着処理を短時間に行う方式(例えば、特許文献2参照)が提案されている。
特開2005−250998号公報 特開2004−234203号公報
しかしながら、近年、アプリケーションの信頼性を高めるために、図1で示すように、負荷分散装置を用いて複数のサーバ装置へ処理を振り分けている。この方式では、サーバ装置に待機系を配置しない構成をとる。
そのため、あるサーバ装置が停止した場合、そのサーバ装置上で動作していたトランザクションは代替装置での起動が行われない。よって、リソースマネージャの更新中の領域は、他のトランザクションから参照不可であるため、トランザクションが回復以前に他のサーバ装置からリソースマネージャへの処理が行われると、システム全体が停止してしまうという問題がある。
本発明に関連する分散トランザクション処理システムの問題点は、サーバ障害等が発生した場合に、トランザクションが回復するのに時間がかかるということである。
その理由は、上記の特許文献1の方式の場合、トランザクション復旧手段やトランザクション情報管理テーブルとトランザクション実行手段が同一サーバ上で動作するため回復ができず、上記の特許文献2の方式の場合、トランザクション復旧手段を含むサーバがダウンすると、トランザクションの回復手段がないためである。
そこで、本発明の目的は上記の問題点を解消し、障害が発生した場合にリソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法並びにそのプログラムを提供することにある。
本発明による分散トランザクション処理システムは、トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムであって、
前記中継装置は、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを備えている。
本発明によるサーバ装置は、トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いるサーバ装置であって、
前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを備えている。
本発明による分散トランザクションの障害復旧方法は、トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いる分散トランザクションの障害復旧方法であって、
前記中継装置が、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを実行している。
本発明によるプログラムは、トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムにおいて前記中継装置内の中央処理装置が実行するプログラムであって、
前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを含むことを特徴とする。
本発明は、上記のような構成及び動作とすることで、障害が発生した場合にリソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができるという効果が得られる。
次に、本発明の実施の形態について図面を参照して説明する。まず、本発明による分散トランザクション処理システムの概要について説明する。本発明による分散トランザクション処理システムは、端末装置とサーバ装置と負荷分散装置とをLAN(Local Area Network)で接続し、端末装置からサーバ装置に対してデータの更新を行うシステムである。
上記のシステムにおいて、サーバ装置は、リソースマネージャと中継装置とからなり、中継装置は切断検出部と、受信部と、送信部と、記憶部と、経過判断部とを備え、サーバ装置の障害によりトランザクションの継続が困難になった場合に、中継装置がトランザクションを決定することによって、リソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。
尚、本発明による分散トランザクション処理システムは、上述した背景技術のように、複数のリソースマネージャを有し、それら複数のリソースマネージャのコミットメントを正しく行うために、トランザクションマネージャが二層コミットメントの手続きを実施しているものとする。
本発明による分散トランザクション処理システムでは、サーバ装置の障害が発生した場合に、第一層処理からの経過時間に基づいてトランザクションの状態を決定することで、システム全体での処理を継続している。これによって、本発明による分散トランザクション処理システムでは、トランザクションマネージャが解決するトランザクションをリソースマネージャ側で決定することによって、リソースマネージャのロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。
図1は本発明の第1の実施の形態による分散トランザクション処理システムの構成例を示すブロック図である。図1において、本発明の第1の実施の形態による分散トランザクション処理システムは、負荷分散装置5に接続された2台のサーバ装置1−1,1−2と、データベース等のリソースマネージャが動作するサーバ装置2及びサーバ装置3と、端末装置4−1,4−2と、これらを接続するネットワークとから構成されている。
サーバ装置1−1は、アプリケーションサーバ11−1を備え、アプリケーションサーバ11−1は、トランザクションマネージャ111−1と、アプリケーション112−1とを含んでいる。サーバ装置1−2は、アプリケーションサーバ11−2を備え、アプリケーションサーバ11−2は、トランザクションマネージャ111−2と、アプリケーション112−2とを含んでいる。
サーバ装置2は、中継装置21と、リソースマネージャ22とを備え、中継装置21は、切断検出部211と、受信部212と、送信部213と、記憶部214と、経過判断部215とを含んでいる。サーバ装置3は、リソースマネージャ31を備えている。
トランザクションマネージャ111−1は、サーバ装置1−1のアプリケーションサーバ11−1上で動作を行い、リソースマネージャ22とリソースマネージャ31との分散トランザクションを管理する。
アプリケーション112−1は、端末装置4−1と端末装置4−2とから要求を受け、リソースマネージャ22とリソースマネージャ31との情報の更新を行い、トランザクションマネージャ111−1に対してコミットメントもしくはロールバック要求を行う。
切断検出部211は、サーバ装置2の中継装置21上で動作し、トランザクションマネージャ111−1,111−2の動作停止を検出する。受信部212は、サーバ装置2の中継装置21上で動作し、アプリケーション112−1,112−2及びトランザクションマネージャ111−1,111−2からリソースマネージャ22への通信を受信する。
送信部213は、サーバ装置2の中継装置21上で動作し、受信部212で受信した通信内容をリソースマネージャ22に送信すると共に、リソースマネージャ22が停止した時にリソースマネージャ22にトランザクション完了通知を送信する。
記憶部214は、サーバ装置2の中継装置21上で動作し、中継装置21が決定したトランザクションの状態を保持する。
図2及び図3は本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートであり、図4は本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置に異常が発生した場合の動作の流れを示すフローチャートである。
図5は本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置が障害からの回復した場合の動作の流れを示すシーケンスチャートである。これら図1〜図5を参照して本発明の第1の実施の形態による分散トランザクション処理システム全体の動作について説明する。尚、図2〜図5の処理において、サーバ装置2の中継装置21が実行する処理は、図示せぬCPU(中央処理装置)がプログラムを実行することで実現される。
以下の説明においては、端末装置4−1から負荷分散装置5を介してサーバ装置1−1に処理を行うものとする。また、端末装置4−1からの要求は、サーバ装置2、サーバ装置3上のリソースマネージャ22とリソースマネージャ31とを更新するものとする。
以下、
・正常に終了する場合の動作
・異常が発生した場合の動作(ケース1:第一層処理が完了した状態でサーバ装置1−1に異常が発生)
・異常が発生した場合の動作(ケース2:第一層処理が未完了の状態でサーバ装置1−1に異常が発生)
・異常が発生した場合の動作(ケース3:第二層処理が完了した状態でサーバ装置1−1に異常が発生)
・異常発生後に回復した場合の動作(サーバ装置1−1が再起動)
という各ケースの動作について説明する。
まず、正常に終了する場合、すなわちトランザクションマネージャ111−1からリソースマネージャ22とリソースマネージャ31への二層コミットメント処理が正常に終了した場合の処理について説明する。
図2及び図3を参照すると、まず、端末装置4−1が負荷分散装置5に対してトランザクション処理要求を発行する(図2のa1)。負荷分散装置5は、接続されるサーバ装置1−1に対して、端末装置4−1から受信したトランザクション処理要求を転送する(図2のa2)。
サーバ装置1−1のアプリケーションサーバ11は、トランザクション処理要求を受信すると、トランザクションマネージャ111−1を用いてトランザクションを開始する。ここで開始されるトランザクションを[T1]とする(図2のa3)。
アプリケーションサーバ11上のアプリケーション112−1は、リソースマネージャ22を更新するため、中継装置21に対して更新処理を要求する(図2のa4)。
中継装置21上の受信部212は、アプリケーション112−1からの更新要求を受信すると、その更新要求を送信部213を用いてリソースマネージャ22に送信する(図2のa5)。その後、リソースマネージャ22はデータの更新を行う。リソースマネージャ22の更新後、中継装置21の記憶部214は、現在の時刻、トランザクション情報、サーバ装置1−1の情報を記録する(図2のa6)。
アプリケーションサーバ11上のアプリケーション112−1は、リソースマネージャ31を更新する(図2のa7)。アプリケーション112−1の処理完了後、アプリケーションサーバ11は、トランザクションマネージャ111−1を用いてトランザクション[T1]のコミットメント処理を行う(図2のa8)。
トランザクションマネージャ111−1は、リソースマネージャ22の第一層処理を開始し、中継装置21に対して第一層処理の開始要求を発行する(図2のa9)。
中継装置21上の受信部212は、第一層処理の開始要求を受けると、送信部213を用いてリソースマネージャ22に第一層処理の開始要求を送信する(図2のa10)。リソースマネージャ22は、第一層処理を実行する。
その第一層処理の完了後、中継装置21上の記憶部214は、上記のa6の処理で記憶した時刻を現在の時刻で更新すると共に、第一層処理の完了の状態を記憶する(図3のa11)。
リソースマネージャ22の第一層処理の完了後、トランザクションマネージャ111−1は、リソースマネージャ31に第一層処理を要求する(図3のa12)。リソースマネージャ31は、第一層処理を実行する。
リソースマネージャ22とリソースマネージャ31とにおいて第一層処理が完了した後、トランザクションマネージャ111−1は、第二層処理を開始する。上記の第一層処理と同様に、トランザクションマネージャ111−1は、リソースマネージャの第二層処理要求を中継装置21に対して発行する(図3のa13)。
第二層処理の開始要求を受けた中継装置21上の受信部212は、送信部213を用いてリソースマネージャ22に第二層処理要求の開始を送信する(図3のa14)。リソースマネージャ22は、第二層処理を実行する。
その第二層処理の完了後、中継装置21上の記憶部214は、上記のa6の処理とa11の処理とで記憶した情報の削除を行う(図3のa15)。
トランザクションマネージャ111−1は、リソースマネージャ31に対し、第二層処理の開始を要求する(図3のa16)。リソースマネージャ31は、第二層処理を実行する。
リソースマネージャ22及びリソースマネージャ31で第二層処理が完了することによって、トランザクション[T1]は完了する(図3のa17)。
続いて、異常が発生した場合(ケース1)、すなわち第一層処理の完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。
図4を参照すると、先ず中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると(図4ステップS1)、経過判断部215は、記憶部214からトランザクションの状態を取得する(図4ステップS2)。
経過判断部215は、現在の時刻と記憶部214に記録されている時刻との差分よりトランザクションの決定を行う(図4ステップS3)。送信部213は、リソースマネージャ22に対して第一層処理が処理済みのトランザクションの一覧を要求する(図4ステップS4)。リソースマネージャ22は、第一層処理の結果を中継装置21に返却する。
中継装置21は、トランザクションの決定に基づき、記憶部214に登録されているトランザクションに対して第二層処理を送信する(図4ステップS5)。記録部214は、登録されているトランザクション情報を更新する(図4のステップS6)。
これらの処理によって、リソースマネージャ22の更新処理は正常に完了する。
次に、異常が発生した場合(ケース2)、すなわち第一層処理が未完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。
まず、中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると、経過判断部215は、記憶部214からトランザクションの状態を取得する。この場合、経過判断部215は、記憶部214にトランザクションの状態が記録されていないため、トランザクションとしてロールバックに決定する。
中継装置21は、このトランザクションの決定に基づき、記憶部214に登録されているトランザクションに対してロールバック処理を要求する。記録部214は、登録されているトランザクション情報を削除する。
これらの処理によって、第一層処理が完了していないトランザクションはすべてロールバック処理を完了する。
さらに、異常が発生した場合(ケース3)、すなわち第二層処理が完了時にサーバ装置1−1で障害が発生した場合の処理について説明する。
まず、中継装置21の切断検出部211がサーバ装置1−1の停止を検出すると、経過判断部215は、記憶部214からトランザクションの状態を取得する。この場合、経過判断部215は、記憶部214にトランザクションの状態が記録されていないため、以後の処理は実施されない。リソースマネージャ22は、すべて処理を完了しているため、サーバ装置1−2からのトランザクション処理を妨げることはない。
次に、サーバ装置1−1が障害から回復した場合、すなわちトランザクションマネージャ111−1が処理を再開する場合について説明する。
トランザクションマネージャ111−1は、トランザクション決定時、すなわちすべてのリソースマネージャ22,31に対しての第一層処理が完了している場合、トランザクションのリカバリ処理を実行する。
図5を参照すると、サーバ装置1−1の再起動後、トランザクションマネージャ111−1は、リソースマネージャ22のトランザクションの状態を確認するため、トランザクション確認要求を発行する(図5のb1)。
中継装置21上の受信部212は、トランザクション状態確認要求を受信すると、記録部214に記録されているトランザクション状態を返却する(図5のb2)。
トランザクションマネージャ111−1は、トランザクション状態と整合を取ると共に、リソースマネージャ31のトランザクションが完了していなければ、トランザクション処理を再開する(図5のb3)。この際、トランザクションマネージャ111−1と中継装置21とから返却された状態に不一致があれば、トランザクションマネージャ111−1は、ログ等に状態を出力する。
以上の処理により仕掛かり中のトランザクションは、完了、あるいは状態不一致の状態となり、完了する。状態不一致のトランザクションについては、運用管理者が手動にて状態を一致させる。
このように、本実施の形態では、中継装置21がトランザクションマネージャ111−1を含むサーバ装置1−1の異常終了を検出し、独自にトランザクションを決定するので、トランザクションマネージャ111−1の復旧を待たずに、リソースマネージャ22,31を更新する。
本実施の形態では、トランザクションマネージャ111−1の復旧を要求しないため、アプリケーションサーバ11を含むサーバ装置1−1はクラスタ構成等の特別な構成をとる必要がなく、装置の再起動等が行われない状況においても、他のサーバ装置からの処理がリソースマネージャ22,31の更新のためのロック等により中断されることはない。
したがって、本実施の形態では、中継装置21がトランザクションを決定し、リソースマネージャ22,31を更新するため、トランザクションマネージャ111−1の障害時にトランザクションマネージャ111−1の状態にかかわらず、短時間でリソースマネージャ22,31のロックを解放することができる。
よって、本実施の形態では、サーバ装置1−1に障害が発生した場合にリソースマネージャ22,31のロック時間を最小にすることができ、システム全体の停止時間を最小限にすることができる。
尚、上記の実施の形態では、2台のサーバ装置を用いて、データの更新を行う場合について説明したが、サーバマシンの数、端末装置の数、リソースマネージャの数に制限はない。また、リースマネージャはデータベースやメッセージキューシステム等、トランザクションマネージャと連携する機能を有しているものであり、機能的な制限はない。
本発明は、複数のデータベースを参照する情報更新装置や、情報更新装置をコンピュータに実現するためのプログラムといった用途に適用することができる。
本発明の第1の実施の形態による分散トランザクション処理システムの構成例を示すブロック図である。 本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートである。 本発明の第1の実施の形態による分散トランザクション処理システムにおけるトランザクションが正常に終了する場合の動作の流れを示すシーケンスチャートである。 本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置に異常が発生した場合の動作の流れを示すフローチャートである。 本発明の第1の実施の形態による分散トランザクション処理システムにおいてサーバ装置が障害からの回復した場合の動作の流れを示すシーケンスチャートである。
符号の説明
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 経過判断部

Claims (19)

  1. トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムであって、
    前記中継装置は、前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを有することを特徴とする分散トランザクション処理システム。
  2. 前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項1記載の分散トランザクション処理システム。
  3. 前記中継装置は、前記中継装置が決定したトランザクションの状態を保持する記憶手段を含み、
    前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項1または請求項2記載の分散トランザクション処理システム。
  4. 前記中継装置は、前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項3記載の分散トランザクション処理システム。
  5. 前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項3または請求項4記載の分散トランザクション処理システム。
  6. 前記異常終了から回復した場合に前記トランザクションマネージャと前記中継装置との間でトランザクションの整合性チェックを実施することを特徴とする請求項1から請求項5のいずれか記載の分散トランザクション処理システム。
  7. トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いるサーバ装置であって、
    前記トランザクションマネージャの異常終了を検出する検出手段と、前記検出手段が前記異常終了を検出した場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行手段とを有することを特徴とするサーバ装置。
  8. 前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項7記載のサーバ装置。
  9. 決定したトランザクションの状態を保持する記憶手段を含み、
    前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項7または請求項8記載のサーバ装置。
  10. 前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項9記載のサーバ装置。
  11. 前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項9または請求項10記載のサーバ装置。
  12. 前記異常終了から回復した場合に前記トランザクションマネージャとの間でトランザクションの整合性チェックを実施することを特徴とする請求項7から請求項11のいずれか記載のサーバ装置。
  13. トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムに用いる分散トランザクションの障害復旧方法であって、
    前記中継装置が、前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを実行することを特徴とする分散トランザクションの障害復旧方法。
  14. 前記異常終了が検出された場合に前記トランザクションマネージャの復旧を待たずに前記リソースマネージャを更新することを特徴とする請求項13記載の分散トランザクションの障害復旧方法。
  15. 前記中継装置において、前記中継装置が決定したトランザクションの状態を記憶手段に保持しておき、
    前記記憶手段の記憶内容に基づいて、前記第一層処理が完了した状態で前記トランザクションマネージャに異常が発生したか、前記第一層処理が未完了の状態で前記トランザクションマネージャに異常が発生したか、前記第二層処理が完了した状態で前記トランザクションマネージャに異常が発生したかを判断することを特徴とする請求項13または請求項14記載の分散トランザクションの障害復旧方法。
  16. 前記中継装置が、前記記憶手段の記憶内容に基づいて前記トランザクションを決定して前記リソースマネージャの更新を行うことを特徴とする請求項15記載の分散トランザクションの障害復旧方法。
  17. 前記中継装置が、前記記憶手段を参照して前記リソースマネージャより前記第一層処理が完了しているトランザクション情報を入手し、前記第一層処理を完了したトランザクションを適切な状態に確定することを特徴とする請求項15または請求項16記載の分散トランザクションの障害復旧方法。
  18. 前記異常終了から回復した場合に前記トランザクションマネージャと前記中継装置との間でトランザクションの整合性チェックを実施することを特徴とする請求項13から請求項17のいずれか記載の分散トランザクションの障害復旧方法。
  19. トランザクションマネージャとリソースマネージャと中継装置とを含み、トランザクションマネージャの指示に基づいてリソースマネージャがトランザクションの二層コミットメント処理を行う分散トランザクション処理システムにおいて前記中継装置内の中央処理装置が実行するプログラムであって、
    前記トランザクションマネージャの異常終了を検出する検出処理と、前記検出処理にて前記異常終了が検出された場合に前記二層コミットメント処理の第一層処理完了からの経過時間に基づいて前記リソースマネージャに対してトランザクションの前記二層コミットメント処理の第二層処理を実行する実行処理とを含むことを特徴とするプログラム。
JP2008320366A 2008-12-17 2008-12-17 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法 Active JP5515286B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008320366A JP5515286B2 (ja) 2008-12-17 2008-12-17 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008320366A JP5515286B2 (ja) 2008-12-17 2008-12-17 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法

Publications (2)

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

Family

ID=42566541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008320366A Active JP5515286B2 (ja) 2008-12-17 2008-12-17 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法

Country Status (1)

Country Link
JP (1) JP5515286B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317913A (zh) * 2011-07-30 2012-01-11 华为技术有限公司 一种事务恢复方法和事务恢复装置
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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259397A (ja) * 1993-03-04 1994-09-16 Hitachi Ltd 分散トランザクション処理システム
JPH08137707A (ja) * 1994-11-04 1996-05-31 Fujitsu Ltd 分散トランザクション処理システム
JPH1074155A (ja) * 1996-04-22 1998-03-17 Fujitsu Ltd トランザクションのリカバリ方法及びプログラム記憶媒体
JPH10228405A (ja) * 1996-12-09 1998-08-25 Toshiba Corp トランザクション管理システムおよびトランザクション管理方法
JP2000020619A (ja) * 1998-06-30 2000-01-21 Oki Electric Ind Co Ltd トランザクション補償システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259397A (ja) * 1993-03-04 1994-09-16 Hitachi Ltd 分散トランザクション処理システム
JPH08137707A (ja) * 1994-11-04 1996-05-31 Fujitsu Ltd 分散トランザクション処理システム
JPH1074155A (ja) * 1996-04-22 1998-03-17 Fujitsu Ltd トランザクションのリカバリ方法及びプログラム記憶媒体
JPH10228405A (ja) * 1996-12-09 1998-08-25 Toshiba Corp トランザクション管理システムおよびトランザクション管理方法
JP2000020619A (ja) * 1998-06-30 2000-01-21 Oki Electric Ind Co Ltd トランザクション補償システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317913A (zh) * 2011-07-30 2012-01-11 华为技术有限公司 一种事务恢复方法和事务恢复装置
WO2012083697A1 (zh) * 2011-07-30 2012-06-28 华为技术有限公司 一种事务恢复方法和事务恢复装置
CN102317913B (zh) * 2011-07-30 2016-11-16 华为技术有限公司 一种事务恢复方法和事务恢复装置
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

Also Published As

Publication number Publication date
JP5515286B2 (ja) 2014-06-11

Similar Documents

Publication Publication Date Title
CN109542639B (zh) 一种保障微服务调用数据一致性的处理方法、处理装置
US20020064126A1 (en) Recovery following process or system failure
US8504873B1 (en) Method and apparatus for providing in-memory checkpoint services within a distributed transaction
JP5467625B2 (ja) トランザクションを処理する本番システムと該本番システムのバックアップ・システムである代行システムとを含む本番−代行システム
CN106843749A (zh) 写入请求处理方法、装置及设备
CN109144748B (zh) 一种服务器、分布式服务器集群及其状态驱动方法
US20080288812A1 (en) Cluster system and an error recovery method thereof
US8533525B2 (en) Data management apparatus, monitoring apparatus, replica apparatus, cluster system, control method and computer-readable medium
US10110424B1 (en) Node failure recovery tool
CN110413687B (zh) 基于节点互证校验的分布式事务故障处理方法及相关设备
CN102317913A (zh) 一种事务恢复方法和事务恢复装置
CN109189854B (zh) 提供持续业务的方法及节点设备
WO2021115043A1 (zh) 分布式数据库系统和数据灾备演练方法
US20050278688A1 (en) Software component initialization in an ordered sequence
CN107465725B (zh) 基于客户信息控制系统的异构长事务处理系统及方法
JP5515286B2 (ja) 分散トランザクション処理システム、サーバ装置及びそれらに用いる分散トランザクションの障害復旧方法
CN112491633B (zh) 一种多节点集群的故障恢复方法、系统及相关组件
US11500857B2 (en) Asynchronous remote calls with undo data structures
CN114356888A (zh) 事务处理方法及装置、存储介质及电子设备
CN112231601A (zh) 链接管理方法、装置、设备及计算机存储介质
US20050278578A1 (en) Manager component that causes first software component to obtain information from second software component
CN116436768B (zh) 基于交叉心跳监测的自动备援方法、系统、设备及介质
CN110580232B (zh) 一种锁管理的方法及装置
US20050278699A1 (en) Manager component for checkpoint procedures
CN116703584A (zh) 一种基于两阶段提交机制的交易方法、装置、设备及介质

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