7.9.4 デッドロックが発生した場合の回復方法

HCSCサーバ上のプロセスでデッドロックが発生した場合,次の方法でHCSCサーバを回復します。

<この項の構成>
(1) HCSCサーバへのサービス部品呼び出し要求が応答しなくなった場合
(2) HCSCコンポーネントや標準受付を停止できなくなった場合

(1) HCSCサーバへのサービス部品呼び出し要求が応答しなくなった場合

HCSCサーバへのサービス部品呼び出し要求が応答しなくなった場合の調査手順を次に示します。

  1. cjlistthreadコマンドを使用してスレッド情報を確認します。
  2. cjstopthreadコマンドを使用して,不正なスレッドを削除します。
  3. スレッドを削除できない場合はcscsvstopコマンドの-forceオプションを指定してHCSCサーバを強制停止してください。
    HCSC-Managerの運用環境画面からは操作できないため,注意してください。
  4. HCSCサーバを強制停止して停止が完了したら,cscsvstartコマンドを使用してHCSCサーバを再起動します。

cjstopthreadコマンドの使い方の詳細については,マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstopthread(スレッドの削除)」を参照してください。cjlistthreadコマンドの使い方の詳細については,マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjlistthread(スレッド情報の表示)」を参照してください。スレッドの状態など,実行状態の確認方法については,マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用/監視/連携編」の「5.3.11 J2EEアプリケーションの実行状態の確認」を参照してください。cscsvstopコマンドの使い方の詳細については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「cscsvstop(HCSCサーバの停止)」を参照してください。cscsvstartコマンドの使い方の詳細については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「cscsvstart(HCSCサーバの起動)」を参照してください。

(2) HCSCコンポーネントや標準受付を停止できなくなった場合

HCSCコンポーネントや標準受付を停止できなくなった場合の調査手順を次に示します。

  1. スレッドを削除できない場合は,cscsvstopコマンドの-forceオプションを指定してHCSCサーバを強制停止します。
    HCSC-Managerの運用環境画面からは操作できないため注意してください。
  2. HCSCサーバを強制停止して停止が完了したら,cscsvstartコマンドを使用してHCSCサーバを再起動します。
  3. csmlslocationコマンドやcscstatusコマンドを使用して,HCSCコンポーネントや標準受付の状態を確認します。
    停止失敗状態(stopfailed)になっている場合は,HCSCコンポーネントの場合はcsccompostopコマンドを入力してHCSCコンポーネントの停止を試みてください。標準受付の場合は,cscrcptnstopコマンドに-stopfg forceを指定して強制停止を試みてください。
    状態が停止状態(inactive)になれば,それぞれの起動コマンドを入力することで復旧します。

各コマンドの使い方の詳細については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「4. コマンド(運用環境・実行環境)」の該当するコマンドを参照してください。