You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Nikolay Tikhonov (JIRA)" <ji...@apache.org> on 2017/09/06 08:56:00 UTC

[jira] [Commented] (IGNITE-6219) IgniteCache#loadCache executes local load in caller thread

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

Nikolay Tikhonov commented on IGNITE-6219:
------------------------------------------

Looks good for me. Merged to master

> IgniteCache#loadCache executes local load in caller thread
> ----------------------------------------------------------
>
>                 Key: IGNITE-6219
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6219
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.1
>            Reporter: Valentin Kulichenko
>            Assignee: Dmitry Karachentsev
>            Priority: Critical
>             Fix For: 2.3
>
>
> {{IgniteCache#loadCache}} method broadcasts an internal task under the hood. If one of the jobs are local (i.e. if {{loadCache}} is invoked on server node), this job is executed in a caller thread, potentially *before all or some remote requests are sent*. Since data loading is generally long running process, its duration doubles in this scenario.
> Possible solution is to check the list of nodes before task execution, and if local node is there, execute on remote nodes first, and only then submit to local node. This way we make sure that remote nodes never wait for the local node.



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