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/