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

ext2 commented on CXF-3750:
---------------------------

the patch may cause a problem: when the user's business logic reached a runtime 
exception in the one-way operation, a  temporary file of big attachment will be 
left on the disk;

The reason details is: 
1) one way interceptor will cache the input stream to avoid underly transport 
discard data (patch of CXF-3750 did), this may create a temporary file in disk 
when the request contains a big attachment;

2) if user's business logical has no exception, so when ServieInvokeInterceptor 
finished, the OutgoingChainInterceptor will release input stream then temporary 
file will be released;
OutgoingChainInterceptor.handleMessage(){
    if (null != bin && null != bin.getOperationInfo() && 
bin.getOperationInfo().isOneWay()) {
            closeInput(message); //here , the temporary file will be released
            return;
        }
}

3) if user's business logical reached a runtime exception (unhandled) , 
ServieInvokeInterceptor  return ABORT, so OutgoingChainInterceptor  will not 
executed continously, then the temporary file will not be released



> Sometimes, CXF servlet will blocked until bussiness logical finished for 
> one-way operation
> ------------------------------------------------------------------------------------------
>
>                 Key: CXF-3750
>                 URL: https://issues.apache.org/jira/browse/CXF-3750
>             Project: CXF
>          Issue Type: Bug
>         Environment: CXF2.3.3 windows xp, jdk1.5_22 or jdk1.6_17
>            Reporter: ext2
>            Assignee: Daniel Kulp
>            Priority: Minor
>             Fix For: 2.3.7, 2.4.3
>
>         Attachments: oneway-deadlock.zip
>
>
> sometime,the servlet handle(JettyHTTPHandler) at server side doesn't return 
> back to servlet engine(Jetty) immediately, it will waiting until the 
> asynchrouse business logical finished; 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to