Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] Endpoint making no progress

Hi all,

I'm using the Servlet 3.0 async support in Jetty 8, and I'm seeing some weird results with large responses. As long as the response is relatively small, there are no issues, but when it gets to around 2MB or so I start seeing messages that look like:

2013-06-19 21:14:29.672:INFO:oejs.AsyncHttpConnection:EndPoint making no progress: 100 SCEP@163f4e53{l(/10.0.10.243:50747)<->r(/10.0.10.2:8080),s=1,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=0w}-{AsyncHttpConnection@233ac2f3,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-14,l=0,c=-3},r=3} AsyncHttpConnection@233ac2f3,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-14,l=0,c=-3},r=3

Or even worse, some times I get a subsequent message that the connection has been closed because no progress was made. When the connection is closed, I can see via Wireshark that only part of the response was sent to the client.

I've tried several methods of sending the response including writing to the OutputStream with different buffer sizes and flushing more frequently, but neither of those seems to resolve the problem. I don't see the problem, however, if I access the URL from a browser on localhost, which leads me to believe it may have something to do with the speed of the connection. Strangely, while I was trying to verify that, I also found that it doesn't happen if I add a small delay (Thread.sleep(10)) after writing each chunk.

I'm pretty baffled by what's going on here. Can anyone shed any light on it?

Thanks,
Dave


Back to the top