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

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

well my intention was not to replace one method ref with another in this highly 
sensitive code :)
in resume method the implementatio was like;

{code}
public void resume() {
            isResumed = true;
            isPending = false;
            redispatch();
}
{code}

and in onTimeout callback
resume method was called.

So what i did was to replace the onTimeout callback implementation
as the following

{code}
public void onTimeout(AsyncEvent event) throws IOException {
            isPending = false;
            redispatch();
}
{code}

instead of
{code}
public void onTimeout(AsyncEvent event) throws IOException {
            resume();
}
{code}


so as to avoid 
{code}
isResumed=true
{code}

The reason i believe this is right is that because we had similar execution 
while using jetty.

After your latest changes, the fix i did in camel-cxf (CAMEL-10171) falls out 
(for jetty). (which is against your initial suggestion that we should fix this 
camel) However, as you set isResumed=true in 3.1.8 SNAPSHOT, memory leak does 
not come up again. However, we can not detect Continuation timeout in camel-cxf 
and can not mark camel exchange with exchangetimedoutexeption (which is again 
against your suggestion that we should fix this camel-cxf, as your latest 
change makes memory leak in CAMEL-10171 vanish.) and camel-cxf acts like  as if 
continuation resumed, instead camel would be able to detect continuation 
timeout.

So at this point, your latest change and what i am trying to do gets clashed 
and does not completely resolve CAMEL-10171 issue. (before your changes in 
3.1.8 SNAPSHOT, what camel-cxf issue 10171 attempts to do is well right. After 
your changes, memory leak does not come up but what we intent in camel-cxf 
falls out)  

i updated my PR, https://github.com/apache/cxf/pull/159 (assuming you have not 
done the change for 3.1.8)

However, apparently, your latest change requires another fix in camel-cxf 

[~davsclaus] and [~ddms], could you please bring your thoughts on what we have 
in camel-cxf component?

And lets have it right at the both ends(cxf-rt-transport-http   /    
cxf-rt-transport-http-jetty and camel-cxf)

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