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 "Amila Chinthaka Suriarachchi (JIRA)" <ji...@apache.org> on 2010/12/25 13:44:46 UTC
[jira] Resolved: (AXIS2-3725) TCP connections in CLOSE_WAIT state
after axis calls resulting in an exception
[ https://issues.apache.org/jira/browse/AXIS2-3725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Amila Chinthaka Suriarachchi resolved AXIS2-3725.
-------------------------------------------------
Resolution: Fixed
the suggestion to add the try/finally block is already added.
Now Axis2 shares the connections but need to clean up each connection once the invocation is over.
> TCP connections in CLOSE_WAIT state after axis calls resulting in an exception
> ------------------------------------------------------------------------------
>
> Key: AXIS2-3725
> URL: https://issues.apache.org/jira/browse/AXIS2-3725
> Project: Axis2
> Issue Type: Bug
> Components: codegen
> Affects Versions: 1.3, 1.1.1
> Environment: BEA-Weblogic 8.1 SP6
> Reporter: Dennis Merkel
>
> Similar problems reported in AXIS-2430, AXIS-2883 and SOAP-170.
> PROBLEM-DESCRIPTION
> Every axis call resulting in an exception (whether the server is down or server responding with wsdl:fault) leaves behind a new tcp connection in the CLOSE_WAIT state.
> Once the maximum number for SOCKET_WAITs is reached (depending on operating system - the maximum number of open file descriptors) no more calls could be handled until restart of BEA-Weblogic-Server.
> WORKAROUND
> The problem was fixed by adapting each java (wsdl:operation)-method of the generated client stub as followed: the try-catch-block was extended with the finally block
> finally{
> if(_messageContext != null){
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> }
> }
> The cleanup method in original stub is called only in try-block, so if an exception rises during a web service call, code execution is continued in catch block without calling the cleanup method leading by that to a new not cleaned up connection in the CLOSE_WAIT state.
> P.S.:
> - It is required to move the declaration of _messageContext variable before the try block to make it visible in finally block
> - Problem was initialy found on axis2 1.1.1, upgrade to 1.3 did not eliminate the problem
--
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: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org