[Resin-interest] Non-pro Question

2013-04-10 Thread Aaron Freeman
In resin-4.0.35 I am spinning on a typical BufferedInputStream read loop to
read from a multipart stream.  It works great, but for some reason a large
percent of the connections hang at some point on the blocked read call.   I
thought that the default SocketTimeout setting in Resin would cause that to
eventually throw an exception, but that does not appear to be happening.
Here is a partial thread dump of the blocked call:

at java.net.SocketInputStream.socketRead0 (SocketInputStream.java:-2)
 at java.net.SocketInputStream.read (SocketInputStream.java:150)
 at java.net.SocketInputStream.read (SocketInputStream.java:121)
 at sun.security.ssl.InputRecord.readFully (InputRecord.java:442)
 at sun.security.ssl.InputRecord.read (InputRecord.java:480)
 -- locked java.lang.Object@0x627eabb3
 at sun.security.ssl.SSLSocketImpl.readRecord (SSLSocketImpl.java:927)
 at sun.security.ssl.SSLSocketImpl.readDataRecord (SSLSocketImpl.java:884)
 at sun.security.ssl.AppInputStream.read (AppInputStream.java:102)
 at com.caucho.vfs.SocketStream.read (SocketStream.java:187)
 at com.caucho.vfs.ReadStream.read (ReadStream.java:472)
 at com.caucho.server.http.ContentLengthStream.read
(ContentLengthStream.java:79)



Any ideas why the socketRead0 just hangs and the SocketTimeout never fires?

Thanks,

Aaron


___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest


Re: [Resin-interest] Non-pro Question

2013-04-10 Thread Paul Cowan

On Apr 10, 2013, at 4:37 PM, Aaron Freeman aaron.free...@layerz.com wrote:

 In resin-4.0.35 I am spinning on a typical BufferedInputStream read loop to
 read from a multipart stream.  It works great, but for some reason a large
 percent of the connections hang at some point on the blocked read call.   I
 thought that the default SocketTimeout setting in Resin would cause that to
 eventually throw an exception, but that does not appear to be happening.
 Here is a partial thread dump of the blocked call:

Some of our internal stream wrappers swallow the exception, log it, and return 
-1.

You're saying it's just blocking, but as a first step I recommend you turn on 
FINER logging for com.caucho.vfs, and maybe com.caucho.server.http also.

Then check the logs for exceptions logged when you would expect the timeout.

Thanks,
Paul



 
 at java.net.SocketInputStream.socketRead0 (SocketInputStream.java:-2)
 at java.net.SocketInputStream.read (SocketInputStream.java:150)
 at java.net.SocketInputStream.read (SocketInputStream.java:121)
 at sun.security.ssl.InputRecord.readFully (InputRecord.java:442)
 at sun.security.ssl.InputRecord.read (InputRecord.java:480)
 -- locked java.lang.Object@0x627eabb3
 at sun.security.ssl.SSLSocketImpl.readRecord (SSLSocketImpl.java:927)
 at sun.security.ssl.SSLSocketImpl.readDataRecord (SSLSocketImpl.java:884)
 at sun.security.ssl.AppInputStream.read (AppInputStream.java:102)
 at com.caucho.vfs.SocketStream.read (SocketStream.java:187)
 at com.caucho.vfs.ReadStream.read (ReadStream.java:472)
 at com.caucho.server.http.ContentLengthStream.read
 (ContentLengthStream.java:79)
 
 
 
 Any ideas why the socketRead0 just hangs and the SocketTimeout never fires?
 
 Thanks,
 
 Aaron
 
 
 ___
 resin-interest mailing list
 resin-interest@caucho.com
 http://maillist.caucho.com/mailman/listinfo/resin-interest

===
Paul Cowan, Software Engineer
Caucho Technology
co...@caucho.com
http://blog.caucho.com
http://twitter.com/cauchoresin

___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest