You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Guillaume Nodet (JIRA)" <ji...@apache.org> on 2008/09/11 10:00:52 UTC

[jira] Commented: (SM-1407) Memory Leak in http consumer processor when a timeout occurs

    [ https://issues.apache.org/activemq/browse/SM-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45618#action_45618 ] 

Guillaume Nodet commented on SM-1407:
-------------------------------------

In case of a timeout, the component should send back an error to indicate that there was a problem, else the answer will be completely lost. In the current code, the fact that the HTTP request has timed out before the exchange comes back result in the continuation object being removed from the locks map. When the exchange comes back later, an exception is thrown in the process(MessageExchange) method which will result in an ERROR status being sent by the component for this exchange.
This critical method either send an exception (which will result in an error on the exchange) or call cont.resume() which will trigger a new call to process(HttpServletRequest request, HttpServletResponse response) or unblock the call to cont.suspend(timeout) depending if the jetty connector is an NIO connector or a BIO connector.

Btw, I've written lots of comments in the HttpConsumerEndpoint (https://svn.apache.org/repos/asf/servicemix/components/bindings/servicemix-http/trunk/src/main/java/org/apache/servicemix/http/endpoints/HttpConsumerEndpoint.java) which uses the exact same logic and done some testing using the ConsumerEndpointTest#testHttpInOutUnderLoad() and it seems to work fine.

Could you set up a test case to illustrate the problem or provide more informations ?

> Memory Leak in http consumer processor when a timeout occurs
> ------------------------------------------------------------
>
>                 Key: SM-1407
>                 URL: https://issues.apache.org/activemq/browse/SM-1407
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http
>            Reporter: Guillaume Nodet
>            Assignee: Guillaume Nodet
>             Fix For: 3.2.2, 3.3
>
>         Attachments: ConsumerProcessor.java
>
>


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