Darrel Schneider created GEODE-8493:
---------------------------------------
Summary: idle clients can cause server stuck thread warnings
Key: GEODE-8493
URL: https://issues.apache.org/jira/browse/GEODE-8493
Project: Geode
Issue Type: Bug
Components: redis
Reporter: Darrel Schneider
Idle connection threads may produce warning messages like:
{{[vm1] [warn 2020/09/02 14:31:36.580 PDT <ThreadsMonitor> tid=0x1c] Thread
<87> (0x57) that was executed at <02 Sep 2020 14:29:12 PDT> has been stuck for
<144.113 seconds> and number of thread monitor iteration <2>
[vm1] Thread Name <Pooled Waiting Message Processor 2> state <WAITING>
[vm1] Waiting on
<java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@25b1a95e>
[vm1] Executor Group <PooledExecutorWithDMStats>
[vm1] Monitored metric <ResourceManagerStats.numThreadsStuck>
[vm1] Thread stack:
[vm1] sun.misc.Unsafe.park(Native Method)
[vm1] java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
[vm1]
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
[vm1]
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
[vm1]
org.apache.geode.redis.internal.netty.ExecutionHandlerContext.takeCommandFromQueue(ExecutionHandlerContext.java:139)
[vm1]
org.apache.geode.redis.internal.netty.ExecutionHandlerContext.processCommandQueue(ExecutionHandlerContext.java:125)
[vm1]
org.apache.geode.redis.internal.netty.ExecutionHandlerContext$$Lambda$320/28815321.run(Unknown
Source)
[vm1] java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)}}
if the thread (client) becomes idle for some time. These messages will probably
worry users. We should be able to safely switch to a having the
{{ExecutionHandlerContext}} simply run its own thread to process the command Q.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)