JPH10510651A - 最適化された同期化プロシージャ - Google Patents
最適化された同期化プロシージャInfo
- Publication number
- JPH10510651A JPH10510651A JP9506379A JP50637997A JPH10510651A JP H10510651 A JPH10510651 A JP H10510651A JP 9506379 A JP9506379 A JP 9506379A JP 50637997 A JP50637997 A JP 50637997A JP H10510651 A JPH10510651 A JP H10510651A
- Authority
- JP
- Japan
- Prior art keywords
- middleman
- message
- agents
- decision
- resynchronization
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Hardware Redundancy (AREA)
Abstract
(57)【要約】
本発明は、データ処理システム(100)においてトランザクションを同期化するための方法を開示する。トランザクションは、そのトランザクションに参加する複数のエージェント(120−150)及びそのトランザクションをコーディネートするための1つのコーディネータ(110)に影響を与える。エージェントは、それらエージェントの少なくとも1つのセット(130、140)をコーディネートする少なくともミドルマン(120)を含む。コミットするために使用可能であるか又は使用不能であるかを表す意思表示が各エージェント(120−150)からコーディネータ(110)に送られる(510)。コーディネータは、すべての意思表示が受信される時、コミット又はバックアウトの判断を決定する(520)。障害のためにその判断がミドルマン(120)において得られない場合、コミットするために使用可能なセットにおけるエージェント(130、140)の各々にミドルマン(120)から「未知」判断メッセージが送られる(540)。「未知」判断メッセージは使用可能なエージェント(130、140)の各々の再同期化を停止する。ミドルマン(120)が再同期化の責任を持つ場合、その判断がミドルマン(120)において得られる時、再同期化メッセージがその使用可能なエージェント(130、140)の各々に送られる(560)。ミドルマン(120)が再同期化の責任を持たない場合、「既知」判断メッセージがミドルマン(120)からその使用可能なエージェント(130、140)の各々に送られる(570)。「既知」判断メッセージの受信は使用可能なエージェント(130、140)の各々の再同期化を始動する(580)。
Description
【発明の詳細な説明】
最適化された同期化プロシージャ
技術分野
本発明はデータ処理システムにおけるトランザクションの同期化に関するもの
であり、更に詳しく云えば、トランザクションに参加する複数のエージェント及
びそのトランザクションをコーディネートするための1つのコーディネータを含
むデータ処理システムにおいてそのトランザクションの同期化を行うための方法
に関するものである。それらのエージェントは、それらのうちの少なくとも1つ
のエージェントのセットをコーディネートする少なくとも1つのミドルマン(m
iddleman)を含む。その方法は、コミットするために使用可能か又は使
用不能かを表す意思表示(vote)をそれらのエージェントの各々からコーデ
ィネータに送るステップ、及びすべての意思表示が受信された時、コーディネー
タによるコミット又はバックアウトの判断を決定するステップを含む。
背景技術
データ処理システムでは、システム資源に対するアクセス及び更新は、一般に
、個別のトランザクション(又は、作業単位)の実行によって行われる。トラン
ザクションは、変更
がすべて成功する或いは全く成功しないというような、システム資源に関する一
連のコーデイネートされたオペレーションである。これらのオペレーションは、
一般に、トランザクション処理システムにおける記憶装置に保持されたデータに
対して行われる変更である。システム資源は、データベース、データ・テーブル
、ファイル、データ・レコード等を含む。トランザクションが全体として成就さ
れるか或いは全く成就されないというこの特性は、原子性(atomicity
)としても知られている。
この方法では、資源は相互に不整合にならないようにされる。更新オペレーシ
ョンのセットの1つが失敗する場合、他のオペレーションも成功しないであろう
。そこで、作業単位は、必ずしも中間点すべてにおける整合性を保存することな
く、整合状態の資源を他の整合状態に変換する。
トランザクションの原子的性質は、コミット・プロシージャと一般に呼ばれて
いるトランザクション同期化プロシージャによって維持される。資源変更がトラ
ンザクション実行の範囲内で同期化される整合性の論理的ポイントは、コミット
・ポイント又は同期点と呼ばれる。アプリケーションは、同期ポイントを宣言す
ることによって、或いはそのアプリケーションが終了することによって作業単位
を終了する。
トランザクションの原子性は、そのトランザクションの終了時に同期ポイント
が宣言されるまで、そのトランザクションの範囲内で行われた資源更新が未確定
のまま(コミットさ
れないで)保持されることによって得られる。トランザクションが成功する場合
、そのトランザクションの結果は恒久的なものにされる(コミットされる)。そ
のトランザクションが失敗する場合、その不成功のトランザクションの影響はす
べて除去(バックアウト)される。即ち、資源更新は、成功裏に終了した時だけ
その更新を行ったアプリケーション以外のアプリケーションにとっても恒久的に
且つ可視的にされる。各作業単位の期間の間、すべての更新された資源は、更な
る更新アクセスを防ぐためにロックされなければならない。それとは対照的に、
トランザクションがバックアウト(ロールバック)される時、資源は、そのトラ
ンザクションが開始する前に存在した整合状態に回復される。
商業的に入手可能な多くの種々なトランザクション処理システムが存在する。
オンライン・トランザクション処理システムの一例は、IBM社(インターナシ
ョナル・ビジネス・マシーンズ・コーポレーション)によって開発されたCIC
Sシステムである(IBM及びCICSは、インターナショナル・ビジネス・マ
シーンズ・コーポレーションの商標である)。
トランザクション・オペレーションが実行される単一ノードを含む、或いはそ
のようなオペレーションが如何なるトランザクション中でも1つのノードでしか
実行されないようにするトランザクション・データ処理システムでは、単一フェ
ーズの同期化オペレーションによって原子性は強化される。
この点に関しては、トランザクションが終了する時、そのノードは、単一フェー
ズにおいて、変更を恒久的にすることをコミットするか或いはバックアウトする
。
多数のノードを包含する分散システムでは、1つのトランザクションがそのよ
うなノードのうちの複数のものに対して変更を行わせることがある。そのような
システムでは、そのトランザクションに関与したすべてのノードがそれの結果に
同意する場合にだけ原子性を保証することができる。簡単な例は、1つの口座か
ら異なる銀行における他の口座に現金振込を行うための金融アプリケーションで
あり、クリティカルな資源に対する2つの基本的なオペレーション(一方の口座
における貸方及び他方の口座における借方)に関連するものである。これらのオ
ペレーションの両方が成功するか或いは何れも成功しないことを保証することが
重要である。
分散システムは、一般に、原子性を保証するために、2フェーズ・コミット・
プロトコルと呼ばれるトランザクション同期化プロシージャを使用する。この点
に関しては、トランザクションが実行ノードにおいて成功裏に終了し、しかも、
すべてのノード資源マネージャ(又は、エージェント)がそのトランザクション
に関与したオペレーションをコミットすることをリクエストされるものと仮定す
る。そのプロトコルの第1フェーズ(準備フェーズ)では、すべての関連のエー
ジェントがコミットする準備をするようにリクエストされる。それに応答して、
それらエージェントは、個々に、それらの
オペレーションをコミットすべきか或いはバックアウトすべきかをローカルの状
態に基づいて判断する。これらの判断は、意思表示がカウントされる場所である
コーディネータと呼ばれる同期化ロケーションに伝送される。第2フェーズ(コ
ミット・フェーズ)では、すべてのエージェントがコミットするように意思表示
する場合、コミットを望むリクエストが発生され、それに応答してすべてのエー
ジェントがそれらのオペレーションをコミットする。一方、何れのエージェント
もそれらのオペレーションをバックアウトするように意思表示する場合、すべて
のエージェントがそれらのオペレーションをバックアウトするように命令される
。大量のトランザクションを持った大型のシステムでは、その2フェーズ・コミ
ット・プロセスはツリー状にエージェントを構成してもよく、その場合、エージ
ェントのサブセットの1つが、そのサブセットの意思表示をコーディネートする
ための及びメイン・コーディネータに結合された意思表示を送るためのミドルマ
ンとして作用する。
分散システムは、システムの障害、即ち、通信障害又はノード障害から十分に
回復可能であるように編成される。通信障害及び遠隔のノードにおける障害は、
一般に、1つ又は複数のノードへのメッセージの停止によって明らかになる。そ
の障害によって影響される各ノードは、種々の機構によってそれを検出すること
ができる。例えば、その機構は、作業単位が事前設定の最大時間よりも長い間ア
クティブであった時、
それを検出するそのノードにおけるタイマを含む。ノード障害は、一般に、その
ノードの再始動を要求するソフトウエア障害又はそのノード上で走るトランザク
ションの優先使用に関連したデッドロックによるものである。
システム障害は、その作業単位に関連したノードの再同期化を必要とする回復
プロシージャによって管理される。ノード障害は、一般に、その結果として揮発
性記憶装置における情報の喪失を生じるので、作業単位に関連した如何なるノー
ドも、2フェーズ・コミット・プロトコル時にメッセージの伝送と同期して不揮
発性記憶装置に状態変化(チェックポイント)を書き込まなければならない。こ
れらのチェックポイント・データ(又は、ログ・メッセージ)は、そのプロトコ
ルが進行する時に安定した記憶媒体に書き込まれ、ノードの障害の場合に同じプ
ロトコルが整合状態から再始動されることを可能にする。これは再同期化として
知られている。
米国特許第5,311,773号は、開始アプリケーションが他のタスクを進行
させることを可能にしながら、コミット・プロシージャを障害後に非同期的に再
同期化する方法を開示している。しかし、それは、分散作業単位に関与する複数
のパートナ・ノードへのコミュニケーションの中断という問題を処理するもので
はない。
インターナショナル・ビジネス・マシーンズ・コーポレーションによって開発
されたIBMシステム・ネットワーク・アーキテクチャ、即ち、IBM SNA
LU6.2同期点アー
キテクチャは、2つ又はそれ以上の保護された資源相互間のコミットをコーディ
ネートするものとして知られている。そのLU6.2アーキテクチャは、資源コ
ーディネーション、同期点ロギング、及び回復に責任のある同期点マネージャ(
SPM)をサポートする。このアーキテクチャにおいて使用される通信プロトコ
ルの説明は、「LU6.2のためのSNAピア・プロトコル(SNA Peer Protocol
s for LU6.2)」(文献番号SC31−6868−1、IBM社)に見ることが
できる。
ネットワークにまたがる2フェーズ・コミットのための既知のプロトコルによ
る問題は、作業単位のコーディネータとの接触が失われた場合に対してそれらが
十分に対応しないことである。そのような場合、その結果がどのようなものであ
るかを分散作業単位の他方のパートナに直ちに知らせることができない。その判
断は、コーディネータとの接触が行われた後でわかるだけである。
接触が失われた場合、接触が再び行われるまで、パートナを永久に待ち続けさ
せることが可能である。それらのパートナの各々は資源ロックを保つことができ
、アプリケーション・コード及びユーザを長い時間待たせておくことが可能であ
る。そこで、ロック、アプリケーション、及びエンド・ユーザ・スタリーンを解
放するために、オペレータ・アクションが必要である。
この問題に対する既知の解決方法は、パートナとのコミュ
ニケーションを中断すること及びすべてのパートナ相互間の時限再試行ループに
入ることである。この従来技術の方法に伴う幾つかの欠点がある。再試行ループ
は非常に非効率的であり、特に、それらを発生する多くのエージェントが存在す
るか或いはそれらが頻繁に行われる場合に非効率的である。更に、コミュニケー
ションの中断によりオペレーション上の問題が生じことがある。
再試行ループのタイミング次第で作業単位の結果の導出における遅れが生じ、
それは資源更新処理の同時性におけるかなりの低下を生じさせる(特に、多くの
資源が関与する場合)。ノードの再始動時には、システムを過負荷にする多くの
再同期化タスクが存在することがある。多くのコミュニケートするノードが同時
に再始動される場合、デッドロックが生じることもある。
発明の開示
従来技術の上記欠点は、本発明によるミドルマンを使用するシステムにおいて
克服される。従って、本発明は、前述のようなデータ処理システムにおけるトラ
ンザクションの同期化のための方法を提供する。その方法は、障害のためにミド
ルマンにおいて判断が得られない場合、コミットのために使用可能な一組のエー
ジェントの各々にそのミドルマンから「未知(Not Known)」判断メッ
セージを送るステップ(その「未知」判断メッセージは、ミドルマンにおいて判
断が得られる場合、前記使用可能なエージェントの各々の再同期化を停止させる
)と、前記ミドルマンが再同期化の責任を持つ場合、前記ミドルマンからその使
用可能なエージェントの各々に再同期化メッセージを送るステップ、又は前記ミ
ドルマンが再同期化の責任を持たない場合、前記ミドルマンからその使用可能な
エージェントの各々に「既知(Known)」判断メッセージを送るステップ(
その「既知」判断メッセージはその使用可能なエージェントの各々の再同期化を
始動する)とを含むことを特徴とする。
従って、パートナは何が問題であるかを詳しく知らされるので、適当なアクシ
ョンを取ることができる。更に、そのセッションは解放されず、従って、パフォ
ーマンスを改善し、オペレータ・インターラクションを減少させる。
この提案された解決方法は如何なる既存のプロトコルに対する変更も必要なく
、しかも、それは既存のシステムに容易に組み込み可能であり、比較的簡単な実
施を可能にする。その解決方法は、上記引用の文献「LU6.2のためのSNA
ピア・プロトコル」においてLUタイプ6.2用のSNAによって定義された「
仮定異常終了、仮定零、及び最終エージェント最適化(Presumed Abort,Presum
ed Nothing and Last Agent Optimisation)」プロトコルで使用される。
本発明の更なる利点は、高いトランザクション速度をサポートする分散システ
ムの管理をそれが実用的な期間において単純化することである。
次に、添付図面を参照して本発明の実施例を詳細に説明することにする。
図面の簡単な説明
第1図は、本発明を実施し得るデータ処理システムの概略図である。
第2図は、その分野で知られた2フェーズ・コミット・プロトコルの特定のケ
ースを示す。
第3図は、本発明の特定の実施例におけるメッセージ・フローの概要図である
。
第4a図及び第4b図は、システムの再始動に続く種々のメッセージ・コミュ
ニケーション・フローを示す。
第5図は、本発明の特定の実施例に従ったプロトコルのルールを説明する概略
的フローチャートである。
第6図は、メッセージの間のレース状態を示す図である。
発明を実施するための最良の形態
図面、特に、第1図を参照すると、本発明を実施するために利用し得るデータ
処理システムの概略図が示される。汎用アーキテクチャ100は、5つのノード
より成る分散データ処理システムを示す。アプリケーション・ノード110には
、例えば、IBM社から得られるCICSのようなトランザクション・ベースの
アプリケーション・プログラムを実行するIBM Enterprise Sy
stem/9000、
即ち、ES/9000のようなメインフレーム・コンピュータがある(Ente
rprise System/9000及びES/9000は、インターナショ
ナル・ビジネス・マシーンズ・コーポレーションの商標である)。ノード110
は、揮発性メモリ(即ち、RAM)112、及び2フェーズ・コミット(PC)
プロトコルに関する情報を記憶するために使用される不揮発性メモリ114、一
般には、ダイレクト・アクセス記憶装置(即ち、DASD)を含む。その不揮発
性メモリ114に記憶された情報は恒久的である。即ち、それは、ノード障害の
場合に喪失されるが、そのノードが再始動された後にはアクセス可能である。対
照的に、揮発性メモリ112に記憶された情報はノード障害の場合に喪失される
。アプリケーション・ノード110は複数のローカル資源をアクセスし、例えば
、データベース管理システムによってデータベース(即ち、DB)116をアク
セスし、及びダイレクト・アクセス記憶装置114上の複数のファイルをアクセ
スする。アプリケーション・ノード110は、データ通信機構によって同様の構
成のノード120、130、140、及び150とコミュニケートすることを可
能にされる。アプリケーション・ノード110において実行されるトランザクシ
ョン・ベースのアプリケーション・プログラムは、例えば、6.2アーキテクチ
ャ拡張機能において実施される対等通信プロトコルによって、システム・ネット
ワーク・アーキテクチャ(SNA)のような標準的なシステム・インターフェー
スを
介して他のノードにおける資源をアクセスすることを可能にされる。ノード12
0はミドルマンとして作用し、アプリケーション・ノード110がノード130
及び140における資源をアクセスすることを可能にする。
次に、第2図を参照すると、その分野で知られた2フェーズ・コミット・プロ
トコルの特定のケースが示される。そのプロトコルの2つのフェーズは、システ
ムがそれらの作業をバックアウトするために又はコミットするためにアクション
を取る準備をする時の意思表示フェーズ、及び判断がブロードキャストされる時
のコミット・フェーズである。最終的な判断は、コーディネータとして知られた
それらのノードの1つによって行われる。
第2図は、ミドルマン210を介してコーディネータ205とコミュニケート
するエージェント215を示す。作業単位はノード205−210間及びノード
210−215間に2つの会話を確立することによって管理される。第1ノード
及び第2ノードの間の各会話は、2つのノード相互間のコミュニケーション・セ
ッションの設定を必要とする。同期点プロトコル中にセッションが失敗する場合
、各ノードはメッセージを再伝送するために又はメッセージの再伝送を要請する
ために他のノードと接触しようとするので、各ノード相互間の2つのセッション
が同時に使用可能である。そこで、その作業単位の一部としての資源に対する変
更がユーザ・プロセスによって遂行される。ユーザ・データは、ユーザ・データ
・メッセージを介してその作業単位に関連のノード相互間で交換される。その作
業単位及び関連の2フェーズ・コミット同期化時に、各ノードは状態変更に関す
る情報をそれの揮発性メモリに記憶する。チェックポイントにおいて、この状態
変更情報は、ノードが障害から回復することを可能にするように不揮発性メモリ
に対して更に強制される。
ノードは、同期点が期限であることを所定の計画に従って決定し、そしてその
プロトコルが開始されなければならないことをそれらノードの1つが同期点マネ
ージャに信号するまで、データ・メッセージを交換する。コーディネータ205
は、ミドルマン210に準備メッセージ220を送ることによって2フェーズ・
コミット同期化を始動する。ミドルマン210はノード205との会話ではエー
ジェントとして作用し、ノード215との会話ではコーデイネータとして作用す
る。従って、ミドルマン210は準備メッセージ225をエージェント215に
送る。
ローカルの状態に基づいて、エージェント215は、それのオペレーションを
コミットするか或いはバックアウトするかを決定する。図示の例では、エージェ
ント215はコミットすることを決定し、意思表示「イエス」メッセージ230
をミドルマン210に送る。エージェント215がその作業単位の結果について
それのパートナからの連絡を待っている間、それは「未確定」状態にある。ミド
ルマン210(ノード215に対するコーディネータとして作用する)はコミッ
トすることを決定し、意思表示「イエス」メッセージ235をコーディネータ2
05に送り、それ自身は「未確定」になる。
コミュニケーションが何れかのステージで中断される場合、プロトコルは再同
期化フェーズに入る。再同期化時に接触を再確立する責任は、そのプロトコルに
おいて定義されたようにコミュニケーション・パートナの一方(又は、時には両
方)に依存する。第2図に示された例では、コーディネータとのコミュニケーシ
ョンは、判断240がミドルマン210において受信される前に失われる。そこ
で、ミドルマン210は、それがエージェント215からの再同期化に応答して
、コーディネータ205に対するそれ自身のコミュニケーションが再確立される
まで、エージェント215とのコミュニケーションを中断し続ける。
次に、第3図を参照すると、本発明の特定の実施例におけるメッセージ・フロ
ー・コミュニケーションの概要図が示される。第3図は、コーディネータ205
、ミドルマン210、及びエージェント215を有するシステムを特徴とする。
コーディネータとの接触が失われたこと或いはそれが再確立されたことをコミュ
ニケートするためのフローが定義される。図示の例では、ノード205−210
間又はノード210−215間の2つの会話が設定され、しかる後、作業単位の
一部としての資源に対する変更が、ノード相互間で交換されるユーザ・データ・
メッセージを通してユーザ・プロセスによ
って遂行される。状態変更が各ノードにおいてそれの揮発性メモリに記憶され、
更に、ノードが障害から回復することを可能にするように不揮発性記憶装置に対
してチェックポイントが強制される。
コーディネータ205は、ミドルマン210に準備メッセージ220を送るこ
とによって2フェーズ・コミットを始動する。一方、ミドルマン210は、ノー
ド205との会話に対するエージェントとして及びノード215との会話に対す
るコーディネータとして作用して準備メッセージ225をエージェント215に
送る。
エージェント215が作業単位をコミットすることを決定する場合、それは意
思表示「イエス」メッセージ230をミドルマン210に送り、「未確定」にな
る。一方、ミドルマン210は(ノード215に対するコーディネータとして作
用して)コミットすることを決定し、意思表示「イエス」メッセージ235をコ
ーディネータ205に送り、「未確定」になる。
意思表示「イエス」メッセージ235がコーディネータ205に送られた後且
つ判断330がミドルマン210において受信される前の2フェーズ・コミット
同期化中、コミュニケーションは失われる。エージェント215とのコミュニケ
ーションを中断する代わりに、ミドルマン210は「未知」判断メッセージ(De
cision Not Known)310をエージェント215に送り、判断が得られないとい
う事実をコミュニケ
ートする。そこで、ミドルマン210は、コーディネータ205とのコミュニケ
ーションが回復されるまで待機する。この「未知」メッセージは、判断が知らさ
れるまで、エージェント215に再同期化を抑止させる。一方、それは、作業単
位において修正された如何なる資源に関するロックも保持し続けなければならな
い。従って、エージェント215は、なにが問題であるか及び何故それが待機し
ているのかを詳しく知らされる。更に、そのセッションは解放されず、従って、
パフォーマンスは改善され、オペレータ・インターラクションを減少する。
コーディネータ205とミドルマン210との間のコミュニケーションが回復
される時、ミドルマン210は再同期化メッセージ320をコーディネータ20
5に送り、しかる後、作業単位に関する判断メッセージ330を受信する。その
判断はミドルマン210において得られるので、ミドルマン210は「既知」判
断メッセージ(Decision Known)340をエージェント215送り、その判断が
得られたこと(判断そのものではないけれども)をコミュニケートする。そこで
、エージェント215は、再同期化シーケンスを始動して再同期化メッセージ3
50をミドルマン210に送り、判断メッセージ360をミドルマン210から
受け取る。この提案された解決方法は如何なる既存のプロトコルに対しても変更
を必要とせず、しかも、それは既存のシステムに容易に組み込み可能であり、比
較的簡単な実施方法を可能にすることに注
意して欲しい。
その分野で知られたコミュニケーション・プロトコルでは、情報は、そのプロ
トコルの進行及び行われる判断をレコードするために不揮発性記憶媒体に固定化
される。システム障害の場合、この情報はシステムの状態を回復させるために使
用される。本発明の実施例によれば、その解決方法と関連したメッセージ(「未
知」判断)に関する情報は不揮発性媒体上にレコードされないことが望ましい。
情報を固定化するための既存のルールがそのような最適化によって複雑にされる
ので、これは望ましい特徴である。
第4a図は、システムの再始動に続く第1のメッセージ・コミュニケーション
・フローを示す。それは、その再始動前に存在した状態を回復するために使用さ
れる。図示の例では、ミドルマン210は、「未知」判断メッセージ310をエ
ージェント215に送った後に障害を生じた。ミドルマン210はその「未知」
判断メッセージに関するチェックポイント情報を不揮発性記憶装置に強制しない
ので、ミドルマン210の障害はその結果としてこの情報の喪失を生じる。ミド
ルマン210の再始動に続いて、再始動メッセージ410がエージェント215
に送られる。エージェント215が「未知」判断メッセージ310を前に受信し
ていたために再同期化を抑止していた場合、それは、再同期化メッセージ420
をミドルマン210に送ることによってそれを試みる。その判断がミドルマン2
10において依然として未知である場合、新
たな「未知」判断メッセージ430が送られ、その障害前に存在した関係が再確
立される。
第4b図は、同じシステムの別の再始動に続く第2のメッセージ・コミュニケ
ーション・フローを示す。図示の例では、エージェント215は、ミドルマン2
10から「未知」判断メッセージ310を受信した後に障害を生じた。エージェ
ント215はその「未知」判断メッセージに関連したチェックポイント情報を不
揮発性記憶装置に強制しないので、そのエージェント215の障害もプロトコル
に関する揮発性情報を喪失させる。この場合、「未知」判断メッセージ310の
受信という知識は喪失される。この情報は、ミドルマン210との再同期化を試
みることによって、エージェント215の再始動に続いて回復される。その場合
、再同期化メッセージ440がエージェント215によってミドルマン210に
送られる。その判断がミドルマン210において依然として未知である場合、新
たな「未知」判断メッセージ450がエージェント215に送られるであろう。
これは、障害前に存在した状況を再確立する。
次に、一般的なケースを参照すると、2つのコミュニケーション・ノードのう
ちの1つ又は両方が障害に続いて再同期化を始動する責任を持つことがある。そ
れらのうちのどちらに責任があるかは、それら2つのノードの間の一致したプロ
トコル、そのシステムが障害を生じる前に到達した位置、及びそれらのパートナ
のうちの責任のある一方を助けることが
できるコーディネータによって行われた判断に依存する。本発明は、LUタイプ
6.2のためのSNAによって定義された「仮定異常終了、仮定零、及び最終エ
ージェント最適化」プロトコルにおいて動作可能である。しかし、それが2フェ
ーズ・コミットのための種々のプロトコルにおいて使用可能であることは、当業
者には明らかであろう。
第5図には、本発明の特定の実施例に従ってプロトコルのルールを説明した概
略的フローチャートが示される。ブロック510を参照すると、そのシステムに
おけるすべての関連するエージェントがコミットする準備をするようにリクエス
トされる。それに応答して、エージェントは、それらのオペレーションをコミッ
トすべきか或いはバックアウトすべきかを、ローカル状態に基づいて個々に判断
する。そこで、それらの判断がコーディネータにコミュニケートされる。即ち、
それらエージェントの各々は意思表示を送って、作業単位をコミットするために
それが使用可能であること(意思表示「イエス」)又は利用不能であること(意
思表示「ノー」)を表す。
ブロック520において、エージェントから受信された意思表示に基づいた判
断がコーディネータによって行われる。すべてのエージェントがコミットすると
いう意思表示をする場合、コミットするためのリクエストが発生される。一方、
何れのエージェントもそれのオペレーションをバックアウトするという意思表示
をする場合、すべてのエージェントが、
それらのオペレーションをバックアウトするように命令される。
しかる後、ブロック530において、最終判断がコーディネータによってすべ
ての関連エージェントにブロードキャストされる。
次に、ブロック540を参照すると、提案された解決方法のルールは、意思表
示「イエス」メッセージに対する応答が「未知」判断メッセージであることを必
要とする。これは、その判断がミドルマンにおいて得られる前にそのコーディネ
ータとのコミュニケーションが失われる時に生じる。
「未知」判断メッセージが送られ、その後、その判断が使用可能になった時、
プロセスはブロック550に進む。
ミドルマンが既存のプロトコルにおける再同期化の責任を有する場合、制御フ
ローはブロック550に進み、そこでは、再同期化メッセージがパートナに送ら
れる。
ミドルマンが再同期化の責任を持たない場合、ブロック570において、「既
知」判断メッセージがパートナに送られる。
「既知」判断メッセージの受信時に、ブロック580に示されるように、エー
ジェントは、再同期化メッセージを送ることによって再同期化を始動する。
ノードが障害を生じて揮発性情報を失う場合、それはその事実をそれのパート
ナにコミュニケートしなければならない。又、それは、既存のプロトコルに関し
て、未決の作業単位に
対して再同期化を試みなければならない。再始動メッセージを受信した時、「未
知」判断メッセージによって抑止された未決の再同期化が再試行される。再同期
化メッセージに対する応答は、その判断が未だ得られない場合、「未知」判断と
なり得る。本発明は不揮発性媒体に情報を固定化するための既存のプロトコルに
おける変更を必要としないということは注目すべきことである。すべての情報が
揮発性記憶装置に保持され、そしてそのシステムが再始動される場合にリフレッ
シュされる。従って、この解決方法は比較的簡単な実施を可能にする。
第6図を参照すると、メッセージ相互間のレース状態が示される。ケース(a
)では、「未知」判断メッセージ610と「既知」判断メッセージ620との間
のレース状態が示される。明らかに、後者は前者の前に送られることはないが、
それらのメッセージは非論理的順序でレシーバに到達し得る。「未知」判断メッ
セージ610は送られるが、直ちには受信されない。しかる後、「既知」判断メ
ッセージ620が送られる。第6図に示されたケース(a)では、この「既知」
判断メッセージ620は「未知」判断メッセージ610よりも速く伝播し、その
結果、それは早く送られた「未知」判断メッセージ610よりも前に受信される
。「既知」判断メッセージ620の受信の後、「未知」判断メッセージ610が
受信される。その受信側は、「未知」判断メッセージ610が順序どおりでなく
現れる場合、そのメッセージを無視できな
ければならない。ケース(b)では、「未知」判断メッセージ630と再同期化
メッセージ640との間の同様な状態が示される。
その分野で知られたプロトコルでは、再同期化の処理はコミュニケーション・
セッションの中断を生じさせることがある。その中断において、受動的なパート
ナは、それが責任を有し且つ厳格な再試行ループを防ぐためにその中断の開始前
の待機期間が要求される場合、その処理を再試行しなければならない。この期間
はミドルマンによって制御され、多少は任意の長さのもの、一般的には、再試行
の頻度と究極的な再同期化の時機との間の妥協的なものである。この処理のブロ
ッキングが起こり得るということは、再同期化タスクが並列に実行可能でなけれ
ばならないことを意味する。ノードの再始動時には、それを過負荷にし得る多く
のそのようなタスクが存在することがある。数多くのコミュニケートするノード
が同時に再始動される場合、デッドロックが生じ得る。本発明は、再同期化にお
いてブロッキングが生じ得ないことを保証する。一連の実行によって再同期化を
順次に処理することが可能である。
【手続補正書】
【提出日】1998年1月12日
【補正内容】
請求の範囲
1.トランザクションに参加する複数のエージェント(120−150)及び前
記トランザクションをコーディネートするためのコーディネータ(110)を含
むデータ処理システム(100)において前記トランザクションの同期化を行う
ための方法にして、前記エージェント(120−150)は前記エージェント(
120−150)のうちの少なくとも1つのセット(130、140)をコーデ
ィネートする少なくとも1つのミドルマン(120)を含み、
コミットするために使用可能であるか又は使用不能であるかを表す意思表示を
前記エージェント(120−150)の各々から前記コーディネータ(110)
に送るステップ(510)と、
前記意思表示がすべて受信された時、前記コーディネータ(110)によるコ
ミット又はバックアウトの判断を決定するステップ(520)と、
を含み、
障害のために前記判断が前記ミドルマン(120)において得られない場合、
前記ミドルマン(120)からコミットするために使用可能な前記セットにおけ
るエージェント(130、140)の各々に「未知」判断メッセージを送るステ
ップ(540)であって、前記「未知」判断メッセージは通
常障害に応答して発生される前記使用可能なエージェント(130、140)及
び前記ミドルマン(120)との間の再同期化メッセージを禁止することを含む
ステップ、及び
前記判断が前記ミドルマン(120)において得られる場合(550)、前記
使用可能なエージェント及び前記ミドルマン(120)の間の再同期化メッセー
ジを可能にするステップ(560、570、580)
を含むことを特徴とする方法。
2.前記可能にするステップは、前記判断が前記ミドルマン(120)において
得られる場合(550)、前記ミドルマン(120)が再同期化の責任を持つ場
合には前記ミドルマン(120)から前記使用可能なエージェント(130、1
40)の各々に再同期化メッセージを送るステップ(560)、又は、前記ミド
ルマン(120)が再同期化の責任を持たない場合には前記ミドルマン(120
)から前記使用可能なエージェント(130、140)の各々に「既知」判断メ
ッセージを送るステップ(570)を含み、前記「既知」判断メッセージは前記
使用可能なエージェント(130、140)のうちの少なくとも1つに再同期化
メッセージ(350)を前記ミドルマンへ送らせることを特徴とする請求の範囲
第1項に記載の方法。
3.「既知」判断メッセージ(620)を受信した後、前記使用可能なエージェ
ント(130、140)の1つによって受信された如何なる「未知」判断メッセ
ージ(610)も無
視するステップを更に含むことを特徴とする請求の範囲第2項に記載の方法。
4.再同期化メッセージ(640)を受信した後、前記使用可能なエージェント
(130、140)の1つによって受信された如何なる「未知」判断メッセージ
(630)も無視するステップを更に含むことを特徴とする請求の範囲第1項乃
至第3項のいずれかに記載の方法。
5.前記「未知」判断メッセージに関連した情報は前記エージェント(120−
150)の各々における揮発性メモリにおいてのみ記憶されることを特徴とする
請求の範囲第1項乃至第4項のいずれかに記載の方法。
6.前記ミドルマン(210)の障害からの再始動の後、前記ミドルマン(21
0)から前記使用可能なエージェント(215)の各々に「再始動済み」メッセ
ージ(410)を送るステップと、
前記使用可能なエージェント(215)の各々から前記ミドルマン(210)
に更なる再同期化メッセージ(420)を送るステップと、
前記判断が前記ミドルマン(210)において未だ得られない場合、前記ミド
ルマン(210)から前記使用可能なエージェント(215)の各々に更なる「
未知」判断メッセージ(430)送るステップと、
を更に含むことを特徴とする請求の範囲第5項に記載の方法。
7.トランザクションが同期化される分散データ処理システムにして、
前記トランザクションに参加する複数のエージェント(120−150)であ
って、前記エージェント(120−150)のうちの少なくとも1つのセット(
130、140)をコーディネートする少なくとも1つのミドルマン(120)
を含む複数のエージェントと、
前記トランザクションをコーディネートための1つのコーディネータ(110
)と
を含み、
前記コーディネータ(110)は
コミットするために使用可能であるか又は使用不能であるかを表す意思表示を
前記エージェント(120−150)の各々から前記コーディネータ(110)
に送るための手段(510)と、
前記意思表示がすべて受信された時、前記コーディネータ(110)によるコ
ミット又はバックアウトの判断を決定するための手段(520)と、
を含む分散データ処理システムにおいて、
障害のために前記判断が前記ミドルマン(120)において得られない場合、
前記ミドルマン(120)からコミットするために使用可能な前記セットにおけ
るエージェント(130、140)の各々に「未知」判断メッセージを送るため
の手段(540)であって、前記「未知」判断メッセージは
通常障害に応答して発生される前記使用可能なエージェント(130、140)
及び前記ミドルマン(120)との間の再同期化メッセージを禁止することを含
む手段、及び
前記判断が前記ミドルマン(120)において得られる(550)ことに応答
して、前記使用可能なエージェント及び前記ミドルマン(120)の間の再同期
化メッセージを可能にするための手段(560、570、580)
を含むことを特徴とする分散データ処理システム。
8.前記再同期化メッセージを可能にするための手段は、
前記ミドルマン(120)が再同期化の責任を持つかどうかの表示を行うため
の手段と、
前記ミドルマン(120)が再同期化の貴任を持つことを表す表示に応答して
、前記判断が前記ミドルマン(120)において得られる時(550)、前記使
用可能なエージェント(130、140)の各々に再同期化メッセージを送るた
めの手段(560)と、
前記ミドルマン(120)が再同期化の責任を持たないことを表す表示に応答
して、前記使用可能なエージェント(130、140)の各々に「既知」判断メ
ッセージを送るための手段(570)であって、前記「既知」判断メッセージは
前記使用可能なエージェント(130、140)のうちの少なくとも1つに再同
期化メッセージ(350)を前記ミドルマンへ送らせることを含む手段と、
を含むことを特徴とする請求の範囲第7項に記載のシステ
ム。
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 ノーミントン、グライン
イギリス国ハンプシャー、ウインチェスタ
ー、コレイ・クロス 18
(72)発明者 ツイマー、デニス・ジャック
イギリス国ハンプシャー、チャンドラー
ズ・フォード、クイーンズ・ロード 17
(72)発明者 ラプトン、ピータ、ジェイムス
イギリス国ハンプシャー、チャンドラー
ズ・フォード、バッデズレイ・ロード 38
【要約の続き】
々の再同期化を停止する。ミドルマン(120)が再同
期化の責任を持つ場合、その判断がミドルマン(12
0)において得られる時、再同期化メッセージがその使
用可能なエージェント(130、140)の各々に送ら
れる(560)。ミドルマン(120)が再同期化の責
任を持たない場合、「既知」判断メッセージがミドルマ
ン(120)からその使用可能なエージェント(13
0、140)の各々に送られる(570)。「既知」判
断メッセージの受信は使用可能なエージェント(13
0、140)の各々の再同期化を始動する(580)。
Claims (1)
- 【特許請求の範囲】 1.トランザクションに参加する複数のエージェント(120−150)及び前 記トランザクションをコーディネートするためのコーディネータ(110)を含 むデータ処理システム(100)において前記トランザクションの同期化を行う ための方法にして、前記エージェント(120−150)は前記エージェント( 120−150)のうちの少なくとも1つのセット(130、140)をコーデ ィネートする少なくとも1つのミドルマン(120)を含み、 コミットするために使用可能であるか又は使用不能であるかを表す意思表示を 前記エージェント(120−150)の各々から前記コーディネータ(110) に送るステップ(510)と、 前記意思表示がすべて受信された時、前記コーディネータ(110)によるコ ミット又はバックアウトの判断を決定するステップ(520)と、 を含み、 障害のために前記判断が前記ミドルマン(120)において得られない場合、 前記ミドルマン(120)からコミットするために使用可能な前記セットにおけ るエージェント(130、140)の各々に「未知」判断メッセージを送るステ ップ(540)であって、前記「未知」判断メッセージは使用可能なエージェン ト(130、140)の各々の再同期化 を停止させることを含むステップ、及び 前記判断が前記ミドルマン(120)において得られる場合(550)、前記 ミドルマン(120)が再同期化の責任を持つ場合には前記ミドルマン(120 )から前記使用可能なエージェント(130、140)の各々に再同期化メッセ ージを送るステップ(560)、又は、前記ミドルマン(120)が再同期化の 責任を持たない場合には前記ミドルマン(120)から前記使用可能なエージェ ント(130、140)の各々に「既知」判断メッセージを送るステップ(57 0)であって、前記「既知」判断メッセージは前記使用可能なエージェント(1 30、140)の各々の再同期化(580)を始動することを含むステップ を含むことを特徴とする方法。 2.「既知」判断メッセージ(620)を受信した後、前記使用可能なエージェ ント(130、140)の1つによって受信された如何なる「未知」判断メッセ ージ(610)も無視するステップを更に含むことを特徴とする請求の範囲第1 項に記載の方法。 3.再同期化メッセージ(640)を受信した後、前記使用可能なエージェント (130、140)の1つによって受信された如何なる「未知」判断メッセージ (630)も無視するステップを更に含むことを特徴とする請求の範囲第1項又 は第2項に記載の方法。 4.前記「未知」判断メッセージに関連した情報は前記エー ジェント(120−150)の各々における揮発性メモリにおいてのみ記憶され ることを特徴とする請求の範囲第1項乃至第3項の1つに記載の方法。 5.前記ミドルマン(210)の障害からの再始動の後、前記ミドルマン(21 0)から前記使用可能なエージェント(215)の各々に「再始動済み」メッセ ージ(410)を送るステップと、 前記使用可能なエージェント(215)の各々から前記ミドルマン(210) に更なる再同期化メッセージ(420)を送るステップと、 前記判断が前記ミドルマン(210)において未だ得られない場合、前記ミド ルマン(210)から前記使用可能なエージェント(215)の各々に更なる「 未知」判断メッセージ(430)送るステップと、 を更に含むことを特徴とする請求の範囲第4項に記載の方法。 6.トランザクションが同期化される分散データ処理システムにして、 前記トランザクションに参加する複数のエージェント(120−150)であ って、前記エージェント(120−150)のうちの少なくとも1つのセット( 130、140)をコーディネートする少なくとも1つのミドルマン(120) を含む複数のエージェントと、 前記トランザクションをコーディネートための1つのコー ディネータ(110)と を含み、 前記コーディネータ(110)は コミットするために使用可能であるか又は使用不能であるかを表す意思表示を 前記エージェント(120−150)の各々から前記コーディネータ(110) に送るための手段(510)と、 前記意思表示がすべて受信された時、前記コーディネータ(110)によるコ ミット又はバックアウトの判断を決定するための手段(520)と、 を含む分散データ処理システムにおいて、 障害のために前記判断が前記ミドルマン(120)において得られない場合、 前記ミドルマン(120)からコミットするために使用可能な前記セットにおけ るエージェント(130、140)の各々に「未知」判断メッセージを送るため の手段(540)であって、前記「未知」判断メッセージは使用可能なエージェ ント(130、140)の各々の再同期化を停止させることを含む手段と、 前記ミドルマン(120)が再同期化の責任を持つかどうかの表示を行うため の手段と、 前記ミドルマン(120)が再同期化の責任を持つことを表す表示に応答して 、前記判断が前記ミドルマン(120)において得られる時(550)、前記使 用可能なエージェント(130、140)の各々に再同期化メッセージを送るた めの手段(560)と、 前記ミドルマン(120)が再同期化の責任を持たないことを表す表示に応答 して、前記使用可能なエージェント(130、140)の各々に「既知」判断メ ッセージを送るための手段(570)であって、前記「既知」判断メッセージは 前記使用可能なエージェント(130、140)の各々の再同期化(580)を 始動することを含む手段と、 を含むことを特徴とする分散データ処理システム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB9514819.3 | 1995-07-19 | ||
| GB9514819A GB2303474A (en) | 1995-07-19 | 1995-07-19 | Optimized synchronisation procedure |
| PCT/GB1996/000053 WO1997004387A1 (en) | 1995-07-19 | 1996-01-12 | Optimized synchronisation procedure |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH10510651A true JPH10510651A (ja) | 1998-10-13 |
| JP3445797B2 JP3445797B2 (ja) | 2003-09-08 |
Family
ID=10777947
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP50637997A Expired - Fee Related JP3445797B2 (ja) | 1995-07-19 | 1996-01-12 | 最適化された同期化プロシージャ |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US6247038B1 (ja) |
| EP (1) | EP0839350B1 (ja) |
| JP (1) | JP3445797B2 (ja) |
| DE (1) | DE69602193T2 (ja) |
| GB (1) | GB2303474A (ja) |
| WO (1) | WO1997004387A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006261802A (ja) * | 2005-03-15 | 2006-09-28 | Ricoh Co Ltd | 情報処理装置、画像処理装置及び画像形成装置 |
| JP2020149090A (ja) * | 2019-03-11 | 2020-09-17 | 富士通株式会社 | 判定方法、情報処理装置および判定プログラム |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2335516A (en) * | 1998-03-18 | 1999-09-22 | Ibm | Failure recovery in distributed transaction avoids heuristic damage |
| GB2335517A (en) | 1998-03-19 | 1999-09-22 | Ibm | Client/server computing system with programmable action by transaction coordinator during prepared state |
| US6615091B1 (en) * | 1998-06-26 | 2003-09-02 | Eveready Battery Company, Inc. | Control system and method therefor |
| GB2346983B (en) | 1999-02-18 | 2003-04-16 | Ibm | Client/server computing for transaction processing with superior coordinator o ptimization |
| US6529921B1 (en) * | 1999-06-29 | 2003-03-04 | Microsoft Corporation | Dynamic synchronization of tables |
| US6922500B2 (en) * | 2001-10-24 | 2005-07-26 | Intel Corporation | Optical configuration for optical fiber switch |
| US7120704B2 (en) * | 2002-01-31 | 2006-10-10 | International Business Machines Corporation | Method and system for workload balancing in a network of computer systems |
| US7730489B1 (en) * | 2003-12-10 | 2010-06-01 | Oracle America, Inc. | Horizontally scalable and reliable distributed transaction management in a clustered application server environment |
| GB0426847D0 (en) * | 2004-12-08 | 2005-01-12 | Ibm | Method and system of committing operations of a synchronised transaction |
| US7712096B2 (en) * | 2004-12-21 | 2010-05-04 | International Business Machines Corporation | Method, system, and storage medium for dynamically reordering resource participation in two-phase commit to heuristically optimize for last-agent optimization |
| US20060149791A1 (en) * | 2005-01-06 | 2006-07-06 | Oracle International Corporation | Database-driven distributed recovery |
| FR2955004B1 (fr) * | 2010-01-04 | 2011-12-23 | Alcatel Lucent | Redemarrage autonome des noeuds d'un reseau pair-a-pair |
| CN102413166B (zh) * | 2011-09-22 | 2014-11-05 | 上海西本网络科技有限公司 | 分布式交易方法及其系统 |
| US9009180B2 (en) * | 2013-01-11 | 2015-04-14 | Ge Zhao | System and method for providing extending searches |
| US9501312B2 (en) * | 2014-01-30 | 2016-11-22 | Red Hat, Inc. | Using compensation transactions for multiple one-phase commit participants |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5165031A (en) * | 1990-05-16 | 1992-11-17 | International Business Machines Corporation | Coordinated handling of error codes and information describing errors in a commit procedure |
| US5319773A (en) * | 1990-05-16 | 1994-06-07 | International Business Machines Corporation | Asynchronous resynchronization of a commit procedure |
| US5261089A (en) * | 1990-05-16 | 1993-11-09 | International Business Machines Corporation | Optimization of commit procedures by utilizing a two-phase commit procedure only when necessary |
| JP2837288B2 (ja) * | 1990-09-17 | 1998-12-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 連鎖分散データトランザクションシステムにおけるワーク単位識別子の管理方法 |
| JPH0797782B2 (ja) * | 1991-09-18 | 1995-10-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 異種トランザクションの調整方法 |
| US5701480A (en) * | 1991-10-17 | 1997-12-23 | Digital Equipment Corporation | Distributed multi-version commitment ordering protocols for guaranteeing serializability during transaction processing |
| US5469562A (en) * | 1992-06-26 | 1995-11-21 | Digital Equipment Corporation | Durable atomic storage update manager |
| JP2675968B2 (ja) * | 1992-08-20 | 1997-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 加入者分散2相コミット・プロトコルの拡張機能 |
| US5396613A (en) * | 1992-11-05 | 1995-03-07 | University Of Utah Research Foundation | Method and system for error recovery for cascaded servers |
| US5958019A (en) * | 1996-07-01 | 1999-09-28 | Sun Microsystems, Inc. | Multiprocessing system configured to perform synchronization operations |
-
1995
- 1995-07-19 GB GB9514819A patent/GB2303474A/en not_active Withdrawn
-
1996
- 1996-01-12 JP JP50637997A patent/JP3445797B2/ja not_active Expired - Fee Related
- 1996-01-12 DE DE69602193T patent/DE69602193T2/de not_active Expired - Lifetime
- 1996-01-12 EP EP96900145A patent/EP0839350B1/en not_active Expired - Lifetime
- 1996-01-12 WO PCT/GB1996/000053 patent/WO1997004387A1/en not_active Ceased
- 1996-07-12 US US08/682,830 patent/US6247038B1/en not_active Expired - Fee Related
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006261802A (ja) * | 2005-03-15 | 2006-09-28 | Ricoh Co Ltd | 情報処理装置、画像処理装置及び画像形成装置 |
| JP2020149090A (ja) * | 2019-03-11 | 2020-09-17 | 富士通株式会社 | 判定方法、情報処理装置および判定プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| GB2303474A (en) | 1997-02-19 |
| EP0839350B1 (en) | 1999-04-21 |
| JP3445797B2 (ja) | 2003-09-08 |
| DE69602193T2 (de) | 1999-11-18 |
| GB9514819D0 (en) | 1995-09-20 |
| US6247038B1 (en) | 2001-06-12 |
| WO1997004387A1 (en) | 1997-02-06 |
| DE69602193D1 (de) | 1999-05-27 |
| EP0839350A1 (en) | 1998-05-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3445797B2 (ja) | 最適化された同期化プロシージャ | |
| JP2708357B2 (ja) | 分散トランザクション処理システムのデータベースの信頼性と応答時間を向上させる方法および装置 | |
| EP0834122B1 (en) | Synchronisation procedure in a routing node | |
| US8140623B2 (en) | Non-blocking commit protocol systems and methods | |
| EP0950955B1 (en) | Method and apparatus for correct and complete transactions in a fault tolerant distributed database system | |
| US6978396B2 (en) | Method and system for processing replicated transactions parallel in secondary server | |
| JPH04229334A (ja) | コンピュータ・システム及びアプリケーションプログラム実行方法 | |
| JPH04229333A (ja) | コミット手順の非同期的再同期化実行装置および方法 | |
| US10242027B2 (en) | Three phase commit for a distributed file system | |
| JP6220851B2 (ja) | 2フェーズコミットコールの厳密な順序付けに基づいたトランザクションリカバリをサポートするためのシステムおよび方法 | |
| US7478400B1 (en) | Efficient distributed transaction protocol for a distributed file sharing system | |
| JPH04229358A (ja) | 同期点回復手段を有するコンピュータ装置 | |
| JPH04229332A (ja) | コミット手順におけるエラー・コードおよびエラー記述情報の処理装置および方法 | |
| JPH04229335A (ja) | コミット手順の最適化方法 | |
| JPH09251412A (ja) | 分散データベーストランザクションのコミットメント方法 | |
| WO2004077270A2 (en) | Systems and methods for transaction chaining | |
| JP2002500791A (ja) | 分散形データベース内でトランザクションをするための方法 | |
| US6944787B2 (en) | System-managed duplexing of coupling facility structures | |
| EP0834127A1 (en) | Reduction of logging in distributed systems | |
| JP3846852B2 (ja) | 分散コンピューティング環境の処理グループを管理する方法、システム、およびプログラム製品 | |
| US6256641B1 (en) | Client transparency system and method therefor | |
| US8006248B2 (en) | Method, apparatus and computer program for facilitating communication between a client application and a server application | |
| US6539434B1 (en) | UOWE's retry process in shared queues environment | |
| JP2001306380A (ja) | 二相コミット回避方式およびそのプログラム記録媒体 | |
| JPH02122362A (ja) | 分散データ管理システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |