mcfthldoq
形式
mcfthldoq〔-s MCF通信プロセス識別子〕 -l 論理端末名称 〔-k 保留種別〕
機能
指定した論理端末に対応する出力キューの処理を保留します。
このコマンドを使用すると,OpenTP1システムに「注意事項」に示す影響を与えます。このコマンドを実行後,目的の処理が終了したら,必ずmcftrlsoqコマンドで保留解除を行ってください。
オプション
●-s MCF通信プロセス識別子
処理対象の論理端末を制御するMCF通信サービスのMCF通信プロセス識別子を指定します。MCF通信プロセス識別子は複数指定できません。
このオプションの指定を省略すると,すべてのMCF通信サービスに対して,mcfthldoqコマンドを実行します。したがって,MCF通信サービスを検索するオーバヘッドが,運用コマンドの処理に加わります。
MCF通信サービスが多い構成や運用コマンドを多数入力する運用を行う場合は,-sオプションで,MCF通信プロセス識別子を指定する運用設計を行ってください。
●-l 論理端末名称 〜〈1〜8文字の識別子〉
出力キューの処理を保留する論理端末の名称を指定します。
論理端末名称は,1回につき8個まで指定できます。多数入力する運用を行う場合は,次に示す複数指定または一括指定を使用して,一つの運用コマンドで行う並列処理数を増やし,運用コマンド入力数を減らすように運用設計を行ってください。
複数の論理端末名称を指定するときは,引用符(")で囲んで,論理端末名称と論理端末名称との間を空白で区切ります。同一論理端末名称は,重複して指定できません。
論理端末名称は,*を使って一括指定ができます。一括指定は一つだけ指定できます。一括指定と一括指定以外の論理端末名称を混在して指定できません。一括指定の場合も,引用符(")で囲みます。
-
*:すべての論理端末に対応する出力キューの処理を保留します。
-
先行文字列*:先行文字列で始まるすべての論理端末に対応する出力キューの処理を保留します。
- 〈複数指定の例〉len1,len2,len3を指定する場合
-
-l "len1△len2△len3"
- 〈一括指定の例〉lenで始まるすべての論理端末を指定する場合
-
-l "len*"
●-k 保留種別 〜《insc》
保留種別を指定します。
insc:出力キューの入力とスケジュールを保留します。
in:出力キューの入力だけ保留します。
sc:出力キューのスケジュールだけ保留します。
出力メッセージ
メッセージID |
内容 |
出力先 |
---|---|---|
KFCA10104-W |
該当する論理端末はすでに保留されています |
標準エラー出力 |
KFCA10122-W |
コマンド処理は正常に行われましたが状態引き継ぎ登録処理に失敗しました |
標準エラー出力 |
KFCA10123-W |
コマンド処理は正常に行われましたが,状態引き継ぎ個数が,定義で指定された上限値を超えているため,状態引き継ぎ登録ができませんでした |
標準エラー出力 |
KFCA10350-I |
mcfthldoqコマンドが入力されました |
標準出力 |
KFCA10351-E |
MCF開始処理中です |
標準エラー出力 |
KFCA10352-E |
MCF終了処理中です |
標準エラー出力 |
KFCA10353-W |
入力形式が誤っています |
標準エラー出力 |
KFCA10354-E |
メモリ不足です |
メッセージログファイル,または標準エラー出力 |
KFCA10355-W |
引数の指定が誤っています |
標準エラー出力 |
KFCA10356-E |
プロセス間でタイムアウトが発生しました |
標準エラー出力 |
KFCA10357-E |
MCF内でタイムアウトが発生しました |
標準エラー出力 |
KFCA10358-E |
内部関数のエラーが発生しました |
メッセージログファイル,または標準エラー出力 |
KFCA10359-W |
mcfthldoqコマンド入力元への応答に失敗しました |
メッセージログファイル,または標準エラー出力 |
KFCA10371-I |
mcfthldoqコマンドを正常に受け付けました |
標準出力 |
KFCA10373-E |
mcfthldoqコマンドが異常終了しました |
標準エラー出力 |
KFCA10380-E |
相手プロセスの検索に失敗しました |
標準エラー出力 |
KFCA10382-E |
指定した論理端末は登録されていません |
標準エラー出力 |
KFCA10391-E |
mcfthldoqコマンドはサポートされていません |
標準エラー出力 |
KFCA10525-I |
ヘルプメッセージ |
標準出力 |
KFCA16402-E |
コマンド処理中にRPC障害が発生しました |
標準エラー出力 |
注意事項
-
任意の論理端末の出力キューの入力を保留した場合,該当する論理端末に対してメッセージ送信を行ったUAPは,保留解除されるまで停止します。UAPの動作を停止するタイミングは,同期点処理で待ち合わせるか関数発行時に待ち合わせるかを選択できます。詳細については,マニュアル「OpenTP1 システム定義」のUAP共通定義(mcfmuap)を参照してください。
-
複数の論理端末にメッセージ送信を行うUAPを使用する場合,その一つの論理端末の出力キューの入力を保留すると,ほかの論理端末へのメッセージ送信も保留解除されるまで停止することがあります。
-
保留中の論理端末が一つでもある場合に,正常終了,計画停止A,または計画停止BでOpenTP1を終了すると,OpenTP1は異常終了します。正常終了,計画停止A,または計画停止BでOpenTP1を終了するときは,すべての論理端末の保留を解除したあとにdcstopコマンドを実行してください。
-
次のアプリケーションを処理する,論理端末の出力キューの入力を保留する場合の注意事項を示します。
-
応答型のアプリケーション
-
継続問い合わせ応答型のアプリケーション
-
キーボードロックを指定(論理端末定義(mcftalcle -K)のkeyboardオペランドにaplockを指定)している,TP1/NET/XMAP3の論理端末で受信した非応答型のアプリケーション
- これらのアプリケーションを処理していたUAPを強制停止した場合
-
トランザクション回復プロセスやMCFマネジャプロセスにおいて回復処理を待ち合わせます。この場合,他のトランザクションの回復処理も待ち合わせるため,速やかにmcftrlsoqコマンドで論理端末の出力キューの入力保留を解除してください。
トランザクション回復プロセスやMCFマネジャプロセスの処理を待ち合わせている場合,ログメッセージKFCA16538-Iを出力します。
prcls -aコマンドで,待ち合わせをしているプロセスがトランザクション回復プロセスやMCFマネジャプロセスであることも確認できます。
- これらのアプリケーションを処理していたUAPのプロセスでロールバック処理が発生した場合
-
論理端末の出力キューの入力保留を解除するまでdcsvstop -fコマンドによる強制停止を待ち合わせます。処理を続行する場合は,mcftrlsoqコマンドで論理端末の出力キューの入力保留を解除してください。
UAPのプロセスでのロールバック処理は,サービス関数のリターンまたはdc_mcf_commit関数による同期点取得時に,サービス関数での関数発行漏れをMCFが検出した場合(関数発行漏れを検出した場合,ログメッセージKFCA11110-Eが出力されます),およびRETURN(actionにDCMCFRRTN)を設定したdc_mcf_rollback関数を発行した場合に発生します。
-