[ 
https://issues.apache.org/jira/browse/CXF-1621?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bharath Ganesh resolved CXF-1621.
---------------------------------

       Resolution: Fixed
    Fix Version/s: 2.0.7
                   2.1.1

http://www.nabble.com/Memory-Leak-at-WSDLManagerImpl-td17579537.html

The schemaCacheMap will now always have a weak value (This will be done by 
putting a WeakReference of the
ServiceSchemaInfo in the map). 

> Memory Leak in WSDLManagerImpl - SchemaCacheMap
> -----------------------------------------------
>
>                 Key: CXF-1621
>                 URL: https://issues.apache.org/jira/browse/CXF-1621
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.1, 2.0.6
>            Reporter: Bharath Ganesh
>            Assignee: Bharath Ganesh
>             Fix For: 2.1.1, 2.0.7
>
>
> The schemaCacheMap in WSDLManagerImpl has a weak key - WSDLDefinition and 
> value ServiceSchemaInfo. A key,value pair is inserted into this map while 
> building a service. The entry is never explicitly removed from this map. 
> Since the map is a WeakHashMap, it is assumed that when the key 
> WSDLDefinition is weakly referenced, the entry would be removed from the map. 
> But it is seen that the value ServiceSchemaInfo(the value) holds on to a 
> SchemaInfo which in turn holds on to the ServiceInfo, which holds the 
> WSDLDefinition through the AbstractPropertiesHolder.
> This would mean that the value of the CacheMap always strongly refers to the 
> key, which would mean the entry would never be removed from the map.
> "The value objects in a WeakHashMap are held by ordinary strong references. 
> Thus care should be taken to ensure that value objects do not strongly refer 
> to their own keys, either directly or indirectly, since that will prevent the 
> keys from being discarded"
> This would mean ServiceInfo, OperationInfo, BindingInfo, WSDLDefinition would 
> all stay in the VM even after the endpoint is stopped.

-- 
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