IBM Support

IT27054: MQ client channel terminates writing FFDC with probe id CO386011when using TLS

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 TLS connection used by an MQ C application is abruptly
    terminated after a period of inactivity and an FFDC is generated
    containing the probe id CO386011.  This FFDC would contain the
    following details:
    
    ...
    | Probe Id          :- CO386011
    | Application Name  :- MQM
    | Component         :- cciReceiveOne
    | SCCS Info         :-
    /build/slot5/p900_SP/src/lib/client/amqccaxa.c,
    ...
    | Major Errorcode   :- rrcE_BAD_PARAMETER
    | Minor Errorcode   :- OK
    | Probe Type        :- INCORROUT
    | Probe Severity    :- 2
    | Probe Description :- AMQ6125E: An internal IBM MQ error has
    occurred.
    
    MQM Function Stack:
    ----------------------
    cciReceiveThread
    ccxReceiveThreadFn
    cciProcessOne
    cciReceiveOne
    xcsFFST
    
    
    The queue manager will log an AMQ9209E at the corresponding
    time, reporting the connection was closed unexpectedly.  For
    example:
    
    AMQ9209E: Connection to host '<application_hostname/IP_address>'
    for channel '<name_of_the_channel_used_by_application>' closed.
    

Local fix

  • Set the heartbeart interval (HBINT) value on the
    server-connection channel to zero to disable heartbeating.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects MQ C applications that create TLS connections
    to queue managers.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    A failure occurred in the MQ C client code's receive thread
    processing while attempting to receive data off a TCP/IP socket
    sent from the queue manager over multiplexed channels.  The MQ
    client incorrectly freed an internal "receive buffer" that
    should have been used to read data from the TCP/IP socket.  This
    buffer was freed instead of a "send buffer" that was just prior
    was used to send a heartbeat flow to the queue manager.  This
    was due to an incorrect length being recorded for the receive
    buffer which, in turn, caused the client code to determine that
    the heartbeat send buffer overlapped with the receive buffer and
    it was this buffer that could be freed.
    
    Because the receive buffer was freed, rather than the buffer
    that was used to send the heartbeat flow, the MQ client was
    unable to read further data from the TCP/IP socket.  An FFDC
    with probe id CO386011 was generated reporting that the receive
    buffer was unexpectedly null and the connection was terminated.
    

Problem conclusion

  • The MQ C client code has been updated to record the correct
    length for receive buffers used for TLS connection.  This will
    ensure the calculation performed when determining which buffers
    to free does not consider the heartbeat send buffer to be part
    of the receive buffer, causing the latter to be freed
    erroneously.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.0 LTS   9.0.0.6
    v9.1 CD    9.1.2
    v9.1 LTS   9.1.0.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

    IT27054

  • Reported component name

    IBM MQ BASE M/P

  • Reported component ID

    5724H7261

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-11-21

  • Closed date

    2019-01-11

  • Last modified date

    2019-01-11

  • 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 M/P

  • Fixed component ID

    5724H7261

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":"9.0","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
11 January 2019