Hitachi

DABroker


3.5.8 その他の設定

〈この項の構成〉

(1) DAB_DEMON_LOG_MODE(デーモンの生成・消滅・クリーンアップ実行結果ログ抑止)

標準値

なし

指定範囲

LIMITED

説明

デーモンの生成・消滅・クリーンアップ実行結果ログの出力によりディスクを圧迫したくない場合に指定します。

デーモンの生成・消滅・クリーンアップ実行結果ログは,本指定をしない限り,標準で出力されます。

デーモンの生成・消滅・クリーンアップ実行結果ログについては,「6.3.4 デーモンの生成・消滅・クリーンアップ実行結果ログ(共通)」を参照してください。

(2) DABPTHREAD_STACK_SIZE(スレッドスタックサイズ変更機能)

標準値

システムデフォルトのスレッドスタックサイズ

指定範囲

0〜1024(キロバイト)

説明

スレッドスタックサイズを変更する場合に指定します。

指定された数値がシステムの最小値より下回っている場合には,システムの最小値まで切り上げ,指定された値が1024を超えたときは1024になります。システムの最小値はプラットフォームによって異なります。

なお,本機能はプラットフォームがHP-UXの場合のみ有効となります。

(3) DAB_ORA7_XAHANDLE_OCI8USE(Oracle XA接続時のPro*COBOL,Pro*C/C++連携機能)

標準値

なし

指定範囲

ON(使用する)

説明

XA環境下の同一プロセス内で,Oracle Pro*COBOL,又はOracle Pro*C/C++で作成したUAPと,DABroker for C++ で作成したUAPからOracleに接続をする場合に設定します。この設定をせず,XA環境下の同一プロセス内で,Oracle Pro*COBOL,又はOracle Pro*C/C++で作成したUAPと,DABroker for C++ で作成したUAPからOracleに接続すると「ORA-03114: not connected to ORACLE」エラーになります。

Oracle9i 9.0.1以前のバージョンのデータベースに接続する場合は,”ON”を指定しても本機能は無効となります。

本機能を有効にすると,DABroker for C++ を使用したUAPからOracleに接続,切断する場合に,次のように処理が変更されます。なお,以下「Oracle Call Interface」をOCIと呼びます。

(a) 本機能が無効の場合

(i)接続時

OCI7の次の関数を実行する。

sqlld2()…XA環境で,OCI7で使用する接続情報を取得する

(ii)切断時

OCI関数の呼び出し処理なし。

(b) 本機能が有効の場合

(i)接続時

OCI8の以下の関数を実行する。

xaoEnv()…指定されたXA接続のOCI環境ハンドルを取得する

xaoSvcCtx()…指定されたXA接続のOCIサービス・ハンドルを取得する

OCIHandleAlloc()…エラー・レポート・ハンドルを取得する

OCISvcCtxToLda()…OCI8で生成した接続情報をOCI7で使用する接続情報に変換する

(ii)切断時

OCI8の以下の関数を実行する。

OCILdaToSvcCtx()…OCI7で生成した接続情報をOCI8で使用する接続情報に変換する

OCIHandleFree()…エラー・レポート・ハンドルを開放する

注意事項

本機能を使用して,XA環境下の同一プロセス内で,DABroker for C++ で作成したUAPからOracleに接続をした後に,DABroker for C++ 以外のインタフェース(Pro*COBOL,Pro*C/C++,又はOCI関数)で作成したUAPからOracleに接続をする場合は,DABroker for C++ を使用したUAPでOracleから切断をした後に行ってください。

DABrokerでは,OCISvcCtxToLda関数を使用して動作しています。そのため,DABroker for C++ を使用したUAPでOracleに接続している間に,DABroker for C++ 以外のインタフェースからOracleに接続した場合,DABrokerで管理している接続情報が変更されることがあるため,動作を保証できません。