You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ilya Lantukh (JIRA)" <ji...@apache.org> on 2018/10/01 11:57:00 UTC

[jira] [Commented] (IGNITE-9561) Optimize affinity initialization for started cache groups

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

Ilya Lantukh commented on IGNITE-9561:
--------------------------------------

[~Jokser], thanks for the contribution!

I have a few questions and remarks:
1. IgniteThrowableConsumer - what's the difference between this class and IgniteInClosureX?
2. CacheAffinitySharedManager.applyAffinityFromFullMessage - I didn't understand your comment. What do you mean by *pattern of code (nodesByOrder, affCache)*? Why can't I use it? Please write a more detailed comment.
3. CacheGroupDescriptor - why do you need equals and hashCode methods? At least fix codestyle for them.
4. IgniteUtils.doInParallel - I find it very inconvenient that in case of Exception you won't have any information about which particular tasks failed.

> Optimize affinity initialization for started cache groups
> ---------------------------------------------------------
>
>                 Key: IGNITE-9561
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9561
>             Project: Ignite
>          Issue Type: Improvement
>          Components: cache
>    Affects Versions: 2.5
>            Reporter: Pavel Kovalenko
>            Assignee: Pavel Kovalenko
>            Priority: Major
>              Labels: cache
>             Fix For: 2.8
>
>
> At the end of
> {noformat}
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager#processCacheStartRequests 
> {noformat}
> method we're initializing affinity for cache groups starting at current exchange.
> We do it one-by-one and synchronously wait for AffinityFetchResponse for each of the starting groups. This is inefficient. We may parallelize this process and speed up caches starting process.
> NOTE: There are also a lot of affinity recalculation methods in: 
> {noformat}
> CacheAffinitySharedManager
> {noformat}
> which all looks like iterate over cache groups and recalculate affinity for all of them. We can easily speed-up each of such methods executing in parallel affinity re-calculation for each of cache groups.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)