Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プロトコル TP1/NET/Secondary Logical Unit - TypeP2編


9.1.1 SLU - TypeP2運用中の障害と対応処理

SLU - TypeP2運用中の障害と対応処理について,障害の種類ごとに示します。

また,センスコードの詳細は,「付録H.3 SLU - TypeP2が使用するセンスコード」を参照してください。

〈この項の構成〉

(1) コネクション障害

コネクション障害の発生個所に応じたSLU - TypeP2の障害処理については,「9.2 コネクション障害」を参照してください。

表9‒1 コネクション障害発生時の処理

障害の内容

SLU - TypeP2の処理

ユーザの処置

通信管理からのH2_ABORT受信など

  1. 該当する論理端末ごとの障害処理をします(「9.1.2 論理端末ごとの障害処理」参照)。

  2. コネクション障害を通知するメッセージログ(KFCA15121-E)を出力します。

端末起動の場合は次のどちらかの方法で再び確立処理をします。

・運用コマンド(mcftactcn)を入力する

・API(dc_mcf_tactcn関数またはCBLDCMCF('TACTCN△△'))を発行する

ホスト起動の場合はホスト側から確立要求をするようにしてください。

通信管理マクロエラーリターン

  1. 該当する論理端末ごとの障害処理をします(「9.1.2 論理端末ごとの障害処理」参照)。

  2. コネクション障害を通知するメッセージログ(KFCA15120-E)を出力します。

セションパラメタ不正のBINDコマンドを受信

  1. -RSPを送信します。センスコードを次に示します。

    セションパラメタ不正:08210000

  2. -RSP送信したことを通知するメッセージログ(KFCA15204-E)を出力します。

  3. CERREVT(コネクション障害,下位層障害)を起動します。

  4. コネクション障害を通知するメッセージログ(KFCA15302-E)を出力します。

  5. コネクション確立処理を中断します。

SLU-TypeP2の定義誤りの場合,誤りを訂正し,定義オブジェクトを作り直してOpenTP1を再開始します。

(2) 論理端末障害

論理端末の端末タイプごとに処理が異なります。

(a) request型

表9‒2 request型論理端末の障害発生時の処理

障害の内容

SLU - TypeP2の処理

ユーザの処置

メッセージ送信完了エラー,拒否応答(-RSP)受信

  1. UAPにエラーリターンします。

    リターン値DCMCFRTN_73001(同期)を返します。

  2. CERREVT(論理端末障害,送信中断)を起動します。

  3. 出力キューを削除します(同期)。

  4. 再送準備を要求します(非同期)。

  5. 論理端末を閉塞します。

  6. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  7. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

障害要因を取り除いたあと,次のどちらかの方法で論理端末を閉塞解除します。

・運用コマンド(mcftactle)を入力する

・API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

出力キュー読み込み障害,出力メッセージ編集UOCエラーリターン,送信バッファサイズ不足

  1. UAPにエラーリターンします。

    リターン値DCMCFRTN_73001(同期)を返します。

  2. CERREVT(論理端末障害)を起動します。

  3. 出力キューを削除します(同期)。

  4. 再送準備を要求します(非同期)。

  5. 論理端末を閉塞します。

  6. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  7. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

  8. 内部処理障害を通知するメッセージログ(KFCA15396-E)を出力します。

出力キュー読み込み障害

障害要因を取り除いてください。

出力メッセージ編集UOCエラーリターン

出力メッセージ編集UOC処理を見直してください。

送信バッファサイズ不足

システム定義を修正してください。

送信メッセージ削除失敗

処理を続行します。

ありません。

タイムアウト

  1. UAPにエラーリターンします。

    リターン値DCMCFRTN_73005(同期)を返します。

  2. 出力キューを削除します(同期)。

  3. 論理端末を閉塞します。

  4. コネクションを切断します。

  5. CERREVT(コネクション障害,タイムアウト)を起動します。

  6. セション解放を通知するメッセージログ(KFCA15202-I)を出力します。

  7. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

  8. コネクション障害を通知するメッセージログ(KFCA15302-E)を出力します。

端末起動の場合は次のどちらかの方法で再び確立処理をします。

・運用コマンド(mcftactcn)を入力する

・API(dc_mcf_tactcn関数またはCBLDCMCF('TACTCN△△'))を発行する

ホスト起動の場合はホスト側から確立要求をするようにしてください。

不正応答メッセージ受信(ブラケット違反,チェイン違反,RU長不正)

  1. UAPにエラーリターンします。

    リターン値DCMCFRTN_73001(同期)を返します。

  2. 出力キューを削除します(同期)。

  3. -RSPを送信します。

    センスコードを次に示します。

    ・ブラケット違反:20030000

    ・チェイン違反:20020000

    ・RU長不正:10020000

  4. -RSP送信したことを通知するメッセージログ(KFCA15204-E)を出力します。

  5. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

相手システムへ不正応答メッセージを受信したことを連絡してください。

入力キュー書き込み障害,アプリケーションスケジュール失敗,入力メッセージ編集UOCエラーリターン

  1. CERREVT(論理端末障害,入力キュー障害)を起動します。

  2. 論理端末を閉塞します。

  3. -RSPを送信します。

    センスコードを次に示します。

    ・要求不実行:08000000

  4. -RSP送信したことを通知するメッセージログ(KFCA15204-E)を出力します。

  5. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  6. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

  7. 内部処理障害を通知するメッセージログ(KFCA15396-E)を出力します。

障害要因を取り除いたあと,次のどちらかの方法で論理端末を閉塞解除します。

・運用コマンド(mcftactle)を入力する

・API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

送信仕掛り中のmcftdctle入力

  1. コマンドをエラーリターンします。

  2. 論理端末の使用中を通知するメッセージログ(KFCA15338-E)を出力します。

ありません。

応答ダミーデータ受信

  1. UAPにエラーリターンします。

    リターン値DCMCFRTN_73005を返します。

ありません。

メッセージコンテンション

(ブラケット開始拒否)

  1. -RSPを送信します。

    センスコードを次に示します。

    ・ブラケット開始拒否:08130000,08140000

  2. -RSP送信したことを通知するメッセージログ(KFCA15204-E)を出力します。

ありません。

(b) send型

表9‒3 send型論理端末の障害発生時の処理

障害の内容

SLU - TypeP2の処理

ユーザの処置

メッセージ送信完了エラー,拒否応答(-RSP)受信

  1. -RSP受信したことを通知するメッセージログ(KFCA15205-E)を出力します。

  2. CERREVT(論理端末障害,送信中断)を起動します。

  3. 再送準備を要求します(非同期)。

  4. 論理端末を閉塞します。

  5. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  6. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

障害要因を取り除いたあと,次のどちらかの方法で論理端末を閉塞解除します。

・運用コマンド(mcftactle)を入力する

・API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

出力キュー読み込み障害,出力メッセージ編集UOCエラーリターン,送信バッファサイズ不足

  1. CERREVT(論理端末障害)を起動します。

  2. 論理端末を閉塞します。

  3. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  4. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

  5. 内部処理障害を通知するメッセージログ(KFCA15396-E)を出力します。

  6. 再送準備を要求します。

出力キュー読み込み障害

障害要因を取り除いてください。

出力メッセージ編集UOCエラーリターン

出力メッセージ編集UOC処理を見直してください。

送信バッファサイズ不足

システム定義を修正してください。

送信メッセージ削除失敗

処理を続行します。

ありません。

送信仕掛り中のmcftdctle入力

  1. コマンドをエラーリターンします。

  2. 論理端末の使用中を通知するメッセージログ(KFCA15338-E)を出力します。

ありません。

メッセージコンテンション

(ブラケット開始拒否)

  1. -RSPを送信します。

    センスコードを次に示します。

    ・ブラケット開始拒否:08130000,08140000

  2. -RSP送信したことを通知するメッセージログ(KFCA15204-E)を出力します。

ありません。

(c) receive型

表9‒4 receive型論理端末の障害発生時の処理

障害の内容

SLU - TypeP2の処理

ユーザの処置

入力キュー書き込み障害,アプリケーションスケジュール失敗,入力メッセージ編集UOCエラーリターン

  1. CERREVT(論理端末障害)を起動します。

  2. -RSPを送信します。

    センスコードを次に示します。

    ・要求不実行:08000000

  3. -RSP受信したことを通知するメッセージログ(KFCA15205-E)を出力します。

  4. 論理端末を閉塞します。

  5. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

  6. 論理端末閉塞を通知するメッセージログ(KFCA15312-I)を出力します。

  7. 内部処理障害を通知するメッセージログ(KFCA15396-E)を出力します。

  8. 再送準備を要求します。

障害要因を取り除いたあと,次のどちらかの方法で論理端末を閉塞解除します。

・運用コマンド(mcftactle)を入力する

・API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

(3) その他の障害

表9‒5 論理端末の型に共通する,その他の障害発生時の処理

障害の種類

SLU - TypeP2の処理

ユーザの処置

受信メッセージと論理端末の端末タイプの不一致※1

  1. 受信メッセージを破棄します。

  2. -RSPを送信します。

    センスコードを次に示します。

    ・要求不実行:08000000

  3. -RSP受信したことを通知するメッセージログ(KFCA15205-E)を出力します。

  4. CERREVT(論理端末障害)を起動します。

  5. 論理端末を閉塞します。

  6. 論理端末障害を通知するメッセージログ(KFCA15303-E)を出力します。

ホスト側との構成を見直してください。

送信メッセージと論理端末の端末タイプの不一致※2

UAPにエラーリターンします。

UAPで後処理をする必要があります。

送信メッセージ消去失敗

処理を続行します。

ありません。

送信バッファ面数不足

  1. メモリダンプを出力します。

  2. コネクションを切断します。

  3. CERREVT(コネクション障害)を起動します。

  4. コネクション強制解放を通知するメッセージログ(KFCA15398-E)を出力します。

  5. コネクション障害を通知するメッセージログ(KFCA15302-E)を出力します。

バッファ面数を増やしてOpenTP1を再開始します。

受信バッファ面数不足

  1. メモリダンプを出力します。

  2. コネクションを切断します。

  3. CERREVT(コネクション障害)を起動します。

  4. コネクション障害を通知するメッセージログ(KFCA15302-E)を出力します。

バッファ面数を増やしてOpenTP1を再開始します。

同期送受信

(sendrecv)中にUAP終了

  1. 論理端末障害を通知する通知するメッセージログ(KFCA15303-E)を出力します。

  2. 論理端末を閉塞するメッセージログ(KFCA15396-E)または処理を続行するメッセージログ(KFCA15397-E)を出力します。

  3. メモリダンプを取得します。

    (論理端末を閉塞する場合)

  4. CERREVT(論理端末障害)を起動します。

  5. 論理端末を閉塞します。

UAPを見直し,障害要因を取り除いたあと,論理端末が閉塞されている場合は,次のどちらかの方法で論理端末を閉塞解除します。

・運用コマンド(mcftactle)を入力する

・API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

内部障害

  1. メモリダンプを出力します。

  2. 内部処理実行中異常を通知するメッセージログ(KFCA15399-E)を出力します。

  3. プロセスを異常終了します。

OpenTP1を再開始します。

注※1

例えば,send型の論理端末にメッセージ受信した場合に発生します。

注※2

例えば,次の場合に発生します。

  • receive型の論理端末に対して送信要求(send,sendrecv)を実行した場合

  • send型の論理端末に対して同期送受信関数(sendrecv)を実行した場合