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)

Reply via email to