Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] Jetty unresponsive when HTTPS enabled


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

Back to the top