[ https://issues.apache.org/jira/browse/IGNITE-4552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stanilovsky Evgeny updated IGNITE-4552: --------------------------------------- Attachment: Plot_ThroughputLatencyProbe_01_mine_1node.png Plot_ThroughputLatencyProbe_01_origin_1node.png benchmark-put-remove-simultaneously.properties Plot_ThroughputLatencyProbe_01_origin_3node.png Plot_ThroughputLatencyProbe_01_mine_3node.png > Optimize GridDhtLocalPartition.rmvQueue > --------------------------------------- > > Key: IGNITE-4552 > URL: https://issues.apache.org/jira/browse/IGNITE-4552 > Project: Ignite > Issue Type: Bug > Components: cache > Affects Versions: 1.6 > Reporter: Alexei Scherbakov > Assignee: Semen Boikov > Fix For: 2.0 > > Attachments: benchmark-put-remove-simultaneously.properties, > Plot_ThroughputLatencyProbe_01_mine_1node.png, > Plot_ThroughputLatencyProbe_01_mine_3node.png, > Plot_ThroughputLatencyProbe_01_origin_1node.png, > Plot_ThroughputLatencyProbe_01_origin_3node.png, > Screenshot_20170124_155355.png > > > Current implementation stores deferred entry removals in rmvQueue for > consistency guaranties. > This can lead to significant heap over-usage(I observed several Gbs) in case > of many caches with removals, because currently queue is cleared lazily after > reaching max capacity(200_000 by default). > This can be mitigated by using lower IGNITE_ATOMIC_CACHE_DELETE_HISTORY_SIZE, > but can lead to consistency issues in case of frequent cache updates. > Possible optimizations: > * Use single fixed size queue per all caches to overcome limitations of > IGNITE_ATOMIC_CACHE_DELETE_HISTORY_SIZE workaround. > * Do queue cleaning in background > * Move queue to an off-heap. -- This message was sent by Atlassian JIRA (v6.3.4#6332)