Interstage Application Server配下のJavaアプリケーション実行時において、以下のメッセージが出力された場合は、メモリ領域不足事象が原因による異常となります。
Javaヒープをチューニングしてください。
Javaヒープのチューニング方法は、“7.5.2 Javaヒープのチューニング”を参照してください。
EXTP4435メッセージ
ISJEE_OM1018メッセージ
各メッセージの内容については、“メッセージ集”または“Java EE運用ガイド”のメッセージ情報を参照してください。
なお、IJServerのコンテナ情報ログ(info.log)およびIJServerクラスタのJava VMログ(jvm.log)に出力される「Java VMのヒープ域不足の詳細情報」の出力形式は、図1のとおりです。
図1 Java VMのヒープ域不足の詳細情報の出力形式
-------------------------------------------------------------------------------- |
process_id: | メモリ領域不足事象が発生したJavaプロセスのプロセス番号。 |
heap_type_code: | メモリ領域不足事象が発生した領域に対応する番号です。表示される番号については、heap_typeの説明を参照してください。 |
heap_size: | メモリ領域不足事象が発生した際に使用中となっているメモリ割り当てプールのサイズ(単位:byte)。 |
max_heap_size: | 利用可能なメモリ割り当てプールの最大サイズ(単位:byte)。 |
perm_size: | メモリ領域不足事象が発生した際に使用中となっているPermanent世代領域のサイズ(単位:byte)。 |
max_perm_size: | 利用可能なPermanent世代領域の最大サイズ(単位:byte)。 |
heap_type: | 不足領域情報(メモリ領域不足事象が発生した領域の名前など)を表示します。
|
stack_trace: | メモリ領域不足事象が発生したスレッドがJavaアプリケーションを実行しているスレッドだった場合は、当該スレッドのスタックトレースが出力されます。それ以外のスレッドの場合、またはリソース不足によりスタック情報が取り出せない場合は、スタックトレースは出力されません。(注1) |
(注1) RHEL6(x86)/RHEL6(Intel64)に対応する富士通版JDK/JREを用いたJavaプロセスの場合に、この情報が出力される可能性があります。
図2 Java VMのヒープ域不足の詳細情報の出力例
【RHEL5(x86)上で動作するJDK/JRE 5.0の場合の出力例】
-------------------------------------------------------------------------------- |
【RHEL6(x86)上で動作するJDK/JRE 6の場合の出力例】
-------------------------------------------------------------------------------- OutOfMemory Log -------------------------------------------------------------------------------- pid=4696 heap_type=1 heap_size=136800 max_heap_size=6291456 perm_size=2052320 max_perm_size=67108864 -------------------------------------------------------------------------------- VM is terminated by occurred OutOfMemoryError on Java heap. "main" prio=6 tid=0x00307000 nid=0x12a8 runnable [0x0092f000] java.lang.Thread.State: RUNNABLE at test.<init>(test.java:10) at test.main(test.java:5) |
JDK/JRE 6からスタックトレース情報にスレッドの状態を表す情報(トレース情報の前の行)が表示されるようになりました。
図中の例では「java.lang.Thread.State: RUNNABLE」となっていますが、"RUNNABLE"の部分が、"NEW"、"TIMED_WAITING (sleeping)"、"WAITING (on object monitor)"、"TIMED_WAITING (on object monitor)"、"WAITING (parking)"、"TIMED_WAITING (parking)"、"BLOCKED (on object monitor)"、"TERMINATED"、"UNKNOWN"などの表示の場合があります。