Poor interceptor chain management and memory leak in CxfBc
----------------------------------------------------------

                 Key: SMXCOMP-706
                 URL: https://issues.apache.org/activemq/browse/SMXCOMP-706
             Project: ServiceMix Components
          Issue Type: Bug
          Components: servicemix-cxf-bc
            Reporter: Daniel Kulp



CxfBcProvider and CxfBcProviderMessageObserver use a PhaseChainCache object to 
create the PhaseInterceptorChain.  However, it doesn't actually use it as a 
cache so that is useless.   The cache object creates a chain, then clones it 
and holds onto the original.   Thus, double the memory is used at the start 
plus the processing time of the clone.

Also, the BcProvider calls 
getOutInterceptors().addAll(getBus().getOutInterceptors()); for EVERY request 
causing the getOutInterceptors list to grow causing a memory leak.

I'll attach a patch that fixes them both.

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

Reply via email to