IBM Support

PH18898: WEBSOCKET CONNECTIONS CLOSING RESULTS IN HUNG THREADS

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

  • Threads are being reported as hung in a callstack similar to
    the following:
    
    "WebContainer : 24"
    J9VMThread:0x0000000009917000, j9thread_t:0x00007F428C76C900,
    java/lang/Thread:0x00000006A9144098, state:CW, prio=5
    
    (java/lang/Thread getId:0x365, isDaemon:true)
     (native thread
    ID:0x698B, native priority:0x5, native policy:UNKNOWN,
    vmstate:CW, vm thread flags:0x00000101)
     (native stack address
    range from:0x00007F427E2B8000, to:0x00007F427E2F8000,
    size:0x40000)
     CPU usage total: 26.985705856 secs, current
    category="Application"
    Waiting on:
    com/ibm/ws/wsoc/WsocConnLink$1@0x00000006B4669E10 Owned by:
    <unowned>
     Heap bytes allocated since last GC cycle=0 (0x0)
    
    Java callstack:
     at java/lang/Object.wait(Native Method)
     at
    java/lang/Object.wait(Object.java:172(Compiled Code))
     at com/ib
    m/ws/wsoc/WsocConnLink.finishReadBeforeClose(WsocConnLink.java:8
    14)
     at
    com/ibm/ws/wsoc/SessionImpl.close(SessionImpl.java:394)
     at com/
    ibm/ws/wsoc/EndpointManager.httpSessionExpired(EndpointManager.j
    ava:166)
     at com/ibm/ws/wsoc/WsocHttpSessionListener.sessionDest
    royed(WsocHttpSessionListener.java:63)
     at com/ibm/ws/webcontain
    er/managedobject/ManagedObjectListenerWrapper.sessionDestroyed(M
    anagedObjectListenerWrapper.java:90)
     at com/ibm/ws/session/http
    /HttpSessionObserver.sessionDestroyed(HttpSessionObserver.java:2
    02)
     at com/ibm/ws/session/SessionEventDispatcher.sessionDestroy
    ed(SessionEventDispatcher.java:160)
     at com/ibm/ws/session/Store
    Callback.sessionInvalidated(StoreCallback.java:126(Compiled
    Code))
     at com/ibm/ws/session/store/memory/MemorySession.invalid
    ate(MemorySession.java:226(Compiled Code))
     at com/ibm/ws/sessio
    
    n/store/memory/MemorySession.invalidate(MemorySession.java:894)
    
    at com/ibm/ws/session/store/memory/MemoryStore.checkSessionStill
    Valid(MemoryStore.java:429(Compiled Code))
     at com/ibm/ws/sessio
    n/SessionManager.getSession(SessionManager.java:492(Compiled
    Code))
     at com/ibm/ws/session/SessionManager.getSession(SessionM
    anager.java:475(Compiled Code))
     at com/ibm/ws/session/SessionMa
    nager.getSession(SessionManager.java:706(Compiled Code))
     at com
    /ibm/ws/session/SessionContext.getIHttpSession(SessionContext.ja
    va:490(Compiled Code))
     at com/ibm/ws/session/SessionContext.ses
    sionPreInvoke(SessionContext.java:647(Compiled Code))
     at com/ib
    m/ws/webcontainer/srt/SRTRequestContext.sessionPreInvoke(SRTRequ
    estContext.java:69(Compiled Code))
    
    These threads may block
    other threads. Also, the threads may never come out of this
    state, eventually resulting in exhaustion of the thread pool.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of Websockets on IBM WebSphere    *
    *                  Application Servers                         *
    ****************************************************************
    * PROBLEM DESCRIPTION: Reading a Websocket message on a        *
    *                      connection while also closing the       *
    *                      same connection may hang a thread due   *
    *                      a race condition.                       *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Thread is hung in Websocket code.  Thread was reading data on
    a Websocket connection while another thread was closing the
    same connection.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PH18898

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-11-06

  • Closed date

    2019-11-25

  • Last modified date

    2019-11-25

  • 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



Document information

More support for: WebSphere Application Server
General

Software version: 900

Reference #: PH18898

Modified date: 25 November 2019