IBM Support

PH03170: MQ Z/OS: MQGET WITH MQGMO_WAIT, MQGMO_ALL_MSGS_AVAILABLE, AND MQMO_* MAY NOT BE POSTED FOR A QUEUE WITH INDXTYPE=GROUPID

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The reported symptom was that CICS transactions were in an
    MQSeries GETWAIT despite the expected message being on the
    queue and committed.  The problem is not unique to the CICS
    adapter, though.
    
    The task waited the entire WaitInterval time. A subsequent get
    received the message.
    
    A GTF trace of the putter and getter showed that another getter
    was being posted (modules CSQM1PGW and CSQM1P1W). That posted
    thread didn't actually get the message, so the message remained
    available for the CICS getter.
    
    The situation arises when using getters with
    MQGMO_ALL_MSGS_AVAILABLE on a queue indexed by groupid, and the
    getter specifies an additional match requirement (e.g.
    MQMO_MATCH_CORREL_ID). Where multiple getters are waiting on
    the queue, the arrival of a message will result in only one
    getter being posted. If the message completes a group, but does
    not fulfill the other match criteria for the woken getter, the
    message is left on the queue and none of the other getters is
    posted.
    
    This can mean that a getter which would have matched the
    message group will wait for the duration of its wait interval
    without detecting that a suitable message group is on the queue.
    
    
    Additional Symptom(s) Search Keyword(s):
    INDEX INDXTYPE GROUPID MQGMO_WAIT
    MQRC_NO_MSG_AVAILABLE  MQRC 2033
    

Local fix

  • None other than repeating the MQGET.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of IBM MQ for z/OS Version 9       *
    *                 Release 1 Modification 0                     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Waiting getters may not get posted for  *
    *                      message arrival when the queue is       *
    *                      indexed by GROUPID and the GET has a    *
    *                      selector or match option which is not   *
    *                      GROUPID.                                *
    ****************************************************************
    An MQGET for a complete group (MQGMO_ALL_MSGS_AVAILABLE) results
    in getters to evaluate multiple messages to ensure the criteria
    is met, for the GMO options, match options and selectors. When
    multiple waiting getters use this criteria, only the first
    waiting getter may be posted for messages delivered until it
    successfully gets messages. This results in some waiting getters
    not being notified of appropriate message arrival which would
    fulfil selector and match options.
    

Problem conclusion

  • Waiting getter post logic has been changed in this case to post
    all appropriate waiting getters if no more suitable getter is
    available, when a message arrives on a queue.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH03170

  • Reported component name

    IBM MQ Z/OS V9

  • Reported component ID

    5655MQ900

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-09-24

  • Closed date

    2018-12-14

  • Last modified date

    2019-02-02

  • APAR is sysrouted FROM one or more of the following:

    PI94780

  • APAR is sysrouted TO one or more of the following:

    UI60273

Modules/Macros

  • CSQM1PGW CSQMGSGW
    

Fix information

  • Fixed component name

    IBM MQ Z/OS V9

  • Fixed component ID

    5655MQ900

Applicable component levels

  • R100 PSY UI60273

       UP19/01/26 P F901

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

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

Document Information

Modified date:
02 February 2019