IBM Support

PK68411: WorkLoad Management Stack Overflow in HTTPSession Scenario

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The SystemOut.logs show a number of error messages; more
    signficantly, the servers in the core group become
    non-responsive.  This is due to an infinite loop that occurs.
    This loop eventually causes a java.lang.StackOverflowError to
    occur.
       This is the error message that is logged with the exception.
       These show a number of java.lang.StackOverflowErrors.
    [6/27/08 0:50:20:401 EDT] 00000024 UserCallbacks E   HMGR0142E:
    An error
    occurred in a component called back by the High Availability
    Manager.
    The exception is java.lang.StackOverflowError
     at java.util.HashMap.putAllForCreate(HashMap.java:647)
     at java.util.HashMap.<init>(HashMap.java:303)
     at com.ibm.ws.cluster.topography.KeyRepositoryImpl.
    getDescriptionKey(KeyRepositoryImpl.java:96)
     at com.ibm.ws.cluster.service.ClusterManagementImpl.
    defineAttribute(ClusterManagementImpl.java:603)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    buildPartitionTable(HttpSessClusterObserver.java:350)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    notify(HttpSessClusterObserver.java:212)
     at com.ibm.ws.cluster.service.ClusterServiceImpl.
    handleNotification(ClusterServiceImpl.java:467)
     at com.ibm.websphere.cluster.topography.DescriptionA.
    notifyListeners(DescriptionA.java:244)
     at com.ibm.ws.cluster.topography.IntrinsicDescriptionA.
    setExtrinsicData(IntrinsicDescriptionA.java:238)
     at com.ibm.ws.cluster.service.ClusterManagementImpl.
    defineAttribute(ClusterManagementImpl.java:611)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    buildPartitionTable(HttpSessClusterObserver.java:350)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    notify(HttpSessClusterObserver.java:212)
     at com.ibm.ws.cluster.service.ClusterServiceImpl.
    handleNotification(ClusterServiceImpl.java:467)
     at com.ibm.websphere.cluster.topography.DescriptionA.
    notifyListeners(DescriptionA.java:244)
     at com.ibm.ws.cluster.topography.IntrinsicDescriptionA.
    setExtrinsicData(IntrinsicDescriptionA.java:238)
     at com.ibm.ws.cluster.service.ClusterManagementImpl.
    defineAttribute(ClusterManagementImpl.java:611)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    buildPartitionTable(HttpSessClusterObserver.java:350)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    notify(HttpSessClusterObserver.java:212)
     at com.ibm.ws.cluster.service.ClusterServiceImpl.
    handleNotification(ClusterServiceImpl.java:467)
     at com.ibm.websphere.cluster.topography.DescriptionA.
    notifyListeners(DescriptionA.java:244)
    ...
    at com.ibm.ws.cluster.topography.IntrinsicDescriptionA.
    setExtrinsicData(IntrinsicDescriptionA.java:238)
     at com.ibm.ws.cluster.service.ClusterManagementImpl.
    defineAttribute(ClusterManagementImpl.java:611)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    buildPartitionTable(HttpSessClusterObserver.java:350)
     at com.ibm.ws.webcontainer.httpsession.httprouting.
    HttpSessClusterObserver.
    notify(HttpSessClusterObserver.java:212)
     at com.ibm.ws.cluster.service.ClusterServiceImpl.
    handleNotification(ClusterServiceImpl.java:467)
     at com.ibm.websphere.cluster.topography.DescriptionA.
    notifyListeners(DescriptionA.java:244)
     at com.ibm.ws.cluster.topography.ClusterDescriptionImpl.
    setMemento(ClusterDescriptionImpl.java:939)
     at com.ibm.ws.cluster.topography.DescriptionManagerA.update
    (DescriptionManagerA.java:428)
     at com.ibm.ws.cluster.propagation.bulletinboard.
    BBDescriptionManager.updated(BBDescriptionManager.java:312)
     at com.ibm.ws.hamanager.bboard.LocalBulletinBoardStateManager
    $BBoardUserCallback.doCallback
    (LocalBulletinBoardStateManager.java:1441)
     at com.ibm.ws.hamanager.impl.Worker.run(UserCallbacks.java:260)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
    .
    KEYWORDS: performance degradation high CPU 100% slowdown looping
    StackOverflowError
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  WebSphere Application Server V6.1 users     *
    *                  with HTTPSession replication enabled        *
    ****************************************************************
    * PROBLEM DESCRIPTION: StackOverflow thrown from HAManager     *
    *                      thread as a result of a WorkLoad        *
    *                      Management (WLM) code loop              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    There is a path in the WLM code in the HTTPSession scenario in
    which the defining of an attribute can cause a notification to
    be sent that in turn will cause an attribute to be defined.
    This infinite loop will lead to a stack overflow.
    
    The Stack overflow is thrown from the HAManager code, but is
    the result of the problem in the WLM code running on their
    threads.
    

Problem conclusion

  • The WLM code was rewritten to remove the potential for the
    infinite loop in the HTTPSession scenario, and thus avoid the
    StackOverflow error.
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 6.1.0.21.  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

    PK68411

  • Reported component name

    IBM HTTP SERVER

  • Reported component ID

    5724J0801

  • Reported release

    61A

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2008-07-01

  • Closed date

    2008-07-31

  • Last modified date

    2008-07-31

  • 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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R61A PSY

       UP

  • R61H PSY

       UP

  • R61I PSY

       UP

  • R61P PSY

       UP

  • R61S PSY

       UP

  • R61W PSY

       UP

  • R61Z 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