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)