You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Alois Reitbauer (JIRA)" <ji...@apache.org> on 2008/03/27 15:45:24 UTC

[jira] Created: (AXIS2-3670) Probelm using REUSE_HTTP_CLIENT

Probelm using REUSE_HTTP_CLIENT
-------------------------------

                 Key: AXIS2-3670
                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
    Affects Versions: 1.3
            Reporter: Alois Reitbauer
            Priority: Blocker


When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by jay25 <js...@yahoo.com>.
I am facing the same issue in production right now.  The axis stub already
has cleanTransport --
_messageContext.getTransportOut().getSender().cleanup(_messageContext);

We have set reuse_option to true. Rest of values are set to default.. Over
time, we have lot of threads in time_wait and end up choking the tomcat and
application..  Greatly appreciate help...

The thread dump shows threads waiting like this:
at java.lang.Object.wait(Native Method)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:509)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:394)
at
org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:152)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at
org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558)
at
org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73)
at
org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305)
at
org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
at com.xxx.HelloStub.hello1(HelloStub.java:173)



JIRA jira@apache.org wrote:
> 
> 
>     [
> https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12682033#action_12682033
> ] 
> 
> Dobri Kitipov commented on AXIS2-3670:
> --------------------------------------
> 
> I think that this issue has a solution. You can solve it doing one of the
> following:
> 
>  - Call the "cleanupTransport" in service client
> (client.cleanupTransport());
> - setting the option.setCallTransportCleanup(true);
>  - invoke
> messageContext.getTransportOut().getSender().cleanup(messageContext);
> 
> all this should release your http connection and return it into the pool
> for reuse.
> 
> Additionally it is always a good practice to invoke:
> 
> client.cleanup();
> 
> Doing so you  releases resources (and memory) assigned to the client and
> can solve "java.lang.OutOfMemoryError: Java heap space" issues if any.
> 
> IMHO this JIRA should be closed. What do you think?
> 
> Regards,
> Dobri
> 
>> Problem using REUSE_HTTP_CLIENT - Application stalls
>> ----------------------------------------------------
>>
>>                 Key: AXIS2-3670
>>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>>             Project: Axis 2.0 (Axis2)
>>          Issue Type: Bug
>>    Affects Versions: 1.3
>>            Reporter: Alois Reitbauer
>>            Priority: Critical
>>         Attachments: Stalled call  vs. executing call.jpg
>>
>>
>> When using REUSE_HTTP_CLIENT on a service client to reuse a http client
>> the client application hangs after 3 executions. The reason is that it
>> obviously waits in
>> MultithreadedHttpConnectionManager.getConnectionWithTimeout()
> 
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23302379.html
Sent from the Axis - Dev mailing list archive at Nabble.com.


Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by Dobri Kitipov <kd...@googlemail.com>.
Hi,
this is better than nothing :) Can you please, provide us with the tests
results. Is the fix ok and tested successfully?

Thanks,
Dobri

On Mon, May 4, 2009 at 8:33 PM, jay25 <js...@yahoo.com> wrote:

>
> Hi
>
> I tried applying the 1.3 patch as specified here:
>
> https://issues.apache.org/jira/browse/AXIS2-2931?focusedCommentId=12676837#action_12676837
>
> The stub generated with the new patch also has the same issue. Transport is
> cleaned up only in case of success  scenario.  So I edited the generated
> stub to add finally block to cleanup transport.
> This seems to fix the issue. However need to do more testing to confirm the
> fix.
>
> Not a very clean solution, but a workaround for now.
>
> Thanks
> Jay
>
>
> Dobri Kitipov-3 wrote:
> >
> > Hi Jayashree,
> > you can check if:
> >
> > _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> >
> > is really invoked. AFAI can remember there is an issue when an exception
> > is
> > thrown into the stub. If this is the case the
> > _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> is
> > not invoked.
> >
> > Sorry for not being really responsive, but I am on a vacatio and will be
> > back on 7th of May.
> >
> > hope this helps
> >
> > Regards,
> > Dobri
> >
>
>
>
> --
> View this message in context:
> http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23372954.html
> Sent from the Axis - Dev mailing list archive at Nabble.com.
>
>

Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by jay25 <js...@yahoo.com>.
Hi

I tried applying the 1.3 patch as specified here:
https://issues.apache.org/jira/browse/AXIS2-2931?focusedCommentId=12676837#action_12676837

The stub generated with the new patch also has the same issue. Transport is
cleaned up only in case of success  scenario.  So I edited the generated
stub to add finally block to cleanup transport. 
This seems to fix the issue. However need to do more testing to confirm the
fix. 

Not a very clean solution, but a workaround for now. 

Thanks
Jay


Dobri Kitipov-3 wrote:
> 
> Hi Jayashree,
> you can check if:
> 
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> 
> is really invoked. AFAI can remember there is an issue when an exception
> is
> thrown into the stub. If this is the case the
> _messageContext.getTransportOut().getSender().cleanup(_messageContext); is
> not invoked.
> 
> Sorry for not being really responsive, but I am on a vacatio and will be
> back on 7th of May.
> 
> hope this helps
> 
> Regards,
> Dobri
> 



-- 
View this message in context: http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23372954.html
Sent from the Axis - Dev mailing list archive at Nabble.com.


Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by Dobri Kitipov <kd...@googlemail.com>.
Hi,
just for the test you can modify the stub and move the
_messageContext.
>
> getTransportOut().getSender().cleanup(_messageContext);


into a finally block. So with or without exceptions the connection close
should be triggered.

Regards,
Dobri


On Fri, May 1, 2009 at 10:22 PM, jay25 <js...@yahoo.com> wrote:

>
> Thanks a lot for taking time during your vacation for this issue. Really
> under lot of pressure to get this going. Yes, I could see that the
> generated
> stub has
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> just
> before send response.
>
> I made little more progress on this issue.
> My settings: Java 1.5, Axis2 1.3, default values for axis settings - number
> of connections to host, timeout.
> This is what is happening:
> default timeout for connection is getting set to 60000 and socket timeout
> to
> 30000. When the server takes more time to respond (I simulated this by
> adding wait(70000) in service code ), axis fault exception is thrown: Also,
> thread dump shows thread in stuck state; netstat shows some connections
> lingering in close_wait for about 10 minutes. Looks like after the timeout
> the connections or threads are not getting released to the connection pool.
> So subsequent requests keep waiting.
>
>  "xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
> "><soapenv:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>current
> thread not
> owner</faultstring><detail><Exception>org.apache.axis2.AxisFault:
> current thread not owner
> [\n]">
>  "[0x9]at
> org.apache.axis2.AxisFault.makeFault(AxisFault.java:381)
> [\n]">
>  "[0x9]at
>
> com.rsa.pso.aa.services.AccountServiceMessageReceiverInOut.invokeBusinessLogic(AccountServiceMessageReceiverInOut.java:101)
> [\n]">
>  "[0x9]at
>
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
> [\n]">
>  "[0x9]at
> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:144)
> [\n]">
>  "[0x9]at
>
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:279)
> [\n]">
>  "[0x9]at
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:116)
> [\n]">
>  "[0x9]at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> [\n]">
>  "[0x9]at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> [\n]">
>  "[0x9]at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:548)
> [\n]">
>  "[0x9]at
>
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> [\n]">
>  "[0x9]at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> [\n]">
>  "[0x9]at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
> [\n]">
>  "[0x9]at
>
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> [\n]">
>  "[0x9]at
>
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> [\n]">
>  "[0x9]at
>
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> [\n]">
>  "[0x9]at
>
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
> [\n]">
>  "[0x9]at java.lang.Thread.run(Unknown Source)
> [\n]">
>  "Caused by: java.lang.IllegalMonitorStateException: current thread not
> owner
> [\n]">
>  "[0x9]at java.lang.Object.wait(Native Method)
> [\n]">
>  "[0x9]at com.xx.HelloWorld.hello(HelloWorld.java:49)
> [\n]">
>  "[0x9]at
>
> com.xx.HelloWorld.HelloWorldMessageReceiverInOut.invokeBusinessLogic(HelloWorldMessageReceiverInOut.java:48)
> [\n]">
>  "[0x9]... 21 more
> [\n]">
>  "</Exception></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>">
>
>
>
> Hi Jayashree,
> you can check if:
>
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
>
> is really invoked. AFAI can remember there is an issue when an exception is
> thrown into the stub. If this is the case the
> _messageContext.getTransportOut().getSender().cleanup(_messageContext); is
> not invoked.
>
> Sorry for not being really responsive, but I am on a vacatio and will be
> back on 7th of May.
>
> hope this helps
>
> Regards,
> Dobri
>
>
> On Wed, Apr 29, 2009 at 11:49 PM, jay25 <js...@yahoo.com> wrote:
>
> >
> > I am facing the same issue in production right now.  The axis stub
> already
> > has cleanTransport --
> > _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> >
> > We have set reuse_option to true. Rest of values are set to default..
> > Greatly appreciate help...
> >
> > The thread dump shows threads waiting like this:
> > at java.lang.Object.wait(Native Method)
> > at
> >
> >
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:509)
> > at
> >
> >
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:394)
> > at
> >
> >
> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:152)
> > at
> >
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
> > at
> >
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
> > at
> >
> >
> org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558)
> > at
> >
> org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176)
> > at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73)
> > at
> >
> >
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305)
> > at
> >
> >
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201)
> > at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452)
> > at
> >
> >
> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330)
> > at
> >
> >
> org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
> > at com.xxx.HelloStub.hello1(HelloStub.java:173)
> >
>
> --
> View this message in context:
> http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23338385.html
> Sent from the Axis - Dev mailing list archive at Nabble.com.
>
>

Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by jay25 <js...@yahoo.com>.
Thanks a lot for taking time during your vacation for this issue. Really
under lot of pressure to get this going. Yes, I could see that the generated
stub has
_messageContext.getTransportOut().getSender().cleanup(_messageContext); just
before send response.

I made little more progress on this issue.  
My settings: Java 1.5, Axis2 1.3, default values for axis settings - number
of connections to host, timeout.
This is what is happening:
default timeout for connection is getting set to 60000 and socket timeout to
30000. When the server takes more time to respond (I simulated this by
adding wait(70000) in service code ), axis fault exception is thrown: Also,
thread dump shows thread in stuck state; netstat shows some connections
lingering in close_wait for about 10 minutes. Looks like after the timeout
the connections or threads are not getting released to the connection pool.
So subsequent requests keep waiting.

 "xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>current
thread not owner</faultstring><detail><Exception>org.apache.axis2.AxisFault:
current thread not owner&#xd;[\n]">
 "[0x9]at
org.apache.axis2.AxisFault.makeFault(AxisFault.java:381)&#xd;[\n]">
 "[0x9]at
com.rsa.pso.aa.services.AccountServiceMessageReceiverInOut.invokeBusinessLogic(AccountServiceMessageReceiverInOut.java:101)&#xd;[\n]">
 "[0x9]at
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)&#xd;[\n]">
 "[0x9]at
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:144)&#xd;[\n]">
 "[0x9]at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:279)&#xd;[\n]">
 "[0x9]at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:116)&#xd;[\n]">
 "[0x9]at
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)&#xd;[\n]">
 "[0x9]at
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:548)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)&#xd;[\n]">
 "[0x9]at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)&#xd;[\n]">
 "[0x9]at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)&#xd;[\n]">
 "[0x9]at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)&#xd;[\n]">
 "[0x9]at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)&#xd;[\n]">
 "[0x9]at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)&#xd;[\n]">
 "[0x9]at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)&#xd;[\n]">
 "[0x9]at java.lang.Thread.run(Unknown Source)&#xd;[\n]">
 "Caused by: java.lang.IllegalMonitorStateException: current thread not
owner&#xd;[\n]">
 "[0x9]at java.lang.Object.wait(Native Method)&#xd;[\n]">
 "[0x9]at com.xx.HelloWorld.hello(HelloWorld.java:49)&#xd;[\n]">
 "[0x9]at
com.xx.HelloWorld.HelloWorldMessageReceiverInOut.invokeBusinessLogic(HelloWorldMessageReceiverInOut.java:48)&#xd;[\n]">
 "[0x9]... 21 more&#xd;[\n]">
 "</Exception></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>">



Hi Jayashree,
you can check if:

_messageContext.getTransportOut().getSender().cleanup(_messageContext);

is really invoked. AFAI can remember there is an issue when an exception is
thrown into the stub. If this is the case the
_messageContext.getTransportOut().getSender().cleanup(_messageContext); is
not invoked.

Sorry for not being really responsive, but I am on a vacatio and will be
back on 7th of May.

hope this helps

Regards,
Dobri


On Wed, Apr 29, 2009 at 11:49 PM, jay25 <js...@yahoo.com> wrote:

>
> I am facing the same issue in production right now.  The axis stub already
> has cleanTransport --
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
>
> We have set reuse_option to true. Rest of values are set to default..
> Greatly appreciate help...
>
> The thread dump shows threads waiting like this:
> at java.lang.Object.wait(Native Method)
> at
>
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:509)
> at
>
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:394)
> at
>
> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:152)
> at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
> at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
> at
>
> org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558)
> at
> org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176)
> at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73)
> at
>
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305)
> at
>
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201)
> at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452)
> at
>
> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330)
> at
>
> org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
> at com.xxx.HelloStub.hello1(HelloStub.java:173)
>

-- 
View this message in context: http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23338385.html
Sent from the Axis - Dev mailing list archive at Nabble.com.


Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by Dobri Kitipov <kd...@googlemail.com>.
Hi Jayashree,
you can check if:

_messageContext.getTransportOut().getSender().cleanup(_messageContext);

is really invoked. AFAI can remember there is an issue when an exception is
thrown into the stub. If this is the case the
_messageContext.getTransportOut().getSender().cleanup(_messageContext); is
not invoked.

Sorry for not being really responsive, but I am on a vacatio and will be
back on 7th of May.

hope this helps

Regards,
Dobri


On Wed, Apr 29, 2009 at 11:49 PM, jay25 <js...@yahoo.com> wrote:

>
> I am facing the same issue in production right now.  The axis stub already
> has cleanTransport --
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
>
> We have set reuse_option to true. Rest of values are set to default..
> Greatly appreciate help...
>
> The thread dump shows threads waiting like this:
> at java.lang.Object.wait(Native Method)
> at
>
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:509)
> at
>
> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:394)
> at
>
> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:152)
> at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
> at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
> at
>
> org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558)
> at
> org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176)
> at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73)
> at
>
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305)
> at
>
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201)
> at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452)
> at
>
> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330)
> at
>
> org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
> at com.xxx.HelloStub.hello1(HelloStub.java:173)
>
>
>
> JIRA jira@apache.org wrote:
> >
> >
> >     [
> >
> https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12682033#action_12682033
> > ]
> >
> > Dobri Kitipov commented on AXIS2-3670:
> > --------------------------------------
> >
> > I think that this issue has a solution. You can solve it doing one of the
> > following:
> >
> >  - Call the "cleanupTransport" in service client
> > (client.cleanupTransport());
> > - setting the option.setCallTransportCleanup(true);
> >  - invoke
> > messageContext.getTransportOut().getSender().cleanup(messageContext);
> >
> > all this should release your http connection and return it into the pool
> > for reuse.
> >
> > Additionally it is always a good practice to invoke:
> >
> > client.cleanup();
> >
> > Doing so you  releases resources (and memory) assigned to the client and
> > can solve "java.lang.OutOfMemoryError: Java heap space" issues if any.
> >
> > IMHO this JIRA should be closed. What do you think?
> >
> > Regards,
> > Dobri
> >
> >> Problem using REUSE_HTTP_CLIENT - Application stalls
> >> ----------------------------------------------------
> >>
> >>                 Key: AXIS2-3670
> >>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
> >>             Project: Axis 2.0 (Axis2)
> >>          Issue Type: Bug
> >>    Affects Versions: 1.3
> >>            Reporter: Alois Reitbauer
> >>            Priority: Critical
> >>         Attachments: Stalled call  vs. executing call.jpg
> >>
> >>
> >> When using REUSE_HTTP_CLIENT on a service client to reuse a http client
> >> the client application hangs after 3 executions. The reason is that it
> >> obviously waits in
> >> MultithreadedHttpConnectionManager.getConnectionWithTimeout()
> >
> > --
> > This message is automatically generated by JIRA.
> > -
> > You can reply to this email to add a comment to the issue online.
> >
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23302377.html
> Sent from the Axis - Dev mailing list archive at Nabble.com.
>
>

Re: [jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by jay25 <js...@yahoo.com>.
I am facing the same issue in production right now.  The axis stub already
has cleanTransport --
_messageContext.getTransportOut().getSender().cleanup(_messageContext);

We have set reuse_option to true. Rest of values are set to default..
Greatly appreciate help...

The thread dump shows threads waiting like this:
at java.lang.Object.wait(Native Method)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:509)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:394)
at
org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:152)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at
org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558)
at
org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73)
at
org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305)
at
org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
at com.xxx.HelloStub.hello1(HelloStub.java:173)



JIRA jira@apache.org wrote:
> 
> 
>     [
> https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12682033#action_12682033
> ] 
> 
> Dobri Kitipov commented on AXIS2-3670:
> --------------------------------------
> 
> I think that this issue has a solution. You can solve it doing one of the
> following:
> 
>  - Call the "cleanupTransport" in service client
> (client.cleanupTransport());
> - setting the option.setCallTransportCleanup(true);
>  - invoke
> messageContext.getTransportOut().getSender().cleanup(messageContext);
> 
> all this should release your http connection and return it into the pool
> for reuse.
> 
> Additionally it is always a good practice to invoke:
> 
> client.cleanup();
> 
> Doing so you  releases resources (and memory) assigned to the client and
> can solve "java.lang.OutOfMemoryError: Java heap space" issues if any.
> 
> IMHO this JIRA should be closed. What do you think?
> 
> Regards,
> Dobri
> 
>> Problem using REUSE_HTTP_CLIENT - Application stalls
>> ----------------------------------------------------
>>
>>                 Key: AXIS2-3670
>>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>>             Project: Axis 2.0 (Axis2)
>>          Issue Type: Bug
>>    Affects Versions: 1.3
>>            Reporter: Alois Reitbauer
>>            Priority: Critical
>>         Attachments: Stalled call  vs. executing call.jpg
>>
>>
>> When using REUSE_HTTP_CLIENT on a service client to reuse a http client
>> the client application hangs after 3 executions. The reason is that it
>> obviously waits in
>> MultithreadedHttpConnectionManager.getConnectionWithTimeout()
> 
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/-jira--Created%3A-%28AXIS2-3670%29-Probelm-using-REUSE_HTTP_CLIENT-tp16331279p23302377.html
Sent from the Axis - Dev mailing list archive at Nabble.com.


[jira] Updated: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by "Davanum Srinivas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Davanum Srinivas updated AXIS2-3670:
------------------------------------

    Priority: Critical  (was: Blocker)

> Problem using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Critical
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Updated: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alois Reitbauer updated AXIS2-3670:
-----------------------------------

    Summary: Probell using REUSE_HTTP_CLIENT - Application stalls  (was: Probelm using REUSE_HTTP_CLIENT)

> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Michele Mazzucco (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12582671#action_12582671 ] 

Michele Mazzucco commented on AXIS2-3670:
-----------------------------------------

Post your client code please. My guess is that this is a configuration problem.
My personal advice is:
- Try to look through old emails and other JIRAs too. 
- Check your configuration against the AsyncService2Test  integration test (you'll need the source code, it's under modules/integration/test, look inside the async package)




> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12582977#action_12582977 ] 

Alois Reitbauer commented on AXIS2-3670:
----------------------------------------

Hi Michele,

I checked some of the other JIRA issues as well, However it did not really solve my problem. I also found two versions of using a cached HTTP client. One explcitly setting the CACHED_HTTP_CLIENT property and one not doing it. However I tried both ways and neither worked.

Below is the client code that you for your help in advance

	public static ServiceClient sender;
		
    static{		
		try {
			sender = new ServiceClient ();
			Options options = sender.getOptions ();
            options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
            options.setProperty(Constants.Configuration.HTTP_METHOD, Constants.Configuration.HTTP_METHOD_GET);
            options.setProperty(HTTPConstants.HEADER_CONNECTION, HTTPConstants.HEADER_CONNECTION_KEEPALIVE);
 
//            once used once not - however no effect            
//            HttpClient httpClient = new HttpClient(new MultiThreadedHttpConnectionManager());
//            options.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);            
 			
            options.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, Constants.VALUE_TRUE);
			EndpointReference endPoint = new EndpointReference ("http://localhost:8080/axis2/services/AddressService/getPersons");
			options.setTo(endPoint);			
		} catch (AxisFault e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	
	}
	public static void main(String[] args) throws AxisFault {
        Object o = new Object();
        for (int i = 0; i < 40000000; i++) {
        	invokeAsRest();
            synchronized (o) {
                try {
                    o.wait(100);
                } catch (InterruptedException ex) {
                }
            }
        }
    }

      private static void invokeAsRest (){
    	
    	try {
			QName op= new QName ("http:/webservices.test/xsd", "getPersons");
			QName param = new QName ("http://webservices.test/xsd", "count");
			Object [] args = new Object[]{100};
			OMElement request = BeanUtil.getOMElement(op, args, param, false, null);
			OMElement response = sender.sendReceive(request);
			System.out.println(response);
		} catch (AxisFault e) {
			e.printStackTrace();
		}
    	
    }

> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Michele Mazzucco (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12583062#action_12583062 ] 

Michele Mazzucco commented on AXIS2-3670:
-----------------------------------------

1- No, that's a different issue. You said that your application gets stuck, that issue is about connection status (and the last comment in https://issues.apache.org/jira/browse/AXIS2-2883 tells you how to fix the problem).
2- You asked for some help. I've asked you to post your client code -- which is single threaded (i.e. requests sent sequentially). Now you tell me that requests are not sent concurrently. Which code did you post? 


> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12583103#action_12583103 ] 

Alois Reitbauer commented on AXIS2-3670:
----------------------------------------

Sorry for causing confusion. The code I use is the one above. Which executes the requests in one thread in blocking mode. So there is no concurrecy. So the second request gets sent after the first one is received.

The reason why I though my issue relates to the other one ist, that the application continues to work after a garbage collection, which obviously causes resources to be freed up. I ran my example using Xms and Xmx at 500 MB the application gets stuck. If I run it with a smaller heap everything works fine.

> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Updated: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alois Reitbauer updated AXIS2-3670:
-----------------------------------

    Summary: Problem using REUSE_HTTP_CLIENT - Application stalls  (was: Probell using REUSE_HTTP_CLIENT - Application stalls)

> Problem using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Problem using REUSE_HTTP_CLIENT - Application stalls

Posted by "Dobri Kitipov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12682033#action_12682033 ] 

Dobri Kitipov commented on AXIS2-3670:
--------------------------------------

I think that this issue has a solution. You can solve it doing one of the following:

 - Call the "cleanupTransport" in service client (client.cleanupTransport());
- setting the option.setCallTransportCleanup(true);
 - invoke messageContext.getTransportOut().getSender().cleanup(messageContext);

all this should release your http connection and return it into the pool for reuse.

Additionally it is always a good practice to invoke:

client.cleanup();

Doing so you  releases resources (and memory) assigned to the client and can solve "java.lang.OutOfMemoryError: Java heap space" issues if any.

IMHO this JIRA should be closed. What do you think?

Regards,
Dobri

> Problem using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Critical
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12583048#action_12583048 ] 

Alois Reitbauer commented on AXIS2-3670:
----------------------------------------

I browsed the issues again and fond that this seems to be the problem:

http://issues.apache.org/jira/browse/AXIS2-2883

By the way requests are sent serially. 

> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Updated: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alois Reitbauer updated AXIS2-3670:
-----------------------------------

    Attachment: Stalled call  vs. executing call.jpg

> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3670) Probell using REUSE_HTTP_CLIENT - Application stalls

Posted by "Alois Reitbauer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12583007#action_12583007 ] 

Alois Reitbauer commented on AXIS2-3670:
----------------------------------------

Hello Michele,

thank you for the example. I modified the code accordingly. Now it is working fine if i set MaxTotalConnections high enough. If I would set it to 1 it again stalls. I also have some stalls from time to time.

I know that executing so many requests is not a good idea, however this is planned to be a stress test (btw. agreed on the object wait).

I have identified the point where it stalls in case it stalls. See screenshot



> Probell using REUSE_HTTP_CLIENT - Application stalls
> ----------------------------------------------------
>
>                 Key: AXIS2-3670
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3670
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Alois Reitbauer
>            Priority: Blocker
>         Attachments: Stalled call  vs. executing call.jpg
>
>
> When using REUSE_HTTP_CLIENT on a service client to reuse a http client the client application hangs after 3 executions. The reason is that it obviously waits in MultithreadedHttpConnectionManager.getConnectionWithTimeout()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org