You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexander Belyak (JIRA)" <ji...@apache.org> on 2017/11/22 11:18:00 UTC

[jira] [Updated] (IGNITE-6962) Reduce ExchangeHistory memory consumption

     [ https://issues.apache.org/jira/browse/IGNITE-6962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexander Belyak updated IGNITE-6962:
-------------------------------------
    Attachment: leak.jpg

1) Start server node igSrv
2) 
for i in 1..10:
  for j in 1..10:
    igSrv.getOrCreateCache(<cacheConfig of cache-i-j in cacheGroup-i>);
Option -DIGNITE_EXCHANGE_HISTORY_SIZE can limit total number of history, but single history entry still huge.

> Reduce ExchangeHistory memory consumption
> -----------------------------------------
>
>                 Key: IGNITE-6962
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6962
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.1
>            Reporter: Alexander Belyak
>         Attachments: leak.jpg
>
>
> GridDhtPartitionExchangeManager$ExhcangeFutureSet store huge message GridDhtPartitionsFullMessage with IgniteDhtPartitionCountersMap2 for each cache group with two long[partCount]. If we have big grid (100+ nodes) with large amount of cacheGroups and partitions in CachePartitionFullCountersMap(long[] initialUpdCntrs; long[] updCntrs;)
> <cacheGroups>*<2 arrays>*<partCount>*<sizeOflong=8> = GridDhtPartitionsFullMessage size and we store 1000 of messages in history.
> To reproduce: start few cacheGroup with huge number of partitions with few caches and analyze heap dump in Eclipse MAT (for example)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)