ダンプのセットアップ

JVM は、特定のイベントの発生時に、Javadump とシステム・トランザクション・ダンプ (SYSTDUMP) を生成します。

JVM は、デフォルトでは、以下のいずれかが発生した場合にダンプを生成します。
  • SIGQUIT シグナルを受信します。
  • エラーのために JVM が終了します。
  • 予期しないネイティブ例外が発生した (例えば、SIGSEGV、SIGILL、または SIGFPE シグナルが受信された)。

-Xdumpオプションで各種シグナルの生成ダンプと、ダンプの命名規則を変更できます。 詳しくは、 ダンプ・エージェントの使用を参照してください。

トランザクション・ダンプ (IEATDUMP) の失敗

要求された IEATDUMP を生成できない場合、JVM は STDOUT および z/OS® オペレーター・コンソールにメッセージを発行します。 例:
JVMDUMP025E IEATDUMP failed RC=0x00000008 RSN=0x000000026 for DSN=J9BUILD.JVM.J9BUILD8.D131129.T210839
JVMPORT024E IEATDUMP failed because we couldn't allocate the dump data set (check disk space and field permissions)
JVMDUMP012E Error in System dump: J9BUILD.JVM.J9BUILD8.D131129.T210839
IEATDUMP メッセージの戻りコードと理由コードは、「 z/OS MVS Programming: Authorized Assembler Services Reference EDT-IXG」に記載されています。

いくつかの一般的な戻りコードと理由コードを以下に示します。

次の RC および RSN は、ダンプが書き込まれなかったこと、およびダンプ・データ・セット名が長すぎたことを示しています。
RC=0x00000008 RSN=0x00000022
次の RC および RSN は、ダンプが書き込まれなかったこと、およびダンプ・データ・セットを割り振るためのスペースが不足していることを示しています。
RC=0x00000008 RSN=0x00000026
以下の RC および RSN は、部分ダンプが書き込まれたこと、およびシステムが範囲テーブルの 1 つを満杯にしたことを示します。 詳しくは、 APAR OA43509を参照してください。
RC=0x00000004 RSN=0x00000007
トランザクション・ダンプが引き続き失敗する場合は、SLIP トラップを使用して、JVM コンソール・メッセージから z/OS SVC ダンプをトリガーできます。 例:
/SLIP SET,A=SVCD,J=USER*,MSGID=JVMDUMP012E,ID=JAVA,SDATA=(ALLPSA,NUC,SQA,RGN,LPA,TRT,SUMDUMP),END

複数のトランザクション・ダンプ (IEATDUMP) ファイル

64 ビット・プラットフォームで、IEATDUMP ファイルは、2 GB のファイル・サイズ制限を超えた場合に、 より小さい複数ファイルに分割されます。 各ファイルにはシーケンス番号が付けられます。

IEATDUMPファイル名のテンプレートを指定する場合、&DSトークンを付加して複数のダンプを使用可能にします。 & DSトークンは、順序付けられたシーケンス番号に置き換えられ、ファイル名の最後に設置しなければなりません。 例えば、X&DSは、X001X002X003の形式でファイル名を生成します。

& DS トークンなしでテンプレートを指定すると、テンプレートの末尾に.X&DS が自動的に追加されます。 テンプレートが長すぎて.X&DSを追加できない場合、メッセージが生成されます。 このメッセージは、テンプレート・パターンが長すぎるためにデフォルトのパターンが代わりに使用されることを通知します。

テンプレートを指定しないと、デフォルトのテンプレートが使用されます。 デフォルトのテンプレートは、以下に示すとおりです。
%uid.JVM.%job.D%y%m%d.T%H%M%S.X&DS
IPCS がデータを処理する前に、IEATDUMP ファイルのシーケンスをマージする。 IEATDUMP ファイルのシーケンスをマージするには、 TSO パネル IPCS > Utility > Copy MVS dump data set、または IPCS COPYDUMP コマンドを使用します。 IEATDUMPファイルをMVSからz/OS UNIX System Servicesファイルシステムにコピーまたは移動した場合、例えば、'catコマンドを使ってファイルをマージすることができます:
cat JVM.TDUMP.X001 JVM.TDUMP.X002 > JVM.TDUMP.FULL

詳しくは、 z/OS 資料の「 IEATDUMP-トランザクション・ダンプ要求 」を参照してください。