Ryan Fong created JCS-161:
-----------------------------

             Summary: dynamic regions leak memory upon dispose due to 
ShrinkerTask
                 Key: JCS-161
                 URL: https://issues.apache.org/jira/browse/JCS-161
             Project: Commons JCS
          Issue Type: Bug
          Components: Composite Cache
    Affects Versions: jcs-2.0-beta-1
            Reporter: Ryan Fong
            Priority: Critical


Creating a dynamic region via JCS.defineRegion and then destroying it via 
ComposeCacheManager.free does not fully reclaim all memory when the memory 
shrinker is enabled.

When shrinking is enabled, the 
org.apache.commons.jcs.engine.memory.shrinking.ShrinkerThread retains a pointer 
to CompositeCache which is never reclaimed.

A simple solution would be to have 
org.apache.commons.jcs.engine.control.CompositeCache.setScheduledExecutorService(ScheduledExecutorService)
 retain the ScheduledFuture as a field. When CompositeCache.disposed is called, 
we should call ScheduledFuture.cancel.




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

Reply via email to