Alexey Goncharuk created IGNITE-2622:
----------------------------------------

             Summary: Excessive memory usage by objects of destroyed caches
                 Key: IGNITE-2622
                 URL: https://issues.apache.org/jira/browse/IGNITE-2622
             Project: Ignite
          Issue Type: Bug
          Components: cache
    Affects Versions: ignite-1.4
            Reporter: Alexey Goncharuk


If I start and stop tens of caches in a loop, cache's configuration gets stored 
in the following objects:
 * PartitionExchangeFuture.reqs Change requests contain configuration which is 
then used in cache
 * ServerImpl.PendingMessages.msgs also contain the same reqs

Both collections are limited, however consider the following scenario: create a 
cache with an eviction policy, fill it up with data, destroy cache, repeat. 
Even though the cache is destroyed, it's entries are saved in the eviction 
policy and do not get collected until both exchange future and pending message 
(see above) gets cleared.

Possible solutions:
 * Use a copy of eviction policy for cache creation.
 * Clear requests in exchange future after it's done (easy) and discovery 
custom message when it's not needed (hard)



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

Reply via email to