abdera-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James M Snell <jasn...@gmail.com>
Subject Re: Anyone having problems with max connections when load testing?
Date Tue, 04 Dec 2007 16:36:27 GMT
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
>>>
>>>
>>>     
> 

Mime
View raw message