If java -fullversion returns a build prior to SR3
(build 20020828), javacores and heapdumps are buffered. The default buffer
size is 512 KB. This default buffer size will cause javacores and
heapdumps that are larger than 512KB to be truncated.
How do I tell if I am running a build of a JDK that buffers javacore
and heapdump output?
Windows
From the C: \WebSphere\Appserver\java directory, issue the following
command:
java -fullversion
The output will look something like this:
java full version "J2RE 1.3.1 IBM Windows 32 build cn131w-20020710
ORB130"
AIX
From the AIX: /usr/WebSphere/AppServer/java/jre/bin directory, issue
the following command:
./java -fullversion
The output will look something like this:
java full version "J2RE 1.3.1 IBM AIX build ca131w-20030103 ORB130"
How do I override the default buffer setting of 512KB?
Windows
Add the following lines to the top of the adminserver.bat file in the
<WAS-Root>/bin directory, after the call to setupCmdLine.bat:
call "%~dp0setupCmdLine.bat"
set _JVM_THREAD_DUMP_BUFFER_SIZE=<size in bytes>
When you start the adminserver, you must use the modified adminserver.bat
file from a command prompt instead of using the services panel.
AIX
In the startupServer.sh script, add the following entry (where <size in
bytes> is the size you want to set the buffer to):
export _JVM_THREAD_DUMP_BUFFER_SIZE=<size in bytes>
What is the recommended setting for JVM_THREAD_DUMP_BUFFER_SIZE?
Are your javacores truncated?
If you javacores are truncated, set the _JVM_THREAD_DUMP_BUFFER_SIZE to
2097152 bytes (2MB)
Are your heapdumps truncated?
If you heapdumps are truncated, set the _JVM_THREAD_DUMP_BUFFER_SIZE to
1/2 of the mx value. For example, if your mx is set to 512 MB, set the
_JVM_THREAD_DUMP_BUFFER_SIZE to 268435456 bytes (256 MB)
If the heapdumps are still truncated, you can set the buffer to the same
size as the mx value. Beware, physical RAM is necessary for this buffer.
This buffer is in addition to memory that the java process is already
using. This buffer is allocated at the point of doing the dump.
|