IBM Support

IT22585: MQ_TERM_EXIT API exit function not being called on MQDISC when it is failing with rc 2009

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

  • An application using an API Exit invokes MQ_INIT_EXIT.
    
    Later the same application calls MQDISC on a valid HConn which
    fails with MQRC 2009 CONNECTION BROKEN.
    
    In this case MQ_TERM_EXIT is not being called.
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users of API exits which rely on the API exit termination entry
    point (MQ_TERM_EXIT) to be called.  An example of what the
    user's code might do in this routine is free memory it has
    allocated in an earlier routine (eg. MQ_INIT_EXIT).
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    The MQ code responsible for calling the MQ_TERM_EXIT function
    was omitting this call, in the case where the MQDISC call was
    failing.
    
    Omitting the call to MQ_TERM_EXIT would have been the right
    thing to do, if the HConn was continuing as a valid value,
    because the associated exit library could possibly have received
    further API exit calls.
    
    However it was the wrong thing in this case because the HConn
    was being disconnected and removed from use, and so would not be
    valid in future, and so would never have received further API
    exit calls.  It was therefore correct to call MQ_TERM_EXIT and
    unload the exit library.
    

Problem conclusion

  • The MQ code has been corrected so that, in cases where the HConn
    is being invalidated and removed from use, the MQ_TERM_EXIT
    entry point is called, and the exit library unloaded.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.9
    v9.0 CD    9.0.5
    v9.0 LTS   9.0.0.3
    
    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

    IT22585

  • 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

    2017-09-29

  • Closed date

    2018-01-05

  • Last modified date

    2018-01-05

  • 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

  • R800 PSY

       UP

[{"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":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
05 January 2018