Repository: incubator-ignite Updated Branches: refs/heads/ignite-943 f499cfeaf -> 6c837c078
# ignite-943 Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6c837c07 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6c837c07 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6c837c07 Branch: refs/heads/ignite-943 Commit: 6c837c0783f04874157ac414f7161273c8c4d9f8 Parents: f499cfe Author: sboikov <semen.boi...@inria.fr> Authored: Fri May 29 23:43:25 2015 +0300 Committer: sboikov <semen.boi...@inria.fr> Committed: Fri May 29 23:43:25 2015 +0300 ---------------------------------------------------------------------- .../processors/service/GridServiceProcessor.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6c837c07/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java index aedac75..8eff6bd 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java @@ -1101,11 +1101,12 @@ public class GridServiceProcessor extends GridProcessorAdapter { try { depExe.submit(new BusyRunnable() { @Override public void run0() { - long topVer = ((DiscoveryEvent)evt).topologyVersion(); + AffinityTopologyVersion topVer = + new AffinityTopologyVersion(((DiscoveryEvent)evt).topologyVersion()); - ClusterNode oldest = U.oldest(ctx.discovery().nodes(topVer), null); + ClusterNode oldest = CU.oldestAliveCacheServerNode(cache.context().shared(), topVer); - if (oldest.isLocal()) { + if (oldest != null && oldest.isLocal()) { final Collection<GridServiceDeployment> retries = new ConcurrentLinkedQueue<>(); if (ctx.deploy().enabled()) @@ -1128,7 +1129,7 @@ public class GridServiceProcessor extends GridProcessorAdapter { ctx.cache().internalCache(UTILITY_CACHE_NAME).context().affinity(). affinityReadyFuture(topVer).get(); - reassign(dep, topVer); + reassign(dep, topVer.topologyVersion()); } catch (IgniteCheckedException ex) { if (!(e instanceof ClusterTopologyCheckedException)) @@ -1145,7 +1146,7 @@ public class GridServiceProcessor extends GridProcessorAdapter { } if (!retries.isEmpty()) - onReassignmentFailed(topVer, retries); + onReassignmentFailed(topVer.topologyVersion(), retries); } // Clean up zombie assignments.