IBM Support

IZ73156: NATIVE OOMS ON NON-ZOS 64-BIT JVMS USING -XCOMPRESSEDREFS CAUSED BY JAVA HEAP ALLOCATED IN 32-BIT SPACE

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Error Message: N/A
    .
    Stack Trace: N/A
    .
    All JVM allocations from native memory are occurring below the 4
    GB memory mark.  When the heap is in this range as well this
    leads to a out of memory error when in fact there is still
    plenty of free native memory, just none in the 0-4GB region.
    

Local fix

Problem summary

  • This problem can occur on any non-zOS 64 bit JVM running in
    compressed reference mode (using the -Xcompressedrefs option,
    which was introduced in IBM Java 6.0).
    
    A compressed references JVM will make some native memory
    requests in the 0-4GB range only, for performance reasons. When
    this range is exhausted a native OutOfMemoryError will be
    thrown with the detail message "native memory exhausted".
    
    Under some circumstances the Java Heap can be allocated in the
    0-4GB range, reducing the amount of memory available for these
    allocations and presenting the symptom earlier than necessary.
    

Problem conclusion

  • The JVM has been updated to include an option for specifying the
    base memory address for the heap.
    Example for starting at the 4GB memory mark
    -Xgc:preferredHeapBase=0x100000000
    If the heap cannot be allocated in a contiguous block at the
    preferredHeapBase address specified, an error occurs detailing a
    GC allocation failure startup.
    
    This defect will be fixed in:
    6.0.0 SR7
    

Temporary fix

Comments

APAR Information

  • APAR number

    IZ73156

  • Reported component name

    J9 COMMON CODE

  • Reported component ID

    620700127

  • Reported release

    600

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-03-23

  • Closed date

    2011-05-20

  • Last modified date

    2014-07-14

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    J9 COMMON CODE

  • Fixed component ID

    620700127

Applicable component levels

  • R600 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Virtual Machine

Software version: 6.0

Reference #: IZ73156

Modified date: 14 July 2014