You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Alexei Scherbakov (JIRA)" <ji...@apache.org> on 2017/01/18 13:09:26 UTC
[jira] [Created] (IGNITE-4557) Wrong method is called on
rebalancing.
Alexei Scherbakov created IGNITE-4557:
-----------------------------------------
Summary: Wrong method is called on rebalancing.
Key: IGNITE-4557
URL: https://issues.apache.org/jira/browse/IGNITE-4557
Project: Ignite
Issue Type: Bug
Components: cache
Affects Versions: 1.6
Reporter: Alexei Scherbakov
Assignee: Alexei Scherbakov
Priority: Critical
Fix For: 2.0
During rebalancing the following code might be called from {{GridDhtPartitionDemander:695}}:
{noformat}
for (Integer miss : supply.missed()) {
if (cctx.affinity().localNode(miss, topVer))
fut.partitionMissed(id, miss);
}
{noformat}
The problem is in wrong polymorphic call to
{noformat}
public boolean localNode(Object key, AffinityTopologyVersion topVer)}}
{noformat}
Instead the following must be called:
{noformat}
public boolean localNode(int part, AffinityTopologyVersion topVer);.
{noformat}
Also a codebase must be verified for existing similar problems and its better to rename both methods to keyLocalNode and partitionLocalNode to avoid confusion.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)