It's possible that we could do this for debugging purposes. - James
Neale wrote: > Spot on.. thanks. Horrid thing to have to do... > > any chance of putting a " you forgot to release()" message in the > finalizer (or is that a bit too hacky :) > > > > James M Snell wrote: >> Are you releasing your response objects when you're done with them? e.g. >> >> ClientResponse resp = client.get(...); >> // do stuff with resp >> resp.release(); >> >> This is an unfortunate requirement of the >> multithreadedhttpconnectionmanager. >> >> - James >> >> Neale Upstone wrote: >> >>> Hi, >>> >>> I'm using Abdera (4.0, recent snapshot) as part of my testing, and I'm >>> getting a lock up when load testing the creation of an atom entry. >>> >>> If I pause the VM and investigate, I find that >>> MultiThreadedHttpConnectionManager has run out of connections for the >>> host. It exhibits some strange behaviour, where it used to work, when I >>> had some other, disk read I/O going on between the writes, but moved >>> that to a singleton initialisation (reading a database of random >>> postcodes if you must know ;) >>> >>> Is anyone else using AbderaClient (i.e. re-using the same instance) for >>> multiple repeated posts? >>> >>> If I add client.setMaxConnectionsPerHost(20); , for a test of 20 >>> creates, it works. Otherwise it stops after the first two. >>> >>> What's weird, and concerning is that it works when other I/O is going >>> on. Certainly worth people being aware of. >>> >>> Cheers, >>> >>> Neale >>> >>> >>> >>> >>> >>> Thread [main] (Suspended) >>> Object.wait(long) line: not available [native method] >>> MultiThreadedHttpConnectionManager.doGetConnection(HostConfiguration, >>> long) line: 518 >>> >>> MultiThreadedHttpConnectionManager.getConnectionWithTimeout(HostConfiguration, >>> >>> long) line: 416 >>> HttpMethodDirector.executeMethod(HttpMethod) line: 153 >>> HttpClient.executeMethod(HostConfiguration, HttpMethod, HttpState) >>> line: 397 >>> HttpClient.executeMethod(HttpMethod) line: 323 >>> AbderaClient.execute(String, String, RequestEntity, RequestOptions) >>> line: 435 >>> AbderaClient.post(String, RequestEntity, RequestOptions) line: 156 >>> TestCreate.create(Entry) line: 162 >>> TestCreate.testCreateMany() line: 108 >>> >>> >>> >
