Renting primary node - fix.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/767fe9ab Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/767fe9ab Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/767fe9ab Branch: refs/heads/ignite-5398 Commit: 767fe9abd578302159caaa59502f5ffb6f53336c Parents: b29b918 Author: Ilya Lantukh <[email protected]> Authored: Tue May 23 18:56:07 2017 +0300 Committer: Ilya Lantukh <[email protected]> Committed: Tue May 23 18:56:07 2017 +0300 ---------------------------------------------------------------------- .../dht/preloader/GridDhtPartitionsExchangeFuture.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/767fe9ab/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java index fff1702..ac5a5b5 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java @@ -1707,7 +1707,17 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT CounterWithNodes maxCntr = maxCntrs.get(part.id()); - if (maxCntr == null || cntr > maxCntr.cnt) + if (maxCntr == null && cntr == 0) { + CounterWithNodes cntrObj = new CounterWithNodes(cntr, cctx.localNodeId()); + + for (UUID nodeId : msgs.keySet()) { + if (top.partitionState(nodeId, part.id()) == GridDhtPartitionState.OWNING) + cntrObj.nodes.add(nodeId); + } + + maxCntrs.put(part.id(), cntrObj); + } + else if (maxCntr == null || cntr > maxCntr.cnt) maxCntrs.put(part.id(), new CounterWithNodes(cntr, cctx.localNodeId())); else if (cntr == maxCntr.cnt) maxCntr.nodes.add(cctx.localNodeId());
