You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Stanilovsky Evgeny (JIRA)" <ji...@apache.org> on 2017/01/23 12:24:26 UTC

[jira] [Comment Edited] (IGNITE-4552) Optimize GridDhtLocalPartition.rmvQueue

    [ https://issues.apache.org/jira/browse/IGNITE-4552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15834345#comment-15834345 ] 

Stanilovsky Evgeny edited comment on IGNITE-4552 at 1/23/17 12:24 PM:
----------------------------------------------------------------------

i fount that in my local installation there are 3 system caches :
ignite-sys-cache, U.ceilPow2(delQueueSize) = 100, size of partition = 128
ignite-atomics-sys-cache, partitions = U.ceilPow2(delQueueSize), size of partition = 128
ignite-marshaller-sys-cache, partitions = U.ceilPow2(delQueueSize), size of partition = 128
and my test cache:
organization, partitions = U.ceilPow2(delQueueSize), size of partition = 4096

thus it would be over  400k tuple objects : <KeyCacheObject, GridCacheVersion>  only in my local config.




was (Author: zstan):
i fount that in my local installation there are 3 system caches :
ignite-sys-cache, partitions = 100, size of partition = 128
ignite-atomics-sys-cache, partitions = 1024, size of partition = 128
ignite-marshaller-sys-cache, partitions = 20, size of partition = 128
and my test cache:
organization, partitions = 64, size of partition = 4096

thus it would be over  400k tuple objects : <KeyCacheObject, GridCacheVersion>  only in my local config.



> 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: Stanilovsky Evgeny
>             Fix For: 2.0
>
>
> 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)