IBM Support

IV30481: WMQ JMS - MSGTOKEN TO GET THE MESSAGE AFTER AN INCREASE IN THE BUFFER SIZE.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When using the WebSphere MQ classes for JMS/Java  client to get
    a message, and that message is over 4096 bytes then a
    TRUNCATED_MSG_FAILED return code is returned by the queue
    manager. In this situation the client will automatically resize
    the buffer used to get the message and issue another MQGET using
    the message id and correlation id obtained in the first MQGET.
    *
    Additional Keywords:
    MsgId CorrelId MQMO_MATCH_MSG_ID MQMO_MATCH_CORREL_ID
    z/OS performance cpu slow curdepth
    CSQI004I CSQP020I
    .
    There have been some follow-on APARs to adjust how this logic
    works with specific get options (IV49971, IC97121 and IT00404).
    To ensure that the full implementation is picked up, the
    7.0.1.13 fixpack level should be used.
    

Local fix

  • For queues on z/OS, overhead can be somewhat reduced by
    setting INDXTYPE for the queue as advised by the CSQI004I
    message for the queue in the MSTR joblog.
    .
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users of the WebSphere MQ classes for JMS and
    WebSphere MQ classes for Java, including:
    
    - The WebSphere MQ V7 classes for JMS.
    - The WebSphere MQ V7 classes for Java.
    - The WebSphere MQ V7 Resource Adapter.
    - The WebSphere Application Server V7 WebSphere MQ messaging
    provider.
    - The WebSphere Application Server V8 WebSphere MQ messaging
    provider.
    - The WebSphere Application Server V8.5 WebSphere MQ messaging
    provider.
    - The WebSphere Application Server V6.1 WebSphere MQ messaging
    provider who have configured the WebSphere variable
    MQ_INSTALL_ROOT to point to a WebSphere MQ V7 installation.
    
    who are getting messages that are larger than 4096 bytes.
    
    Platforms affected:
    All Distributed (iSeries, all Unix and Windows) +Java +Java zOS
    ****************************************************************
    PROBLEM SUMMARY:
    The WebSphere classes for JMS/Java will execute 2 MQGET calls if
    the message to retrieve is over 4096 bytes. The first call to
    MQGET will return MQRC_TRUNCATED_MSG_FAILED indicating that the
    message buffer supplied (4096) is too small. The second MQGET
    alters the message buffer to be large enough for the message but
    uses the message ID and correlation ID to obtain the same
    message.
    
    As message ID and correlation ID might not be unique then it is
    possible that a different message is returned. This could then
    cause another MQRC_TRUNCATED_MSG_FAILED as the buffer size is
    now incorrect for this new message.
    

Problem conclusion

  • This APAR solves the problem by making sure that the second
    MQGET is issued with the MQMO_MATCH_MSG_TOKEN option. The
    MessageToken uniquely identifies the message within the WMQ
    Queue Manager, this will ensure that the same message is
    retrieved on the second MQGET.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
                       v7.0
    Platform           Fix Pack 7.0.1.10
    --------           --------------------
    Windows            U200352
    AIX                U853055
    HP-UX (PA-RISC)    U853082
    HP-UX (Itanium)    U853087
    Solaris (SPARC)    U853083
    Solaris (x86-64)   U853089
    iSeries            7.0.1.10
    Linux (x86)        U853084
    Linux (x86-64)     U853088
    Linux (zSeries)    U853085
    Linux (Power)      U853086
    zOS                7.0.1.10
    
                       v7.1
    Platform           Fix Pack 7.1.0.3
    --------           --------------------
    Windows            7.1.0.3
    AIX                7.1.0.3
    HP-UX (Itanium)    7.1.0.3
    Solaris (SPARC)    7.1.0.3
    Solaris (x86-64)   7.1.0.3
    iSeries            7.1.0.3
    Linux (x86)        7.1.0.3
    Linux (x86-64)     7.1.0.3
    Linux (zSeries)    7.1.0.3
    Linux (Power)      7.1.0.3
    zOS                7.1.0.3
    
    Platform           v7.5
    --------           --------------------
    Multiplatforms     7.5.0.1
    
    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

    IV30481

  • Reported component name

    WMQ AIX V7

  • Reported component ID

    5724H7221

  • Reported release

    701

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2012-10-19

  • Closed date

    2012-11-29

  • Last modified date

    2016-03-16

  • 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

    WMQ AIX V7

  • Fixed component ID

    5724H7221

Applicable component levels

  • R701 PSY

       UP

[{"Line of Business":{"code":"LOB36","label":"IBM Automation"},"Business Unit":{"code":"BU053","label":"Cloud \u0026 Data Platform"},"Product":{"code":"SSFKSJ","label":"WebSphere MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1"}]

Document Information

Modified date:
01 October 2021