トランザクショナル分散オブジェクト基盤 TPBroker ユーザーズガイド

[目次][索引][前へ][次へ]


7.4.4 リソースマネージャの操作

<この項の構成>
(1) リソースマネージャの情報の表示
(2) リソースマネージャの登録と削除
(3) トランザクション制御用オブジェクトファイルの作成
(4) トランザクション制御用共用ライブラリ

(1) リソースマネージャの情報の表示

TPBrokerに登録されている,またはアプリケーションプログラムにリンクされているリソースマネージャの情報を確認するには,tslsrmコマンドを使用します。このコマンドを実行すると,リソースマネージャ名,スイッチ名,オブジェクト名といったリソースマネージャの情報が標準出力に出力されます。

(2) リソースマネージャの登録と削除

TPBrokerをインストールおよびセットアップしたとき,回復プロセスおよび決着プロセスは,TPBrokerが提供するOTSCRMのXAインタフェース用のオブジェクトファイルをリンクしています。

TPBrokerでそのほかのリソースマネージャと連携したトランザクションを実行する場合は,トランザクションサービスを開始する前に,TPBrokerのtslnkrmコマンドを使用して実行環境にリソースマネージャを登録してください。TPBrokerでは,最大7個のリソースマネージャを登録できます。

TPBroker下で実行されるトランザクションからアクセスしなくなったリソースマネージャを削除する場合,tslnkrmコマンドを-dオプション付きで実行します。

(3) トランザクション制御用オブジェクトファイルの作成

トランザクションサービスを使用するアプリケーションプログラムが,トランザクション内でリソースマネージャにアクセスする場合,そのアプリケーションプログラムにトランザクション制御用オブジェクトファイルをリンクする必要があります。ただし,トランザクション制御用共用ライブラリを使用する場合,アプリケーションプログラムに再びリンクする必要はありません。トランザクション制御用共用ライブラリの詳細については,「(4)トランザクション制御用共用ライブラリ」を参照してください。

TPBrokerに登録されているすべてのリソースマネージャにアクセスするアプリケーションプログラムの場合,TPBrokerが提供する標準トランザクション制御用オブジェクトファイル($TPSPOOL/XA/tp_allrm.o)をリンクします。このオブジェクトファイルはtslnkrmコマンドを実行するたびに新しくアップデートされるので,リソースマネージャの登録または削除をした場合には,アプリケーションプログラムを再びリンクする必要があります。

TPBrokerに登録されているリソースマネージャのうち,一部のリソースマネージャだけにアクセスするアプリケーションプログラムの場合,tsmkobjコマンドで新たなトランザクション制御用オブジェクトを作成して,それをアプリケーションプログラムに再びリンクします。

TPBrokerに新たにリソースマネージャを登録した場合,およびリソースマネージャを削除した場合,そのリソースマネージャを含んだトランザクション制御用オブジェクトファイルをリンクしているアプリケーションプログラムを再びリンクする必要があります。

トランザクション内でリソースマネージャにアクセスしないアプリケーションプログラムの場合,TPBrokerが提供しているオブジェクトファイル($TPSPOOL/XA/tp_crm.o)をリンクする必要があります。このオブジェクトファイルをリンクしない場合,トランザクションサービスの機能は使用できません。

(4) トランザクション制御用共用ライブラリ

トランザクション制御用オブジェクトファイルの代わりに,トランザクション制御用共用ライブラリを使用できます。トランザクション制御用共用ライブラリを使用すると,リソースマネージャの登録または削除をした場合でも,アプリケーションプログラムを再びリンクする必要がありません。ただし,リソースマネージャを削除した場合は,トランザクション制御用共用ライブラリを再作成する必要があります。

トランザクション制御用共用ライブラリは,tslnkrmまたはtsmkobjコマンドを実行したときに作成されます。作成されるディレクトリは$TPSPOOL/XA(Windowsの場合,%TPSPOOL%\XAおよび%TPSPOOL%\bin)です。標準トランザクション制御用共用ライブラリは,「libtpallrm_r.拡張子(拡張子はOSによって異なります)」という名称で作成されます。この共用ライブラリはマルチスレッドのアプリケーションプログラム用です。

トランザクション制御用共用ライブラリを使用する場合は,アプリケーションプログラムに$TPSPOOL/XA/tp_xaobj.oをリンクする必要があります。このオブジェクトをリンクしていない場合,アプリケーションプログラムでのOTSの初期化時にメッセージKFCB31219-Eが出力され,アプリケーションプログラムが異常終了します。

トランザクション制御用共用ライブラリとトランザクション制御用オブジェクトファイルを同時にアプリケーションプログラムにリンクすることはできません。必ずどちらか一方を選択してください。

[目次][前へ][次へ]


[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.