Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option 使用の手引


dbqgrpdef

〈このページの構成〉

名称

DBキューのグループ名の定義

形式

{{dbqgrpdef  -d DBキューグループ名
             〔-p 関連づけるDBキューサービスグループ名〕
               -k 0|1
           {〔-e 関連づけるサービスグループ名〕
             〔-t〕 | 〔-f 関連づける他サーバのプロセス識別子〕}
             〔-o my|other〕
             〔-c〕
             〔-u uap|user〕
             〔-s stop|skip〕
                  }}

dbqgrpdef定義コマンドは,DBキュー機能を使用してAP間通信をするDBキューと,ユーザキューアクセスをするDBキューとで指定できるオプションが異なります。指定するオプションの違いを,次の表に示します。

表8‒11 指定できるオプションの違い

オプション

メッセージ送受信方式

AP間通信

ユーザキューアクセス

-kに0を指定

-kに1を指定

-d

必須

必須

必須

-p

省略可

省略可

指定不可

-k

0(省略可)

1

1(必須)

-e

省略可

指定不可

指定不可

-t

省略可

指定不可

指定不可

-f

省略可

指定不可

指定不可

-o

指定不可

省略可

省略可

-c

指定不可

省略可

省略可

-u

省略可

省略可

必須

-s

省略可

省略可

指定不可

機能

DBキューのグループ名を定義します。また,DBキューグループ定義とサービスグループ定義とを関連づけます。dbqgrpdef定義コマンドは,1000個まで指定できます。

dbqgrpdef定義コマンドの-eオプションまたは-fオプションの指定値は,次に示す表に従って,サービスグループ情報関連定義のeesvgdef定義コマンドまたはDBキュー機能関連定義のdbqprcdef定義コマンドの指定値と合わせる必要があります。

表8‒12 dbqgrpdef定義コマンドと,eesvgdef定義コマンドまたはdbqprcdef定義コマンドとの関係

dbqgrpdef定義コマンドの指定値

eesvgdef定義コマンドまたはdbqprcdef定義コマンドの指定値

-eオプションの指定値

-tオプションを指定しない場合

-tオプションにRPCを指定または省略したeesvgdef定義コマンドの-gオプションの指定値と合わせてください。

-tオプションを指定した場合

-tオプションにDBQを指定したeesvgdef定義コマンドの-gオプションの指定値と合わせてください。

-fオプションの指定値

dbqprcdef定義コマンドの-fオプションの指定値と合わせてください。

オプション

●-d DBキューグループ名  〜〈1〜31文字の識別子〉

DBキューグループ名を指定します。TP1/EEシステム内で一意になるように指定してください。

●-p 関連づけるDBキューサービスグループ名  〜〈1〜31文字の識別子〉

DBキューサービスグループ名を指定します。

AP間通信をするDBキューに次のオプションを指定した場合,-pオプションを指定してください。

  • -cオプション

  • -oオプションにmyを指定

AP間通信をするDBキューに次のオプションを指定した場合,-pオプションは指定しないでください。

  • -eオプション

  • -fオプション

ユーザキューアクセスをするDBキューには,-pオプションは指定しないでください。

●-k 0|1  〜《0》

-dオプションで指定したDBキューグループのDBキュー機能オプションを指定します。

0

DBキュー機能オプションをTYPE0にします。

1

DBキュー機能オプションをTYPE1にします。ユーザキューアクセスをする場合は,1を指定してください。

-kオプションに1を指定した場合,RPC関連定義のrpc_tcpsend_con_max_cntオペランド,rpc_tcpsend_con_cntオペランド,およびrpc_tcpsend_proc_max_cntオペランドを必ず指定してください。dbq_inhibit_useにYを指定した場合,-kオプションには1を指定してください。dbq_inhibit_useにYを指定して-kオプションを省略または0を指定した場合,KFSB65606-E メッセージ(理由コード:5)を出力し,TP1/EEの起動が失敗します。

●-e 関連づけるサービスグループ名  〜〈1〜31文字の識別子〉

-kオプションに0を指定または省略時に,該当するDBキューから他サーバでメッセージを読み出す場合,サービスグループ情報関連定義のeesvgdef定義コマンドの-gオプションで指定したサービスグループ名を指定します。

-eオプションと-fオプションの両方を省略した場合,DBキューから自サーバでメッセージを読み出します。

-kオプションに1を指定した場合は,-eオプションを指定しないでください。

●-t

eesvgdef定義コマンドで他サーバを指定したDBキューのイベント通知を,TCP/IP通信で行います。-tオプションは,サービスグループ情報関連定義のeesvgdef定義コマンドの-tオプションにDBQを指定した場合に有効です。

●-f 関連づける他サーバのプロセス識別子  〜〈1〜31文字の識別子〉

-kオプションに0を指定または省略時に,該当するDBキューから他サーバでメッセージを読み出す場合,DBキュー機能関連定義のdbqprcdef定義コマンドの-fオプションで指定した他サーバのプロセス識別子を指定します。

-eオプションと-fオプションの両方を省略した場合,DBキューから自サーバでメッセージを読み出します。

-fオプションを指定した場合,RPC関連定義のrpc_tcpsend_con_max_cntオペランド,rpc_tcpsend_con_cntオペランド,およびrpc_tcpsend_proc_max_cntオペランドを必ず指定してください。

-kオプションに1を指定した場合は,-fオプションを指定しないでください。

●-o my|other

-kオプションに1を指定した場合,TP1/EEの開始時に,-dオプションで指定したDBキューグループのDBキューからメッセージを読み出すサーバを指定します。複数のTP1/EEで同一のDBキューを指定する場合は,一つのTP1/EEにmyを指定し,ほかのTP1/EEではotherを指定することを推奨します。複数のTP1/EEにmyを指定した場合は,後から正常開始をしたTP1/EEが読み出しサーバとなります。その際に,先に正常開始したTP1/EEのDBキューサービスはロールバックする場合があります。詳細は,「6.6.5(1) 読み出し先DBキューのステータス」を参照してください。

my

TP1/EEの開始時に,自サーバでDBキューからメッセージを読み出します。読み出し先DBキューのステータスは「自サーバ読み出し」となります。

other

TP1/EEの開始時に,他サーバでDBキューからメッセージを読み出します。読み出し先DBキューのステータスは「他サーバ読み出し」となります。

-oオプションを省略し,-kオプションに1を指定した場合は,myが仮定されます。

1つのdbqgrpdefに対して,-o myを指定または省略するTP1/EEは1つとなるように設定してください。

複数のTP1/EEで-o myを指定または省略した場合は,各TP1/EEが開始時に読み出し先DBキューのステータスを決定します。

TP1/EEが正常開始する場合は,最初に開始したTP1/EEのステータスが「自サーバ読み出し」となったあとに,順次起動した順番で「自サーバ読み出し」となるサーバが切り替わります。最後に起動したTP1/EEが「自サーバ読み出し」となります。

TP1/EE読み出し先DBキューのステータスの詳細は,「6.6.5(2) TP1/EEの開始モードと読み出し先DBキューのステータスの遷移」を参照してください。

●-c

-dオプションで指定したDBキューグループで,DBキュー読み出しサーバ変更機能を使用する場合に指定します。-kオプションに1を指定した場合に,-cオプションは指定できます。

-cオプションを省略した場合は,DBキュー読み出しサーバ変更機能を使用しません。

●-u uap|user  〜《uap》

該当するDBキューグループのDBキューでAP間通信,またはユーザキューアクセスの,どちらのメッセージ送受信方式かを指定します。

uap

AP間通信をします。

user

ユーザキューアクセスをします。

●-s stop|skip  〜《stop》

次の要因でDBキューの読み出しトランザクションがロールバックした場合の動作を指定します。

  • ee_trn_chained_rollback関数(thkind引数にEETRN_KILLまたはEETRN_ABRTを設定)

  • CBLEETRN('C-ROLL ')(データ名Cに'KILL'または'ABRT'を設定)

  • ee_trn_rollback_mark関数

  • CBLEETRN('ROLLMARK')

  • サービス関数実行中にスレッドダウン

stop

読み出しを停止します。

skip

メッセージをスキップして次のメッセージを読み出します。

ただし,-oオプションにotherを指定し,かつ-cオプションを省略した場合は,このオプションを指定しても無効になります。