[ 
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)

Reply via email to