Issue:
In Fusion versions below 4.2.6, the proxy has had some issues where it will hang because it is trying to lease a new connection in the thread pool, but all the threads are taken. Incoming requests therefore hang.
If you do a thread dump you will get a whole bunch of threads that look like the following (look for leaseConnection):
"qtp1451043227-14" #14 prio=5 os_prio=0 tid=0x00007ff1886ba000 nid=0x303f waiting on condition [0x00007ff14e8c3000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000a182dd20> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at org.apache.http.pool.AbstractConnPool.getPoolEntryBlocking(AbstractConnPool.java:380)
at org.apache.http.pool.AbstractConnPool.access$200(AbstractConnPool.java:69)
at org.apache.http.pool.AbstractConnPool$2.get(AbstractConnPool.java:246)
- locked <0x000000009e470648> (a org.apache.http.pool.AbstractConnPool$2)
at org.apache.http.pool.AbstractConnPool$2.get(AbstractConnPool.java:193)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.leaseConnection(PoolingHttpClientConnectionManager.java:303)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager$1.get(PoolingHttpClientConnectionManager.java:279)
Environment:
Fusion 4.2.5 and below
Resolution:
We have a patch for 4.2.5, however, the best way to get around this is to upgrade to 4.2.6. In the meantime, if you are encountering the error and need to get live again, you should restart your proxy services
Comments
0 comments
Article is closed for comments.