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)