Hi,

> Now the current issue. Something similar is happening. After several 
> days of execution, requests start to throw an exception because the 
> container asynchronous timeout is reached. Tracing http, we saw the 
> pool exhausted ... so it's a behavior similar to issue nr. 1.
> 08:14:03.054    Connection request: [route: {}->
> http://10.15.15.53:8083][total kept alive: 0; route allocated: 107 of 
> 1500; total allocated: 1500 of 1500]
> 

I could not find it anywhere in the logs that you have provided. 
--> It's here, https://github.com/joanbalaguero/HttpClient , in the http.log I 
uploaded.

> That's why I asked you if it's possible the 'updateCapacity' method to 
> be called but without previously calling the 'consumeResponse'
> method with a non-null entity.

No, I do not think it is possible.
--> Ok.

>  In this case the variable 'this.capacityToPerform' we use to extend 
> the buffer will be 0 and we will be again in the first issue.
> 
> So I think the pool exhausted is a consequence the thread that is 
> managing the 'AsyncResponseConsumer' is not ending for some reason 
> (like in the first issue).
> 

Again, I need to see a _complete_ wire / context log of such message exchange.

Is there something else (like updating the capacity) I have to take
> into account in the ' AsyncResponseConsumer ' to avoid hanging the 
> execution?
> 

I need to see a log of such 'hanging' message exchnage.
--> Ok, to do this I need to enable the http traces for days waiting the "hang" 
to happen. But with the log I have enabled now there is a significant increase 
in cpu and io (because the responses are usually quite big). Is there any way 
to enable a kind of logging useful for you but avoiding trace the request and 
response messages?

Joan.


> Thanks,
> 
> Joan.
> 
> -----Original Message-----
> From: Oleg Kalnichevski <[email protected]>
> Sent: Friday, June 7, 2019 4:00 PM
> To: HttpClient User Discussion <[email protected]>
> Subject: Re: Response timeout issue
> 
> On Thu, 2019-06-06 at 18:56 +0200, Joan grupoventus wrote:
> > Hi again,
> > 
> > Not sure if we have seen something strange in the current test with 
> > the keep alive connections. It's just a GET method to get a gif 
> > (this pool has no keep-alive, that means a 100ms keep-alive). Here 
> > the complete http log: 
> > https://github.com/joanbalaguero/HttpClient.git
> > (it's the "http_get.log")
> 
> Joan
> 
> I am confused. I looked at http_get.log and I can see the exact same 
> number of connection lease requests and that of released connections.
> There are two 253 message exchanges and the same number of connection 
> lease / release operations.
> 
> I am not seeing any evidence of connections being leaked. I am lost 
> now. What is exactly the issue you are having?
> 
> Oleg
> 
> 
> > Previously to this test, this pool received 4 requests today
> > 06/06/2019 around 11:15:00 (so 6 hours before the test), these 4 
> > requests ended up with a 4xx status code.
> > 
> > This is the first request we sent to this pool using this route.
> > Should not keep-alive be 0 and total allocated 1 of 1000?
> > -------------------------------------------------------------------
> > ------------
> > 17:23:02.692    ex-0105B9B8: preparing request execution
> > 17:23:02.692    Target auth state: UNCHALLENGED
> > 17:23:02.692    Proxy auth state: UNCHALLENGED
> > 17:23:02.692    ex-0105B9B8: acquiring connection with route {}->
> > http://andalucia.viajesolympia.com:80
> > 17:23:02.692    Connection request: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 1; route
> > allocated: 0 of 1000; total allocated: 1 of 1000]
> > 17:23:02.692    Connection leased: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 1; route
> > allocated: 1 of 1000; total allocated: 2 of 1000]
> > 17:23:02.692    ep-010526BF: acquired null
> > 17:23:02.692    ex-0105B9B8: connection acquired
> > 
> > This is the second:
> > ------------------------
> > 17:23:02.954    ex-0105B9B9: preparing request execution
> > 17:23:02.955    Target auth state: UNCHALLENGED
> > 17:23:02.955    Proxy auth state: UNCHALLENGED
> > 17:23:02.955    ex-0105B9B9: acquiring connection with route {}->
> > http://andalucia.viajesolympia.com:80
> > 17:23:02.955    Connection request: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 2; route
> > allocated: 1 of 1000; total allocated: 2 of 1000] 
> > 17:23:02.955    Connection leased: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 1; route
> > allocated: 1 of 1000; total allocated: 2 of 1000]
> > 17:23:02.955    ep-010526C0: acquired null
> > 17:23:02.955    ex-0105B9B9: connection acquired
> > 17:23:02.976    ep-010526C0: connected i/o-0000434A
> > 17:23:02.976    Connected to target
> > 17:23:02.976    Route fully established
> > 
> > ( . . . )
> > 
> > Now a pool reboot
> > -------------------------
> > 17:27:29.996    Shutdown connection pool GRACEFUL
> > 17:27:29.996    i/o-000043AF: Shutdown connection GRACEFUL
> > 17:27:29.996    i/o-00002D9A: Shutdown connection GRACEFUL
> > 17:27:29.996    Connection pool shut down
> > 17:27:29.997    Shutdown GRACEFUL
> > 
> > 1st. request after rebooting. Here keep-alive = 0 and 
> > total_allocated = 1
> > -------------------------------------
> > 17:27:53.585    ex-0105BA49: preparing request execution
> > 17:27:53.585    Target auth state: UNCHALLENGED
> > 17:27:53.585    Proxy auth state: UNCHALLENGED
> > 17:27:53.585    ex-0105BA49: acquiring connection with route {}->
> > http://andalucia.viajesolympia.com:80
> > 17:27:53.585    Connection request: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 0; route
> > allocated: 0 of 1000; total allocated: 0 of 1000]
> > 17:27:53.585    Connection leased: [route: {}->
> > http://andalucia.viajesolympia.com:80][total kept alive: 0; route
> > allocated: 1 of 1000; total allocated: 1 of 1000]
> > 17:27:53.585    ep-01052750: acquired null
> > 17:27:53.585    ex-0105BA49: connection acquired
> > 17:27:53.609    ep-01052750: connected i/o-000043B0
> > 17:27:53.609    Connected to target
> > 17:27:53.609    Route fully established
> > 
> > 
> > Thanks,
> > Joan.
> > 
> > 
> > 
> > -----------------------------------------------------------------
> > ----
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: 
> > [email protected]
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to