From: Jan B. (JIRA) <ji...@co...> - 2007-06-03 03:03:00
|
[ http://jira.codehaus.org/browse/JETTY-357?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_98133 ] Jan Bartel commented on JETTY-357: ---------------------------------- Hi Anders and Sandeep, Are you guys sure you're using svn head or 6.1.4rc0?? This output looks a lot like JETTY-289, which was fixed in April. I've modified the test you sent to work in my environment, and I can't get it to fail yet (I've tried 10 times in a row). I've also tried with jmeter and can't get that to barf either after many repetitions of 200 requests. But, I'll keep trying, if you can just double check for me that you're using svn head. cheers Jan > Funky exceptions that result in closing SSL connections. > -------------------------------------------------------- > > Key: JETTY-357 > URL: http://jira.codehaus.org/browse/JETTY-357 > Project: Jetty > Issue Type: Bug > Components: Security and SSL > Affects Versions: 6.1.0pre0 > Environment: jetty-6.1-SNAPSHOT > Reporter: Sandeep Tamhankar > Attachments: JettyTest.java > > > I have a scenario when I try to open about 200 SSL connections to jetty and make an https request on each of them simultaneously. Often (1-2 requests in 1 out of 5 test runs of the whole thing), Jetty ends up closing the connection without handling the request. I enabled debug logging and saw the following exceptions in the log: > 2007-05-30T20:50:33.529 | DEBUG | btpool0-29 | | log | EXCEPTION > javax.net.ssl.SSLException: Unsupported record version Unknown-44.54 > at com.sun.net.ssl.internal.ssl.EngineInputRecord.bytesInCompletePacket(EngineInputRecord.java:97) > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:752) > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:667) > at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:607) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:359) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:150) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:279) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:204) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:379) > at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:361) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > 2007-05-30T20:50:33.544 | DEBUG | btpool0-29 | | log | EOF > 2007-05-30T20:50:33.529 | DEBUG | btpool0-13 | | log | EXCEPTION > javax.net.ssl.SSLException: Unsupported record version Unknown-101.13 > at com.sun.net.ssl.internal.ssl.EngineInputRecord.bytesInCompletePacket(EngineInputRecord.java:97) > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:752) > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:667) > at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:607) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:359) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:139) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:279) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:204) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:379) > at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:361) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > 2007-05-30T20:50:33.529 | DEBUG | btpool0-4 | | log | EXCEPTION > javax.net.ssl.SSLProtocolException: Input SSL/TLS record too big: max = 33049 len = 48867 > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:757) > at com.sun.net.ssl.internal.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:667) > at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:607) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:359) > at org.mortbay.jetty.security.SslHttpChannelEndPoint.fill(SslHttpChannelEndPoint.java:150) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:279) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:204) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:379) > at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:361) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > 2007-05-30T20:50:33.607 | DEBUG | btpool0-13 | | log | EOF > 2007-05-30T20:50:33.622 | DEBUG | btpool0-4 | | log | EOF > I think I've occasionally seen the issue also occur on previously established connections on which a request had successfully run before. I think I've even seen this sort of exception before anyone actually connects to the SSL port -- it's almost like Jetty thinks an SSL connection exists and there's data on the connection when there really isn't. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |