Repository: ignite Updated Branches: refs/heads/ignite-1537 dc7e33c8b -> cf4d0daf2
ignite-1.5 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/cf4d0daf Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/cf4d0daf Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/cf4d0daf Branch: refs/heads/ignite-1537 Commit: cf4d0daf25db953e8280341325f2d1e20686395b Parents: dc7e33c Author: sboikov <[email protected]> Authored: Tue Dec 15 10:32:59 2015 +0300 Committer: sboikov <[email protected]> Committed: Tue Dec 15 10:32:59 2015 +0300 ---------------------------------------------------------------------- .../processors/cache/distributed/dht/GridDhtCacheAdapter.java | 7 ++++++- .../cache/distributed/dht/GridPartitionedSingleGetFuture.java | 7 ++++--- 2 files changed, 10 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/cf4d0daf/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java index 9199e70..9cf8084 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java @@ -775,9 +775,14 @@ public abstract class GridDhtCacheAdapter<K, V> extends GridDistributedCacheAdap res.setContainsValue(); } else { + AffinityTopologyVersion topVer = ctx.shared().exchange().readyAffinityVersion(); + + assert topVer.compareTo(req.topologyVersion()) >= 0 : "Wrong ready topology version for " + + "invalid partitions response [topVer=" + topVer + ", req=" + req + ']'; + res = new GridNearSingleGetResponse(ctx.cacheId(), req.futureId(), - ctx.shared().exchange().readyAffinityVersion(), + topVer, null, true, req.addDeploymentInfo()); http://git-wip-us.apache.org/repos/asf/ignite/blob/cf4d0daf/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java index f3f225a..5d0814f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java @@ -191,8 +191,6 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im */ @SuppressWarnings("unchecked") private void map(AffinityTopologyVersion topVer) { - this.topVer = topVer; - ClusterNode node = mapKeyToNode(topVer); if (node == null) { @@ -250,6 +248,9 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im } else { synchronized (this) { + assert this.node == null; + + this.topVer = topVer; this.node = node; } @@ -325,7 +326,7 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im GridDhtCacheAdapter colocated = cctx.dht(); while (true) { - GridCacheEntryEx entry = null; + GridCacheEntryEx entry; try { entry = colocated.context().isSwapOrOffheapEnabled() ? colocated.entryEx(key) :
