Coherence Client Threads Sleep While In drainOverflow (Doc ID 739404.1)

Last updated on NOVEMBER 03, 2016

Applies to:

Oracle Coherence - Version: 3.1.0 to 3.7.0 - Release: to AS10g
Information in this document applies to any platform.

Symptoms

In a Coherence application that uses MapListeners, a client thread may get "stuck" in a sleep() with a stacktrace like the following:

<Sep 23, 2008 11:39:48 AM EDT> <Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '32' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "607" seconds working on the request "Http Request: /action.do", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
    java.lang.Thread.sleep(Native Method)
    com.tangosol.coherence.component.util.Daemon.sleep(Daemon.CDB:9)
    com.tangosol.coherence.component.util.daemon.queueProcessor.Service$EventDispatcher.drainOverflow(Service.CDB:9)
    com.tangosol.coherence.component.util.daemon.queueProcessor.Service.post(Service.CDB:17)
    com.tangosol.coherence.component.util.daemon.queueProcessor.Service.send(Service.CDB:1)
    com.tangosol.coherence.component.util.daemon.queueProcessor.Service.poll(Service.CDB:12)
    com.tangosol.coherence.component.util.daemon.queueProcessor.Service.poll(Service.CDB:18)
    com.tangosol.coherence.component.util.daemon.queueProcessor.service.DistributedCache$BinaryMap.get(DistributedCache.CDB:27)
    com.tangosol.util.ConverterCollections$ConverterMap.get(ConverterCollections.java:1300)
    com.tangosol.coherence.component.util.daemon.queueProcessor.service.DistributedCache$ViewMap.get(DistributedCache.CDB:1)
    com.tangosol.coherence.component.util.SafeNamedCache.get(SafeNamedCache.CDB:1)
...

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms