[ 
https://issues.apache.org/jira/browse/CXF-7011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15430108#comment-15430108
 ] 

onder sezgin commented on CXF-7011:
-----------------------------------

So that means, I suppose, i misundrstood suspension 
timeout(continuation.suspend(TIMEOUT)). My understanding was that suspension 
timeout was the maximum amount of time within which the suspension should have 
resumed and If suspension timeout expires, continuation does not resume at the 
server side. That's why I thought we should have detected the suspension 
timeout(expiry) and mark camel exchange with an exchangetimedoutexception. So 
that becomes wrong after your explanation. 
There is no reason for camel such detection and mark the camel exhange with 
expiry because apparently the request is not expired and only the suspension 
timeout period has been elapsed. 

Therefore how we fixed CAMEL-10171 is partially correct. 

Doing 
{code}
....
// The continuation could be called before the suspend is called
continuation.suspend(cxfEndpoint.getContinuationTimeout());
                    
continuation.setObject(camelExchange);
....
{code}

before processing cxf exchange with async callback is right

But as you explained continuation suspension timeout, detecting continuation 
expiry in camel-cxf with the following lines are irrelevant as this condition 
is never met. (I mentioned here in 
https://issues.apache.org/jira/browse/CXF-7011?focusedCommentId=15422696&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15422696)

{code}
....
else if (!continuation.isResumed() && !continuation.isPending()) {
....
}
{code}

I wish you stopped me when i described earlier.

Both fixes (done here and what i'd done in camel-cxf) resolve the memory leak 
and requires code clean up in camel-cxf as of now, which has even no impact.

Thanks.


> same method signature needs to be added in Continuation
> -------------------------------------------------------
>
>                 Key: CXF-7011
>                 URL: https://issues.apache.org/jira/browse/CXF-7011
>             Project: CXF
>          Issue Type: Sub-task
>          Components: Transports
>    Affects Versions: 3.1.7
>            Reporter: onder sezgin
>             Fix For: 3.2.0
>
>
> As this method requires access over Continuation interface this should be 
> provided and other implementations like transport-jms and transport-http with 
>  default implementation and transport-http-jetty with real implemenration 
> should be provided.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to