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

ASF GitHub Bot commented on IGNITE-5593:
----------------------------------------

Github user AMashenkov closed the pull request at:

    https://github.com/apache/ignite/pull/2210


> Affinity change message leak on massive topology updates
> --------------------------------------------------------
>
>                 Key: IGNITE-5593
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5593
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 1.7
>            Reporter: Alexey Goncharuk
>            Assignee: Andrew Mashenkov
>            Priority: Critical
>             Fix For: 2.1
>
>
> When late affinity assignment is enabled, we complete the exchange future 
> with custom discovery event. Since discovery topology events usually are much 
> faster than exchange futures completion, it is possible that a newly joined 
> node can 'see' the affinity change messages that are related to previous 
> topology versions when this node even was not present in the topology.
> When this message is received, an exchange future is created and this message 
> is added to discoEvts list. However, this future never completes on this node 
> because init() is never called. This means that this exchange future sits in 
> the exchange set with the affinity change message.
> Since the number of topology changes (and, thus, messages) can be quite 
> large, this leads to excessive memory consumption on the starting node. I've 
> observed ~3Gb of heap wasted on one of the nodes when > 200 nodes were 
> restarted.



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

Reply via email to