スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド

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

3.3.5 トランザクションの移行

トランザクションのコミット処理を,UAPがHiRDBをアクセスしたときと異なるプロセスで実行することをトランザクションの移行といいます。

なお,ここでいうUAPとは,HiRDB XAライブラリを使用してHiRDBに接続するUAPのことです。

トランザクションの移行機能を使用する場合,クライアント環境定義のPDXAMODEオペランドに1を指定してください。

PDXAMODEオペランドについては,「6.6.4 クライアント環境定義の設定内容」を参照してください。

<この項の構成>
(1) PDXAMODEオペランドの指定によるLOCK TABLE UNTIL DISCONNECTの有効範囲

(1) PDXAMODEオペランドの指定によるLOCK TABLE UNTIL DISCONNECTの有効範囲

PDXAMODEの指定によって,LOCK文のLOCK TABLE UNTIL DISCONNECTの有効範囲が変わります。

(a) PDXAMODE=0の場合
  1. AP記述によってリソースマネジャのオープン処理をする場合
    リソースマネジャのクローズ実行時まで有効になります。
  2. トランザクションごとにリソースマネジャのオープン処理をする機能がある場合
    グローバルトランザクション内で有効になります。
(b) PDXAMODE=1の場合
  1. AP記述によってリソースマネジャのオープン処理をする場合
    • トランザクションの移行が発生しない場合
      リソースマネジャのクローズ実行時まで有効になります。
    • トランザクションの移行が発生する場合
      グローバルトランザクション内で有効になります。
  2. トランザクションごとにリソースマネジャのオープン処理をする機能がある場合
    グローバルトランザクション内で有効になります。

OpenTP1を利用した場合のLOCK TABLE UNTIL DISCONNECTの有効範囲を,次の表に示します。

表3-7 OpenTP1を利用した場合のLOCK TABLE UNTIL DISCONNECTの有効範囲

PDXAMODEの指定値 OpenTP1の指定値 LOCK TABLE UNTIL DISCONNECTの有効範囲
0 trn_rm_open_close_scope=process リソースマネジャのクローズまで有効
trn_rm_open_close_scope=transaction グローバルトランザクション内で有効
1 trn_rm_open_close_scope=process trnstringオペランドで-dオプションを指定 リソースマネジャのクローズまで有効
trnstringオペランドで-dオプションを省略 同一のOpenTP1システム内では単体のAPでグローバルトランザクションを構成
同一のOpenTP1システム内では複数のAPでグローバルトランザクションを構成 一つのAPが HiRDB XAライブラリとリンク
複数のAPが HiRDB XAライブラリと
リンク
グローバルトランザクション内で有効
trn_rm_open_close_scope=transaction

注 -dオプションは,TP1/Server Baseのバージョンが03-03以降で,かつUNIX版HiRDBの場合に指定できます。