Start of change

JVM_INFO table function

The JVM_INFO table function returns information about active Java™ Virtual Machine (JVM) jobs. A default wait time can be set for a JVM response.

The information returned is similar to the detail available through the Work with JVM Jobs (WRKJVMJOB) CL command.

Authorization: The caller must have *JOBCTL special authority to see values for columns other than the job name columns and PROCESS_ID.

Read syntax diagramSkip visual syntax diagramJVM_INFO(WAIT_TIME => wait-time)
The schema is QSYS2.
wait-time
An integer value that provides the amount of time to wait, in seconds, for a JVM to return information. Valid values are 1 to 120.
Values other than 1, 2, 3, 4, 5, 10, 30, 60, and 120 will be rounded up to the next higher value. The default is 3 seconds.
When a timeout occurs, values are returned for the job name columns and the PROCESS_ID column.

The result of the function is a table containing rows with the format shown in the following table. All the columns are nullable.

Table 1. JVM_INFO table function
Column Name Data Type Description
JOB_NAME VARCHAR(28) The qualified job name for the active JVM.
Start of changeJOB_NAME_SHORTEnd of change Start of changeVARCHAR(10)End of change Start of changeThe name of the job for the active JVM.End of change
Start of changeJOB_USEREnd of change Start of changeVARCHAR(10)End of change Start of changeThe user profile that started the job for the active JVM.End of change
Start of changeJOB_NUMBEREnd of change Start of changeVARCHAR(6)End of change Start of changeThe job number of the job for the active JVM.End of change
PROCESS_ID INTEGER The process identifier used by the kernel to uniquely identify the process.
START_TIME TIMESTAMP The current time when the JVM was started.
INITIAL_THREAD_TASKCOUNT BIGINT The taskcount or TDE number of the JVM's initial thread. The taskcount or TDE number is a unique identifier assigned to each job, thread, and task running in the system.
JAVA_THREAD_COUNT BIGINT The current number of java threads within the JVM job.
TOTAL_GC_TIME BIGINT Total time spent performing garbage collection tasks in milliseconds.
GC_CYCLE_NUMBER INTEGER The current or last garbage collection cycle performed.
GC_POLICY_NAME VARGRAPHIC(16)
CCSID 1200
The name of the garbage collection policy in use.
JAVA_HOME VARGRAPHIC(1024)
CCSID 1200
The java.home environment variable value in effect for this JVM.

This value indicates the JDK that is used when running a Java application. The location of the Java tools and utilities is in one of two directories, either <JAVA_HOME>/jre/bin or <JAVA_HOME>/bin, where <JAVA_HOME> is the value of the JAVA_HOME environment variable. For example, if JAVA_HOME is set to /QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit, indicating that IBM® Technology for Java 6 32-bit is to be used, then the Java tools and utilities directories would be:

/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/bin  
/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre/bin
USER_DIRECTORY VARGRAPHIC(1024)
CCSID 1200
The user working directory for the JVM.

This also indicates the location where diagnostic detail will be dumped for the JVM.

NUM_CURRENT_PROPERTIES INTEGER Total number of Java system properties currently present.
INITIAL_HEAP_SIZE BIGINT The initial heap size available to the JVM code, in kilobytes.
CURRENT_HEAP_SIZE BIGINT The amount of memory, in kilobytes, currently allocated for heap space.
IN_USE_HEAP_SIZE BIGINT The amount of memory, in kilobytes, currently in use by the heap.
MAX_HEAP_SIZE BIGINT The maximum heap size available to the JVM code, in kilobytes.
MALLOC_MEMORY_SIZE BIGINT The amount of memory, in kilobytes, that has been allocated with malloc().
INTERNAL_MEMORY_SIZE BIGINT The amount of memory, in kilobytes, that the JVM is using for internal operations.
JIT_MEMORY_SIZE BIGINT The size of the memory space, in kilobytes, that is used by the JIT (Just in Time) compiler.
SHARED_CLASS_SIZE BIGINT The amount of memory, in kilobytes, that the JVM is using for shared classes.
BIT_MODE INTEGER The Java version of this job.
32
32 bit Java job
64
64 bit Java job

Example

  • Show information for all JVMs on the system. Do not wait longer than 10 seconds for the results of any individual JVM to be returned.
    SELECT * FROM TABLE(QSYS2.JVM_INFO(WAIT_TIME => 10));
End of change