IBM Support

PK54610: AFTER A MESSAGE IS BACKED-OUT TO AN MQ QUEUE FOR AN EXCEPTION AND TRANSACTION ROLL-BACK IN MDB, THE MESSAGE ISN'T RE-DELIVERED

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Sometime in MDB Processing, an exception can happen during the
    execution of the onMessage() method in the Servant region. This
    will cause a roll-back and will send the message back to Queue
    that the MDB was mapped to.
    .
    At this point, the message will be re-delivered to WebSphere and
    the Servant region with attempt to process it again. However,
    an intermittent problem can occur where this re-delivery does
    not occur.
    .
    During instances of this problem, MQ trace showed that after the
    message was sent back to the MQ Queue (mapped to the Listener
    Port), the Control region issued a Browse on the message, but
    the Servant region never issued a Get on the message to consume
    it.
    .
    Here is a Good and Bad case comparison of  this problem :
    
    ** Note that for this particular application, a second queue
    called "backout queue" is used to put messages that were
    delivered the second time. In general the application is free to
    process the re-delivered message however it wants to.
    .
    =Good case=
    1. Start MDB Listener port (mapped to an input queue)
    2. Listener in Control Region (CR) issues Browse
    3. Servant Region (SR) issues Get (receive)
    4. MDB's onMessage() is dispatched, during which an exception
    occurs,
    causing a RollBack condition.
    5. Message is backed out into input queue
    6. CR issues browse again
    7. SR issues get (receive)
    8. MDB's onMessage() method is dispatched again. Since
    JMSXDeliveryCount is 2, application issues Put (send) to a
    backout queue.
    .
    =Bad case=
    1. Start MDB Listener port (mapped to an input queue)
    2. Listener in CR issues Browse
    3. SR issues Get (receive)
    4. MDB's onMessage() is dispatched, during which an exception
    occurs,
    causing a RollBack condition.
    5. Message is backed out into input queue
    6. CR issues browse again
    7. But SR never issues Get (receive)       <==!
    8. message is stacked on the input queue   <==!
    .
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of WebSphere Application Server    *
    *                 V6.0.1 for z/OS who exploit the WebSphere    *
    *                 MQ Messaging Provider on z/OS.               *
    ****************************************************************
    * PROBLEM DESCRIPTION: When a message is attempted to be       *
    *                      redelivered it is ignored but the       *
    *                      WebSphere Application Server.           *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The message is incorrectly ignored as the WebSphere Application
    Server believes the message is a duplicate and not a redelivery.
    

Problem conclusion

  • This APAR fixes the problem and allows a redelivered message
    to be consumed.
    
    APAR PK54610 currently targeted for inclusion in Service
    Level (Fix Pack) 6.0.2.25 of WebSphere Application Server V6.0.1
    for z/OS.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK54610

  • Reported component name

    WEBSPHERE FOR Z

  • Reported component ID

    5655I3500

  • Reported release

    601

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2007-10-12

  • Closed date

    2007-11-02

  • Last modified date

    2008-02-02

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

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

    PK60372

Fix information

  • Fixed component name

    WEBSPHERE FOR Z

  • Fixed component ID

    5655I3500

Applicable component levels

  • R601 PSY UK32785

       UP08/01/23 P F801

  • R610 PSY

       UP

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":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS7K4U","label":"WebSphere Application Server for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0.1","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 December 2021