[ https://issues.apache.org/jira/browse/POOL-281?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mark Thomas updated POOL-281: ----------------------------- Fix Version/s: (was: 2.2) Labels: (was: patch) Summary: Infinite loop (was: Dead Loop) Clean up report attributes. > Infinite 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 > > 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)