IBM Support

PK96150: MESSAGE DELIVERY FOR JMS CONSUMERS USING READAHEAD STOPS INTERMITTENTLY.

Fixes are available

7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for IBM i
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Windows
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for AIX
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for HP-UX
7.0.0.9: Java SDK 1.6 SR7 Cumulative Fix for WebSphere Application Server
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Solaris
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Linux
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for IBM i
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Windows
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for HP-UX
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for AIX
7.0.0.11: Java SDK 1.6 SR7 Cumulative Fix for WebSphere Application Server
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Solaris
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Linux
6.1.0.29: Java SDK 1.5 SR11 Cumulative Fix for WebSphere Application Server
6.1.0.31: Java SDK 1.5 SR11 FP1 Cumulative Fix for WebSphere Application Server
6.1.0.33: Java SDK 1.5 SR12 FP1 Cumulative Fix for WebSphere
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for AIX
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for HP-UX
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for IBM i
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Linux
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Solaris
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Windows
7.0.0.13: Java SDK 1.6 SR8FP1 Cumulative Fix for WebSphere Application Server
6.1.0.35: Java SDK 1.5 SR12 FP2 Cumulative Fix for WebSphere
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for AIX
7.0.0.15: Java SDK 1.6 SR9 Cumulative Fix for WebSphere Application Server
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for HP-UX
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for IBM i
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Linux
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Solaris
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Windows
6.1.0.37: Java SDK 1.5 SR12 FP3 Cumulative Fix for WebSphere
7.0.0.17: WebSphere Application Server V7.0 Fix Pack 17
7.0.0.17: Java SDK 1.6 SR9 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.19: WebSphere Application Server V7.0 Fix Pack 19
7.0.0.21: WebSphere Application Server V7.0 Fix Pack 21
7.0.0.23: WebSphere Application Server V7.0 Fix Pack 23
7.0.0.25: WebSphere Application Server V7.0 Fix Pack 25
7.0.0.27: WebSphere Application Server V7.0 Fix Pack 27
7.0.0.29: WebSphere Application Server V7.0 Fix Pack 29
6.1.0.47: WebSphere Application Server V6.1 Fix Pack 47
7.0.0.31: WebSphere Application Server V7.0 Fix Pack 31
7.0.0.27: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.33: WebSphere Application Server V7.0 Fix Pack 33
7.0.0.35: WebSphere Application Server V7.0 Fix Pack 35
6.1.0.39: Java SDK 1.5 SR12 FP4 Cumulative Fix for WebSphere Application Server
6.1.0.41: Java SDK 1.5 SR12 FP5 Cumulative Fix for WebSphere Application Server
6.1.0.43: Java SDK 1.5 SR13 Cumulative Fix for WebSphere Application Server
6.1.0.45: Java SDK 1.5 SR14 Cumulative Fix for WebSphere Application Server
6.1.0.47: Java SDK 1.5 SR16 Cumulative Fix for WebSphere Application Server
7.0.0.19: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.21: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere
7.0.0.23: Java SDK 1.6 SR10 FP1 Cumulative Fix for WebSphere
7.0.0.25: Java SDK 1.6 SR11 Cumulative Fix for WebSphere Application Server
7.0.0.27: Java SDK 1.6 SR12 Cumulative Fix for WebSphere Application Server
7.0.0.29: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.45: Java SDK 1.6 SR16 FP60 Cumulative Fix for WebSphere Application Server
7.0.0.31: Java SDK 1.6 SR15 Cumulative Fix for WebSphere Application Server
7.0.0.35: Java SDK 1.6 SR16 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.37: Java SDK 1.6 SR16 FP3 Cumulative Fix for WebSphere Application Server
7.0.0.39: Java SDK 1.6 SR16 FP7 Cumulative Fix for WebSphere Application Server
7.0.0.41: Java SDK 1.6 SR16 FP20 Cumulative Fix for WebSphere Application Server
7.0.0.43: Java SDK 1.6 SR16 FP41 Cumulative Fix for WebSphere Application Server

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A Service Integration Bus (SIB) application with multiple JMS
    consumers using readahead using onMessage to receive messages
    experiences problems receiving messages.  Message delivery
    stops.  This happens intermittently throughout the day, first
    with one consumer and then it spreads to others.
    
    Thread dumps gathered from the JVM when these subscribers are
    stuck show many threads locked in the deliverMessages method:
    
    at
    com/ibm/ws/sib/comms/client/proxyqueue/impl/AsynchConsumerProxyQ
    ueueImpl.deliverMessages(AsynchConsumerProxyQueueImpl.java
    

Local fix

  • Restart client.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of the default messaging provider for *
    *                  IBM WebSphere Application Server            *
    *                  Version 6.1 and Version 7.0                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: Delays consuming messages in one        *
    *                      asynchronous consumer with              *
    *                      read-ahead enabled, might cause         *
    *                      delays delivering messages              *
    *                      to other consumers in the same JVM,     *
    *                      even when theasynchronous consumer      *
    *                      thread pool is sufficiently large       *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The issue described in this APAR affects JMS applications with
    multiple consumers running in a single client JVM consuming
    from destinations asynchronously (using a message listener)
    with read-ahead enabled.
    
    When one of these consumers is slow to process messages, other
    unrelated consumers might see delays before they are delivered
    JMS messages by the bus.
    
    The delays are seen even though the asynchronous consumer
    thread pool (described in APAR PK50005) has been configured to
    a size equal to the number of consumers in the JVM.
    
    A javacore shows a large number of threads within the
    asynchronous consumer thread pool blocked inside the service
    integration bus code, rather than calling the onMessage method
    of application code. The stack of these threads is as follows:
    com.ibm.ws.sib.comms.client.proxyqueue.impl.
        AsynchConsumerProxyQueueImpl.deliverMessages(
              AsynchConsumerProxyQueueImpl.java:730(Compiled Code))
    com.ibm.ws.sib.comms.client.proxyqueue.asynch.
        AsynchConsumerThreadPool$ScheduleQueue.run
                  AsynchConsumerThreadPool.java:197(Compiled Code))
    com.ibm.ws.util.ThreadPool$Worker.run(
                               ThreadPool.java:1473(Compiled Code))
    
    The problem is caused by an inefficiency in the algorithm that
    dispatches a new message arriving from the bus to a thread
    within the asynchronous consumer thread pool.
    This inefficiency causes messages for quick consumers to be
    randomly queued behind messages for slow consumers, even when
    there should be sufficient threads available.
    

Problem conclusion

  • The fix for this APAR updates the algorihm that dispatches
    messages to threads in the asynchronous consumer thread pool,
    preventing the delays in delivery of messages in cases where
    the size of the asynchronous consumer thread pool is sufficient.
    
    In addition to applying the fix for this APAR, the asynchronous
    consumer thread pool should be configured to contain a greater
    number of threads than the maximum number of consumers that
    might need to process messages concurrently. See APAR PK50005.
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 6.1.0.29 and 7.0.0.9.  Please refer to the Recommended
    Updates page for delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK96150

  • Reported component name

    PLAT MSG COM

  • Reported component ID

    620600101

  • Reported release

    200

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-09-14

  • Closed date

    2009-10-20

  • Last modified date

    2009-10-20

  • 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

    PLAT MSG COM

  • Fixed component ID

    620600101

Applicable component levels

  • R200 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.1","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 December 2021