【手続補正書】
【提出日】平成27年12月21日(2015.12.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のリソースマネージャに対してトランザクションをリカバリする方法であって、前記方法は、
前記トランザクションのトランザクションリカバリ情報を永続性記憶装置から取得することを含み、前記トランザクションリカバリ情報は、準備フェーズ中、前記永続性記憶装置と関連付けられたリソースマネージャを介して持続させ、
前記トランザクションの、１つ以上の参加リソースマネージャから、１つ以上のインダウトトランザクションを取得することと、
前記１つ以上のインダウトトランザクションを前記トランザクションリカバリ情報と突き合わせることによって、前記１つ以上のインダウトトランザクションをコミットするかまたはロールバックするか判断することとを含む、方法。
【請求項２】
トランザクションをリカバリするためのシステムであって、前記システムは、
トランザクションマネージャと、
中間層トランザクションシステムにおいて前記トランザクションマネージャと通信する複数のリソースマネージャとを備え、
前記トランザクションマネージャは以下のステップを実行するように動作し、前記ステップは、
前記トランザクションのトランザクションリカバリ情報を永続性記憶装置から取得することを含み、前記トランザクションリカバリ情報は、準備フェーズ中、前記永続性記憶装置と関連付けられたリソースマネージャを介して持続させ、
前記トランザクションの、１つ以上の参加リソースマネージャから、１つ以上のインダウトトランザクションを取得することと、
前記１つ以上のインダウトトランザクションを前記トランザクションリカバリ情報と突き合わせることによって、前記１つ以上のインダウトトランザクションをコミットするかまたはロールバックするか判断することとを含む、システム。
【請求項３】
前記トランザクションマネージャは、前記１つ以上のインダウトトランザクションのうちのインダウトトランザクションを、
前記トランザクションリカバリ情報において一致が発見される場合は前記インダウトトランザクションをコミットすること、および、
前記トランザクションリカバリ情報において一致が発見されない場合は前記インダウトトランザクションをロールバックすること
のうちの一方を実行することにより、リカバリするように動作する、請求項２に記載のシステム。
【請求項４】
前記トランザクションマネージャは、前記永続性記憶装置への接続を介してトランザクションリカバリ情報テーブルをセットアップするように動作する、請求項２または３に記載のシステム。
【請求項５】
前記トランザクションマネージャは、前記永続性記憶装置と関連付けられた前記リソースマネージャを準備するのに使用されるのと同一のコールにおいて、前記トランザクションリカバリ情報を前記永続性記憶装置において持続させるように動作する、請求項２〜４のいずれか１項に記載のシステム。
【請求項６】
前記トランザクションリカバリ情報は前記永続性記憶装置から定期的に削除される、請求項２〜５のいずれか１項に記載のシステム。
【請求項７】
前記トランザクションマネージャは、前記トランザクションリカバリ情報を、前記永続性記憶装置の通常テーブルおよび前記永続性記憶装置のリドゥログのうちの少なくとも一方において持続させる、請求項２〜６のいずれか１項に記載のシステム。
【請求項８】
前記トランザクションリカバリ情報は、グローバルトランザクション識別子（ＧＴＲＩＤ）と、フォーマット識別子（ＩＤ）と、前記トランザクションの他の参加者に関する情報とを含む、請求項２〜７のいずれか１項に記載のシステム。
【請求項９】
前記トランザクションマネージャは、
グローバルトランザクション識別子（ＧＴＲＩＤ）、
フォーマット識別子（ＩＤ）およびコンテナ識別子（ＩＤ）、ならびに、
返されるトランザクションリカバリ情報のための境界パラメータとしての、前記１つ以上のリソースマネージャからのインダウトＧＴＲＩＤのリストおよびフォーマット識別子（ＩＤ）、
のうちの少なくとも１つを用いて、前記永続性記憶装置にクエリするように動作する、請求項２〜８のいずれか１項に記載のシステム。
【請求項１０】
前記トランザクションは複数のトランザクションマネージャにまたがっており、前記複数のトランザクションマネージャは種類が異なる製品であってもよく、
前記トランザクションマネージャは、
前記永続性記憶装置内に、トランザクションツリーを崩壊させることによって生成されたグラフを持続させるステップ、および、
前記永続性記憶装置内に、１つ以上の異なるエンドポイントを持続させるステップのうちの、一方を実行するように動作する、請求項２〜９のいずれか１項に記載のシステム。
【請求項１１】
実行されるとシステムに以下のステップを行なわせる機械読取可能なプログラムであって、前記ステップは、
トランザクションのトランザクションリカバリ情報を永続性記憶装置から取得するステップを含み、前記トランザクションリカバリ情報は、準備フェーズ中、前記永続性記憶装置と関連付けられたリソースマネージャを介して持続させ、
前記トランザクションの、１つ以上の参加リソースマネージャから、１つ以上のインダウトトランザクションを取得するステップと、
前記１つ以上のインダウトトランザクションを前記トランザクションリカバリ情報と突き合わせることによって、前記１つ以上のインダウトトランザクションをコミットするかまたはロールバックするか判断するステップとを含む、機械読取可能なプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
データベースへの中間層トランザクションログのインライン委譲
図４は、本発明のある実施の形態に従う、トランザクションミドルウェアマシン環境におけるトランザクションの処理のための、データベースへのトランザクションログのインライン委譲のサポートの一例を示す。図４に示されるように、中間層トランザクションシステム４００は、１つ以上のトランザクションマネージャ（ＴＭ）４０１〜４０２と、複数のリソースマネージャ（ＲＭ）４０３〜４０４とを含む。リソースマネージャ（ＲＭ）４０３〜４０４はグローバルトランザクション４１０に参加することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
さらに、トランザクションマネージャ４０１は、リソースマネージャ４０３を準備することができ、トランザクションリカバリ情報をリカバリ情報テーブル４０６において持続させることができる（ステップ３）。たとえば、トランザクションリカバリ情報を持続させることは、準備オペレーション中、データベース４０５への一回のトリップで行なうことができ、そうすることによってデータベース４０５へのトリップをセーブする。この準備フェーズは、リソースマネージャ４０３〜４０４が各々、成功という投票を返した（ステップ４および５）後に、完了する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
リカバリプロセスの開始時に、トランザクションマネージャ６０１は、データベース６０５と関連付けられているリソースマネージャ６０３に対し、リカバリ情報テーブル（ＬＴＸＩＤテーブル）６０６に格納されているトランザクションリカバリ情報について、クエリすることができる（ステップ１）。トランザクションマネージャ６０１は、リソースマネージャ６０３から、クエリしたトランザクションリカバリ情報を受け（ステップ２）、その後リカバリプロセスを続行することができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５２
【補正方法】変更
【補正の内容】
【００５２】
本発明の一実施の形態に従うと、このシステムを用いて、トランザクションマネージャ６０１〜６０２にまたがる分散トランザクション６１０等の、複数のトランザクションマネージャにまたがる複雑なトランザクションを扱うことができる。