You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "lqm (JIRA)" <ji...@apache.org> on 2014/12/07 16:36:13 UTC

[jira] [Created] (POOL-281) Dead Loop

lqm created POOL-281:
------------------------

             Summary: Dead Loop
                 Key: POOL-281
                 URL: https://issues.apache.org/jira/browse/POOL-281
             Project: Commons Pool
          Issue Type: Bug
    Affects Versions: 2.2
         Environment: Linux,JDK1.6.23,Tomcat6
            Reporter: lqm
             Fix For: 2.2


I use the pool2 as a tcp connection pool,when I start tomcat,one thread occur an infinite loop In the advance() method,but it sometimes happens, not always,the java statck information is as follows:

Thread 2194: (state = IN_JAVA)
 - org.apache.commons.pool2.impl.LinkedBlockingDeque$AbstractItr.advance() @bci=42, line=1163 (Compiled frame; information may be imprecise)
 - org.apache.commons.pool2.impl.LinkedBlockingDeque$AbstractItr.next() @bci=29, line=1184 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.clearOldest() @bci=85, line=741 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.create(java.lang.Object) @bci=56, line=991 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(java.lang.Object, long) @bci=59, line=356 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(java.lang.Object) @bci=6, line=277 (Interpreted frame)

Thread 2195: (state = BLOCKED)
 - sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame)
 - java.util.concurrent.locks.LockSupport.park(java.lang.Object) @bci=14, line=158 (Interpreted frame)
 - java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt() @bci=1, line=811 (Interpreted frame)
 - java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(java.util.concurrent.locks.AbstractQueuedSynchronizer$Node, int) @bci=48, line=842 (Interpreted frame)
 - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(long) @bci=112, line=2033 (Interpreted frame)
 - org.apache.commons.pool2.impl.LinkedBlockingDeque.pollFirst(long, java.util.concurrent.TimeUnit) @bci=50, line=569 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(java.lang.Object, long) @bci=105, line=363 (Interpreted frame)
 - org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(java.lang.Object) @bci=6, line=277 (Interpreted frame)
 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)