A customer of ours sees Jetty going unresponsive when they enable 
HTTPS-based connections, on Linux.  The jetty version is 8.1.3.v20120416. 
This problem isn't seen with HTTP. 

We took thread dumps during this period and found that there are 271 
QueuedThreadPool threads. Out of those, around 230 are stuck running this 
call stack:

java/nio/channels/spi/AbstractInterruptibleChannel.close(AbstractInterruptibleChannel.java:104(Compiled
 
Code))
org/eclipse/jetty/io/nio/ChannelEndPoint.close(ChannelEndPoint.java:205(Compiled
 
Code))
org/eclipse/jetty/io/nio/SelectChannelEndPoint.close(SelectChannelEndPoint.java:706(Compiled
 
Code))
org/eclipse/jetty/io/nio/SslConnection$SslEndPoint.close(SslConnection.java:655(Compiled
 
Code))
org/eclipse/jetty/io/nio/SslConnection.onIdleExpired(SslConnection.java:253(Compiled
 
Code))
org/eclipse/jetty/io/nio/SelectChannelEndPoint.onIdleExpired(SelectChannelEndPoint.java:299(Compiled
 
Code))
org/eclipse/jetty/io/nio/SelectChannelEndPoint.checkIdleTimestamp(SelectChannelEndPoint.java:290(Compiled
 
Code))
org/eclipse/jetty/io/nio/SelectorManager$SelectSet$1.run(SelectorManager.java:709(Compiled
 
Code))
org/eclipse/jetty/util/thread/QueuedThreadPool.runJob(QueuedThreadPool.java:603(Compiled
 
Code))
org/eclipse/jetty/util/thread/QueuedThreadPool$3.run(QueuedThreadPool.java:538(Compiled
 
Code))
java/lang/Thread.run(Thread.java:738(Compiled Code))

System dump analysis reveals that these ~230 threads are divided into 
groups 8-10 groups - each group is trying to close the same 
ChannelEndPoint and hence the same Java NIO channel. I am aware that 
AbstractInterruptibleChannel.close() is synchronized and that may or may 
not cause this freeze. I am trying to comprehend what is going on with 
Jetty with so many closes happening at the same time. 

Could you please help me understand this situation ? Would it be possible 
to fabricate a local recreate for this problem.

I'd be glad to provide any other information.

Pushkar N Kulkarni,
Service for IBM Java Class Libraries,
IBM India Software Lab
IBM Java on Youtube |  IBM Java on Twitter 

"Software is to hardware what the spirit is to the body" – Grady Booch 
_______________________________________________
jetty-users mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to