Japan
サイト内の現在位置を表示しています。
HP-UX JavaVM HotSpotの障害とWebOTXでの対策について (2004年9月28日時点)
ここ最近、JavaVMのHotSpotの問題によるアプリケーション障害の報告を数多く受けています。ここでは障害内容について説明し、障害時の被害を最小限に抑えるための対策について記載します。Javaアプリケーション使用中のお客様はご確認をお願いします。
1. 対象となる環境
HP-UXのJavaVMでHotSpotを使用している環境が対象になります。
2. 障害内容
JavaVMがサーバAPのメソッドをHotSpotコンパイルする際に内部不整合を検出してアボート(プロセス終了)します。表面的には1つの障害ですがJavaの内部管理上は複数の問題が確認されており、既に修正されている問題もあればまだ修正されていない問題もあります。十分な評価を行っているお客様が本番に移行した後に発生することもあり、事前の検出は難しいのが現状です。
3. 障害の影響
アボート時にそのプロセスで実行中だったオペレーションが失敗します。WebOTXで、プロセス障害時の再起動設定をしていない場合は、オペレータが再起動を行うまでの間業務が縮退、あるいは停止します。
4. WebOTXでの対策
- プロセス再起動の設定
WebOTXシステムの設定である「プロセス障害時の再起動」回数を確認して下さい。ここに2以上の値が設定してあれば本障害によるプロセスアボートが起きても再起動を行いますので、業務を安定して続けることが可能になります。
- JavaVMの最新化
最新のJavaVMでは本障害を引き起こす問題の多くが修正されていますのでJavaVMの最新化をご検討下さい。その際、基本的にはメンテナンスリリースの番号(1.3.1.09なら09の部分)を最新化することをお勧めします。
なお、以下のリリースまで上げていると障害発生時の対処が迅速に行えます(詳細は後述します)。
- Java 1.3.1の場合は1.3.1.13以上
- Java 1.4.1の場合は1.4.1.05以上
- Java 1.4.2の場合は1.4.2.00以上
もしメンテナンスリリースでなくバージョンを変更する場合(1.4.1.*を1.4.2.*にする場合など)はWebOTXがそのバージョンに対応しているかリリースメモなどで確認するか、もしくはお問い合わせ下さい。
5. 発生時の対処
アボート時に出力されるcoreファイルを開発元に送付していただければ開発元で解析します。本障害と判明した場合は、回避措置と正式対処をご連絡します。
- 回避措置
coreを解析するとJavaVMが何のメソッドをコンパイル中にアボートしたかが判明します。JavaVM向けの制御ファイルにこのメソッド名を記載すると、HotSpotコンパイル対象から外すことができてアボートが避けられますので、まずはその方法をご連絡して当面の回避措置としていただきます。
なお、JavaVMが前項に記載したリリースまで上がっているとエラーログに該当メソッド名が記録されるため、core解析を待つことなく回避措置が行えます。
エラーログ名:/opt/WebOTX/Trnsv/hs_err_pid*.log (*はプロセスID)
- 正式対処
既に修正済みの障害だった場合はそのバージョンを開発元より連絡し、適用をご検討いただきます。未修正もしくは新規検出の障害だった場合は、WebOTX開発元からJava開発元へ修正依頼を行い、その反映をお待ちいただきます。
6. 更新履歴
- 2004/09/28