Alexey Goncharuk updated IGNITE-7083:
    Fix Version/s:     (was: 2.5)

> Reduce memory usage of CachePartitionFullCountersMap
> ----------------------------------------------------
>                 Key: IGNITE-7083
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7083
>             Project: Ignite
>          Issue Type: Improvement
>          Components: cache
>    Affects Versions: 2.3
>         Environment: Any
>            Reporter: Sunny Chan
>            Assignee: Alexey Goncharuk
>            Priority: Major
>             Fix For: 2.6
> The Cache Partition Exchange Manager kept a copy of the already completed 
> exchange. However, we have found that it uses a significant amount of memory. 
> Upon further investigation using heap dump we have found that a large amount 
> of memory is used by the CachePartitionFullCountersMap. We have also observed 
> in most cases, these maps contains only 0s.
> Therefore I propose an optimization for this: Initially the long arrays to 
> store initial update counter and update counter in the CPFCM will be null, 
> and when you get the value and see these tables are null then we will return 
> 0 for the counter. We only allocate the long arrays when there is any 
> non-zero updates to the the map.
> In our tests, the amount of heap used by GridCachePartitionExchangeManager 
> was around 70MB (67 copies of these CPFCM), after we apply the optimization 
> it drops to around 9MB.

This message was sent by Atlassian JIRA

Reply via email to