[ 
https://issues.apache.org/jira/browse/HTTPASYNC-69?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yoram Dayagi updated HTTPASYNC-69:
----------------------------------

    Priority: Critical  (was: Major)

I raised the priority, because, if this is the only way to cancel a running 
request from another thread, then we are unable to use the client for our 
scenario.

> calling IOControl.shutdown() doesn't release the underlying connection
> ----------------------------------------------------------------------
>
>                 Key: HTTPASYNC-69
>                 URL: https://issues.apache.org/jira/browse/HTTPASYNC-69
>             Project: HttpComponents HttpAsyncClient
>          Issue Type: Bug
>    Affects Versions: 4.0 Final
>         Environment: MacBook Pro, OSX
>            Reporter: Yoram Dayagi
>            Priority: Critical
>
> Below is the log of the following scenario:
> 1. Create an async client with MaxConnPerRoute=1
> 2. Start a request 
> 3. Wait for 100ms and shutdown the channel (using ioctrl.shutdown)
> 4. Wait for 2000ms and start another request for same url
> 2014/02/17 12:34:15:587 IST [DEBUG] PoolingNHttpClientConnectionManager - 
> Connection request: [route: 
> {}->http://966b.http.dal05.cdn.softlayer.net:80][total kept alive: 0; route 
> allocated: 0 of 1; total allocated: 0 of 10]
> 2014/02/17 12:34:15:681 IST [DEBUG] PoolingNHttpClientConnectionManager - 
> Connection leased: [id: http-outgoing-0][route: 
> {}->http://966b.http.dal05.cdn.softlayer.net:80][total kept alive: 0; route 
> allocated: 1 of 1; total allocated: 1 of 10]
> 2014/02/17 12:34:15:689 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][r:]: Set attribute 
> http.nio.exchange-handler
> 2014/02/17 12:34:15:690 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][rw:]: Event set [w]
> 2014/02/17 12:34:15:691 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][rw:]: Set 
> attribute http.nio.http-exchange-state
> 2014/02/17 12:34:15:692 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][rw:]: Event set [w]
> 2014/02/17 12:34:15:694 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][rw:w]: 246 bytes 
> written
> 2014/02/17 12:34:15:694 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][r:w]: Event 
> cleared [w]
> 2014/02/17 12:34:15:770 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][r:r]: 1360 bytes 
> read
> 2014/02/17 12:34:15:775 IST [DEBUG] ManagedNHttpClientConnectionImpl - 
> http-outgoing-0 10.0.0.2:58623<->93.184.221.133:80[ACTIVE][r:r]: Shutdown
> 2014/02/17 12:34:17:695 IST [DEBUG] PoolingNHttpClientConnectionManager - 
> Connection request: [route: 
> {}->http://966b.http.dal05.cdn.softlayer.net:80][total kept alive: 0; route 
> allocated: 1 of 1; total allocated: 1 of 10]
>  
> Note that the last log of “Connection request” reports that “route allocated: 
> 1 of 1”. 
> It probably means that the connection was not released when the channel was 
> shut down.
> From the client perspective, the consumer’s onByteReceived is never called 
> after this point.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

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

Reply via email to