On Mon, 2016-10-10 at 19:16 +0200, Claudio Degioanni wrote: > Hi All, > > I'm using the library Axis 2 version 1.7.3 with HttpClient 4.4.1, and > after 200 request the library throw a TimeoutException from connection pool. > > From stacktrace I found the exeption is throw by the class > PoolingClientConnectionManager, > as reported below > > Caused by: org.apache.axis2.AxisFault: Timeout waiting for connection from > pool > at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430) > ~[axis2-kernel-1.7.3.jar:1.7.3] > at org.apache.axis2.transport.http.impl.httpclient4. > HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:242) > ~[axis2-transport-http-1.7.3.jar:1.7.3] > at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:121) > ~[axis2-transport-http-1.7.3.jar:1.7.3] > at org.apache.axis2.transport.http.CommonsHTTPTransportSender. > writeMessageWithCommons(CommonsHTTPTransportSender.java:403) > ~[axis2-transport-http-1.7.3.jar:1.7.3] > at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke( > CommonsHTTPTransportSender.java:234) ~[axis2-transport-http-1.7.3.jar:1.7.3] > at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:431) > ~[axis2-kernel-1.7.3.jar:1.7.3] > at > org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:399) > ~[axis2-kernel-1.7.3.jar:1.7.3] > at > org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225) > ~[axis2-kernel-1.7.3.jar:1.7.3] > at org.apache.axis2.client.OperationClient.execute(OperationClient.java:150) > ~[axis2-kernel-1.7.3.jar:1.7.3] > .... > Caused by: org.apache.http.conn.ConnectionPoolTimeoutException: Timeout > waiting for connection from pool > at org.apache.http.impl.conn.PoolingClientConnectionManager.leaseConnection( > PoolingClientConnectionManager.java:226) ~[httpclient-4.4.1.jar:4.4.1] > at org.apache.http.impl.conn.PoolingClientConnectionManager$1.getConnection( > PoolingClientConnectionManager.java:195) ~[httpclient-4.4.1.jar:4.4.1] > at org.apache.http.impl.client.DefaultRequestDirector.execute( > DefaultRequestDirector.java:423) ~[httpclient-4.4.1.jar:4.4.1] > at > org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882) > ~[httpclient-4.4.1.jar:4.4.1] > at > org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) > ~[httpclient-4.4.1.jar:4.4.1] > at > org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) > ~[httpclient-4.4.1.jar:4.4.1] > at org.apache.axis2.transport.http.impl.httpclient4. > HTTPSenderImpl.executeMethod(HTTPSenderImpl.java:873) > ~[axis2-transport-http-1.7.3.jar:1.7.3] > at org.apache.axis2.transport.http.impl.httpclient4. > HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:238) > ~[axis2-transport-http-1.7.3.jar:1.7.3] > ... 15 common frames omitted > > > Search into code of library i found the configuration of connection pool: > > connManager = new PoolingClientConnectionManager(schemeRegistry); > ((PoolingClientConnectionManager)connManager).setMaxTotal(200); > ((PoolingClientConnectionManager)connManager).setDefaultMaxPerRoute(200); > configContext.setProperty(HTTPConstants.MULTITHREAD_HTTP_CONNECTION_MANAGER, > connManager); > > The connection pool it's configured to have 200 connection for route, I > have made some test and my application fail after until 200 web service > request. > > From log i see this line, to confim my idea: > > 2016-09-19 16:01:06| DEBUG | Connection leased: [id: 199][route: > {s}-http://XXXX:443][total kept alive: 0; route allocated: 200 of 200; > total allocated: 200 of 200] > 2016-09-19 16:01:09| DEBUG | Connection request: [route: > {s}->http://XXXX:443][total kept alive: 0; route allocated: 200 of > 200; total allocated: 200 of 200] > > I think the connection pool use all available connections without release > it, after that throwing the exception. > > I tried to write on Axis2 mail list without luck. > > Any suggestions/test to solve the my problem ? > > regs
Fix code that leaks connections. Oleg --------------------------------------------------------------------- To unsubscribe, e-mail: httpclient-users-unsubscr...@hc.apache.org For additional commands, e-mail: httpclient-users-h...@hc.apache.org