You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexei Scherbakov (JIRA)" <ji...@apache.org> on 2017/01/17 08:07:26 UTC
[jira] [Commented] (IGNITE-4552) Optimize
GridDhtLocalPartition.rmvQueue
[ https://issues.apache.org/jira/browse/IGNITE-4552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15825618#comment-15825618 ]
Alexei Scherbakov commented on IGNITE-4552:
-------------------------------------------
When thread per partition model will be implemented this ticket'll became obsolete. But this is rather large refactoring, so it may be worth to fix this meanwhile.
> 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
> 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)