IBM Support

MustGather: Java Virtual Machine General Issues: How to Collect Data for the IBM Technology for Java VM

Troubleshooting


Problem

Collecting data for general problems with IBM Java Virtual Machine on the IBM i operating system. Gathering this MustGather information before calling IBM Support will help familiarize you with the troubleshooting process and save you time.

Resolving The Problem


1. Collect the following information when the Java Virtual Machine process (job) is experiencing the problem.

Issue the following commands to create the following spooled files that should be sent to IBM.

These items can be collected BEFORE the issue occurs:
WRKPTFGRP (use F6 to print or send a screen shot showing the installed status of PTFs)
DSPPTF OUTPUT(*PRINT)
WRKSBS OUTPUT(*PRINT)
WRKSHRPOOL OUTPUT(*PRINT)

These items need to be collected when the issue occurs:
WRKSYSSTS OUTPUT(*PRINT)
WRKACTJOB OUTPUT(*PRINT)
DSPJOBLOG JOB(JOBNUMBER/JOBUSER/JOBNAME) OUTPUT(*PRINT)


2. Collect JVM Summary information.

For IBM i 6.1 and later...
Execute the PRTJVMJOB command by doing the following:

  • Issue the WRKJVMJOB command.
  • Type 13 on the target job, and press Enter to print (a spooled file is generated).

NOTE: This should be done in tandem with collecting the Java dumps.

If the WRKJVMJOB command is not available, you can generate a JVM summary dump using the JVMINFO SST Advanced Analysis Command.

Use the JVMINFO Advanced Analysis Macro. Specify the -all <task> option.
For additional information on the JVMINFO macro, refer to IBM technote, IBM Technology for Java (J9) Serviceability - JVMINFO and How to Gather System, Java, Heap, and GcCycle Dumps in IBM i 5.4 and Later. Under V5R4 and later section, you will specify -all <task> for Step 14.


3. Gather three or four Java Dumps for the JVM when it is experiencing the issue.

For IBM i 6.1 and later...
Execute the GENJVMDMP JOB(x/x/x)TYPE(*JAVA) command by doing the following:
  • Issue the WRKJVMJOB command.
  • Type 12 on the target job, and press Enter to initiate the Java dump. A javacore.xxx.txt file will be produced. The location of this dump will be listed in the JVM job log.

NOTE: This should be done in tandem with collecting the JVM Summary dumps. Gather a Java Dump 3-4 times separated by 1 minute intervals so we can see changes in thread activity. The Java dump will create a javacore.xxx.xxxx.xxxx.xxxx.txt file in the directory defined for the "user.dir" JVM property. For any JVM, you can find the exact location of the core file by viewing the JVM job log (DSPJOBLOG).

If the WRKJVMJOB command is not available, you can also generate a Java dump using the Qshell kill command.

a. Find the ProcessID (PID) from the joblog of the JVM.
WRKJOB JOB(NUMBER/USER/NAME), Option 10 to Display job log
Example message text: "Java Virtual machine is IBM Technology for Java. PID(5706)
5706 is the PID of the JVM.

b. On the operating system command line, type the following:
QSH
Press the Enter key.

c. Type in the following command:
kill -quit <PID>
where <PID> is the ProcessID of the JVM recorded in Step 1.
Press the Enter key.

d. The dump file location can be found by checking the joblog of the JVM.
Example messages returned: "JVMDUMP007I JVM Requesting Java Dump using
'.../javacore.xxx.xxx.xxx.xxx.txt'"
"JVMDUMP010I Java Dump written to '.../javacore.xxx.xxx.xxx.xxx.txt'"

e. Wait one minute.
kill -quit <PID>
where <PID> is the ProcessID of the JVM recorded in Step 1.

f. Repeat step e 2 to 3 more times.


4. Gather a GcCycle Dump for the JVM when it is experiencing the issue.

For IBM i 6.1 and later...
Dump the GcCycles data by doing the following:
  • Issue the WRKJVMJOB command.
  • Type option 9 on the target job, and press ENTER. Then, press F7 to print the GC Tables to a spool file.

If the WRKJVMJOB command is not available, you can generate a GcCycle dump using the JVMINFO SST Advanced Analysis Command.

Use the JVMINFO Advanced Analysis Macro. Specify the -gcCycles <task> option.
For additional information on the JVMINFO macro, refer to IBM technote, IBM Technology for Java (J9) Serviceability - JVMINFO and How to Gather System, Java, Heap, and GcCycle Dumps in IBM i 5.4 and Later. Under V5R4 and later section, you will specify -all <task> for Step 14.

5. Check for License Internal Code logs that occurred during the occurrence of the issue.

a. Issue the STRSST command.
b. Enter SST UserID/PWD.
c. Option 1. Start a service tool (press Enter).
d. Option 5. Licensed Internal Code log (press Enter).
e. Option 1. Select entries from the Licensed Internal Code (LIC) log (press Enter two times).
f. Specify a Enty type: Major code of 4700 and minor code of 0000. Then, press Enter.
g. Look at the date and time the entry was produced. If a log exists at the time of the issue, then enter a 1 next to it and press Enter to print the log.

6. How to collect and send diagnostic information to IBM Support
    i. Collect the following spooled files.

    QSYSPRT (WRKPTFGRP)
    QPDSPSTS (WRKSYSSTS)
    QPDSPSBS (WRKSBS)
    QSYSPRT (WRKSHRPOOL)
    QPDSPJOBLOG (DSPJOBLOG)
    QPJVAWRKVM (JVM Summary (V6R1) & GcCycles) (IBM Technology for Java Only)
    QPCSMPRT (JVM Summary (V5R4))
    QPCSMPRT (License Internal Code Logs)

    Directions for collecting spooled files that you own

    To retrieve the spooled files that you own, do the following:
    a.Open the System i Navigator.
    b.Expand your system where the files are located. Log in with your user ID (preferably QSECOFR or equivalent).
    c.Expand Basic Operations, and then left click on Printer Output to display the output files.
    e.Locate the following spooled files: Refer to the list above.
    f.Finally, right click the files from System i Navigator, select Export..., select the destination folder, and click Save.

    Directions for collecting spooled files under a different user than yourself

    To retrieve the spooled files that another user owns, do the following:
    a.Open the System i Navigator.
    b.Expand your system where the files are located. Log in with your user ID (preferably QSECOFR or equivalent).
    c.Expand Basic Operations, and then right click on Printer Output, and select Customize this View.
    d.Under the General tab, click Browse, from the list of users, and select the user who owns the spooled file.
    e.Locate the following spooled file(s): Refer to the list above.
    f.Finally, right click the files from System i Navigator, select Export..., select the destination folder, and click Save.
      ii. Collect the javacore.xxx.xxx.txt file from the IFS of the System i.

      Directions for collecting files located in the IFS

      To retrieve the file(s), do the following:
      a.Open the System i Navigator.
      b.Expand your system where the files are located. Log in with your user ID (preferably QSECOFR or equivalent).
      c.Expand File Systems, and drill down to the directory that contains the file(s) requested by this document.
      d.Locate the following file(s):
      The java dump file can be found by checking the joblog of the JVM.
      WRKJOB JOB(NUMBER/USER/NAME), Option 10 to Display job log

      Java Dump:

      Example messages returned: "JVMDUMP007I JVM Requesting Java Dump using '.../javacore.xxx.xxx.xxx.xxx.txt'"

      "JVMDUMP010I Java Dump written to '.../javacore.xxx.xxx.xxx.xxx.txt'"

      e.Finally, drag and drop the files from System i Navigator to your desktop.
        iii. Upload the data to IBM Support.

        Transferring files to IBM

        For transferring files to IBM that are smaller than 2GB each (files may exceed 2GB in total)

        For transferring files to IBM that are smaller than 2GB each (files may exceed 2GB in total)

        If you have an existing PMR

        If you have an existing PMR

        1. Sign on to the SR tool at the following URL:
        http://www.ibm.com/support/entry/portal/open_service_request

        2. On the Welcome page, enter the PMR number in the Enter a report number field and click Go.

        3. Scroll down to the Attach Relevant File field.

        4. Click Browse to locate the log or trace file that you want to submit to IBM Support.

        5. Click Submit to transfer your file to IBM Technical Support through FTP (ECuRep) and associated with this PMR.

        If you are opening a new PMR

        If you are opening a new PMR

        1. Sign on to the SR tool at the following URL:
        http://www.ibm.com/support/entry/portal/open_service_request

        2. Select Open a new service request.

        3. Follow the steps to create a Service Request until you have come to the final page prior to submitting your request.

        4. Scroll down to the Attach additional files section.

        5. Click Browse to start adding files to your PMR. Note that there is a 2GB limit per file.

        6. Click Submit when you are done adding files and are ready to submit your PMR to IBM Service.



        For transferring files to IBM that exceed 2GB each

        For transferring files to IBM that exceed 2GB each

        Important Note: You must have a PMR created to complete these steps.

        1. Prepare your files for transfer:

        a. You should compress (if possible) each file, or multiple files, into one zip archive. This will speed up the transfer process and make the overall process easier.
        b. Rename your file(s) prior to transfer. Use the following file naming convention to name your file:

        Caution: The file must use this format to be associated with the PMR; this is the complete PMR record number. Using any other file name will cause the file to be deleted.

        Enter your PMR record information and file type as follows:
        xxxxx.bbb.ccc.yyy.zzz

        where:
        xxxxx = PMR number
        bbb = Branch
        ccc = Country code
        yyy = Unique file name
        zzz = File type or file extension

        Example

        12345.055.000.collector01_29_Aug_06.zip

        2. From a command prompt, terminal window, or FTP client, FTP to the following site:

        ftp testcase.boulder.ibm.com

        3. Log in as anonymous.

        NOTE: At some point in time, IBM will remove anonymous login. Refer to this URL for information to obtain an IBM ID and password.

        http://www-01.ibm.com/support/docview.wss?uid=nas8N1022576

        4. Enter your e-mail address as the password.

        5. Using the cd command, change to the following directory:

        cd /toibm/os400

        6. Enter the following command to place the file on the server:

        put file_name

        7. Enter the quit command to end your transfer session.

        [{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.1.0"}]

        Historical Number

        546815228

        Document Information

        Modified date:
        18 December 2019

        UID

        nas8N1012578