You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Ryan Fong (JIRA)" <ji...@apache.org> on 2016/05/06 02:26:12 UTC
[jira] [Created] (JCS-161) dynamic regions leak memory upon dispose
due to ShrinkerTask
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)