On Oct 20, 2006, at 6:16 PM, Garrett Rooney wrote:

There's a hang in the client tests that has yet to be tracked down.
See Stephen Duncan's post with the subject "Hanging Client Test" for
some details.

The client test is hanging because there are no more available connections in HttpClient's ThreadedConnectionManager connection pool. One of the request gets stuck waiting for the pool to hand it a connection, but the pool is exhausted because previous requests are hanging on to all available connections.

A classic starvation scenario :)

I "fixed" the test by adding a response.release() call after each request, but I'm not sure whether this is the correct thing to do or is it masking a deeper issue? IOW, who is responsible for releasing all resources allocated by a client method?

I'm attaching a patch with the fix (plus some logging statements I added to figure out where it was getting stuck).

        Ugo



--
Ugo Cei
Blog: http://agylen.com/
Open Source Zone: http://oszone.org/
Evil or Not?: http://evilornot.info/
Company: http://www.sourcesense.com/


Reply via email to