IBM Support

IT35334: MQRC 2019 'MQRC_HOBJ_ERROR' when opening a queue using the MQ classes for Java

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 MQ classes for Java application issues the method call:
    
      com.ibm.mq.MQQueueManager.accessQueue(String queueName, int
    openOptions)
    
    and the following exception is thrown back to the application:
    
    
    A WebSphere MQ Error occured : Completion Code 2 Reason Code
    2019
    com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason
    '2019'.
    at com.ibm.mq.MQDestination.open(MQDestination.java:298)
    at com.ibm.mq.MQQueue.<init>(MQQueue.java:236)
    at
    com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:2740)
    at
    com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:2781)
    at MyApplication.run(MyApplication.java:119)
    
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2019;AMQ9530:
    Program could not inquire queue attributes. [1=2019,5=???]
    at
    com.ibm.mq.jmqi.internal.JmqiTools.getQueueManagerInfo(JmqiTools
    .java:786)
    at
    com.ibm.mq.jmqi.local.LocalHconn.getCmdLevel(LocalHconn.java:671
    )
    at com.ibm.mq.MQDestination.open(MQDestination.java:291)
    ... 4 more
    
    ... Caused by com.ibm.mq.jmqi.JmqiException:
    CC=2;RC=2019;AMQ9530: Program could not inquire queue
    attributes. [1=2019,5=???]
    at
    com.ibm.mq.jmqi.internal.JmqiTools.getQueueManagerInfo(JmqiTools
    .java:786)
    at
    com.ibm.mq.jmqi.local.LocalHconn.getCmdLevel(LocalHconn.java:671
    )
    at com.ibm.mq.MQDestination.open(MQDestination.java:291)
    at com.ibm.mq.MQQueue.<init>(MQQueue.java:236)
    at
    com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:2740)
    at
    com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:2781)
    at MyApplication.run(MyApplication.java:119)
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users of the MQ classes for Java, which is configured to connect
    to the queue manager in BINDINGS transport.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    When a MQ classes for Java application had connected to a queue
    manager using BINDINGS transport, and the application attempted
    to open a queue using either of the methods:
    
      com.ibm.mq.MQQueueManager.accessQueue(
        java.lang.String queueName,
        int openOptionsArg )
    
      com.ibm.mq.MQQueueManager.accessQueue(
        java.lang.String queueName,
        int openOptionsArg,
        java.lang.String queueManagerName,
        java.lang.String dynamicQueueName,
        java.lang.String alternateUserIdArg )
    
    then there was the possibility that the MQ classes for Java API
    would flow some incorrect data to the queue manager, which would
    result in the queue manager returned the reason code:
    
      MQRC 2019 'MQRC_HOBJ_ERROR'
    
    which would result in an exception being returned to the
    application, to indicate that the MQOPEN operation failed.
    
    
    The root cause of the underlying problem was an issue with
    object visibility across threads in the JVM.  On occasion, one
    thread would update an object, and the updated value would not
    be immediately seen by a different thread accessing the object
    afterwards.  In practice, the issue is rarely experienced.  The
    probability of encountering it is increased if the application
    is repeatedly opening queues on a busy system.
    

Problem conclusion

  • The MQ classes for Java has been updated to improve object
    synchronization across threads, to prevent the issue from
    occurring when opening a queue.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.17
    v9.1 LTS   9.1.0.15
    v9.2 LTS   9.2.0.10
    v9.3 LTS   9.3.0.5
    v9.x CD    9.3.2
    
    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

    IT35334

  • Reported component name

    IBM MQ BASE MP

  • Reported component ID

    5724H7271

  • Reported release

    910

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-12-22

  • Closed date

    2022-12-23

  • Last modified date

    2023-03-08

  • 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

    5724H7271

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"910","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
08 March 2023