IBM Support

IT23684: XC130031 access violation and JVM termination with multi-threaded Java application

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • A multi-threaded MQ classes for Java application that
    connections to and disconnects from a queue manager repeatedly
    using the BINDINGs transport mode experiences an access
    violation within an MQ library that results in an FFDC and JVM
    termination.  The FFDC from the error contains information such
    as:
    
    Probe Id          :- XC130031
    Component         :- xehExceptionHandler
    
    Process Name      :- C:\Program
    Files\Java\jdk1.7.0_80\bin\java.exe
    UserApp           :- TRUE
    Last HQC          :- 0.0.0-0
    Last HSHMEMB      :- 0.0.0-0
    Major Errorcode   :- xecF_E_UNEXPECTED_SYSTEM_RC
    Comment1          :- Access Violation at address
    000000000000001C when  reading
    
    The Windows Debugger (WinDbg) shows-
    
    BUCKET_ID:
    APPLICATION_FAULT_NULL_CLASS_PTR_READ_INVALID_POINTER_READ_mqe+6
    e0a9
    FAILURE_EXCEPTION_CODE:  c0000005
    FAILURE_IMAGE_NAME:  mqe.dll
    .
    .
    APPLICATION_FAULT_NULL_CLASS_PTR_READ_INVALID_POINTER_READ
    FAILURE_PROBLEM_CLASS:  APPLICATION_FAULT
    FAILURE_SYMBOL_NAME:  mqe.dll!Unknown
    FAILURE_PROBLEM_CLASS:  NULL_CLASS_PTR_READ
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users who have applications that repeatedly
    connect to and disconnect from queue managers, using the
    BINDINGs transport mode, on multiple threads in the same
    process.
    
    
    Platforms affected:
    Windows
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    There was a timing window whereby multi-threaded applications
    that created and closed connections repeatedly resulted in one
    thread deallocating a structure just prior to when another
    thread attempted to use it.  This would have occurred if the
    disconnecting thread was the last thread in the process to
    maintain an active connection and access the shared process
    memory before the newly connecting thread registered itself.
    This caused a memory access violation.
    
    If a core file can be obtained and the failing thread stack
    examined, then an access violation from the MQ function
    xtrEstablishTraceStatus would be a good indicator of this APAR.
    

Problem conclusion

  • Additional locking has been added to the IBM MQ product code
    where the failure was occurring to prevent accessing memory that
    has been deallocated.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.11
    v9.0 LTS   9.0.0.5
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT23684

  • Reported component name

    IBM MQ BASE MP

  • Reported component ID

    5724H7251

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-01-10

  • Closed date

    2018-05-25

  • Last modified date

    2018-05-25

  • 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

    IBM MQ BASE MP

  • Fixed component ID

    5724H7251

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.0.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
25 May 2018