Enabling full AIX core files

You must have the correct operating system settings to ensure that the system dump (process core file) is generated when a failure occurs.

When a failure occurs, the most important diagnostic data to obtain is the system dump. The majority of the JVM settings are suitable by default but to ensure the system dump is generated on AIX®, you must check a number of operating system settings.

If you do not enable full core dumps the only native thread details stored in the system dump are the details for the thread that was running when the JVM crashed. With full core dumps enabled, all native thread details are stored in the system dump.

Operating system settings
  1. To obtain full system dumps, set the following ulimit options:
    ulimit -c unlimited		 turn on corefiles with unlimited size
    ulimit -n unlimited		 allows an unlimited number of open file descriptors
    ulimit -d unlimited		 sets the user data limit to unlimited
    ulimit -f unlimited		 sets the file limit to unlimited
    You can display the current ulimit settings with:
    ulimit -a
    These values are the "soft" limit, and are applied for each user. These values cannot exceed the "hard" limit value. To display and change the hard limits, you can run the ulimit commands using the additional -H command-line option.

    When the JVM generates a system dump it overrides the soft limit and uses the hard limit. You can disable the generation of system dumps by using the -Xdump:system:none command-line option.

  2. Set the following in smitty:
    1. Start smitty as root
    2. Go to System Environments > Change/Show Characteristics of Operating System
    3. Set the Enable full CORE dump option to TRUE
    4. Ensure that the Use pre-430 style CORE dump option is set to FALSE
    Alternatively, you can run:
    chdev -l sys0 -a fullcore='true' -a pre430core='false'
    Note: Only the root user has r/w permission for the system core files created.
Note: System core files must be configured correctly. To do this, use the syscorepath command. For more information, see Installing IBM WebSphere Real Time for AIX on 32-bit POWER.
Java™ Virtual Machine settings
The JVM settings should be in place by default, but you can check these settings using the following instructions.

To check that the JVM is set to produce a system dump when a failure occurs, run the following:

java -Xdump:what
which should include something like the following:
-Xdump:system:
    events=gpf+abort,
    label=/u/cbailey/core.%Y%m%d.%H%M%S.%pid.dmp,
    range=1..0,
    priority=999,
    request=serial
At least events=gpf must be set to generate a system dump when a failure occurs.

You can change and set options using the command-line option -Xdump, which is described in Using dump agents.

Available disk space
You must ensure that the disk space available is sufficient for the system dump to be written to it. The system dump is written to the directory specified in the label option. Up to 2 GB of free space might be required for 32-bit system dumps and over 6 GB for 64-bit system dumps. The Java process must have the correct permissions to write to the location specified in the label option.


© Copyright IBM Corporation 2005, 2010. All Rights Reserved.
© Copyright Sun Microsystems, Inc. 1997, 2007, 901 San Antonio Rd., Palo Alto, CA 94303 USA. All rights reserved.
US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
This information center is powered by Eclipse technology. (http://www.eclipse.org/)