Repository: incubator-ignite Updated Branches: refs/heads/ignite-426 25f8f419b -> 88a92639d
# ignite-426 Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/88a92639 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/88a92639 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/88a92639 Branch: refs/heads/ignite-426 Commit: 88a92639dcda8b6bf597a0bff97efa0aa8132ea6 Parents: 25f8f41 Author: sboikov <sboi...@gridgain.com> Authored: Mon Aug 17 14:22:10 2015 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Mon Aug 17 14:22:10 2015 +0300 ---------------------------------------------------------------------- .../distributed/dht/atomic/GridNearAtomicUpdateFuture.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/88a92639/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java index 1a779ad..82e06db 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java @@ -291,17 +291,22 @@ public class GridNearAtomicUpdateFuture extends GridFutureAdapter<Object> Collection<GridAtomicMappingKey> mappingKeys = new ArrayList<>(mappings.size()); Collection<KeyCacheObject> failedKeys = new ArrayList<>(); + AffinityTopologyVersion topVer = null; + for (Map.Entry<GridAtomicMappingKey, GridNearAtomicUpdateRequest> e : mappings.entrySet()) { if (e.getKey().nodeId().equals(nodeId)) { mappingKeys.add(e.getKey()); failedKeys.addAll(e.getValue().keys()); + + if (topVer == null || e.getValue().topologyVersion().compareTo(topVer) > 0) + topVer = e.getValue().topologyVersion(); } } if (!mappingKeys.isEmpty()) { - if (!failedKeys.isEmpty()) // TODO: top ver. - addFailedKeys(failedKeys, null, new ClusterTopologyCheckedException("Primary node left grid before " + + if (!failedKeys.isEmpty()) + addFailedKeys(failedKeys, topVer, new ClusterTopologyCheckedException("Primary node left grid before " + "response is received: " + nodeId)); for (GridAtomicMappingKey key : mappingKeys)