change getExecutors from Collection to Set
Project: http://git-wip-us.apache.org/repos/asf/storm/repo Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/a199e9ea Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/a199e9ea Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/a199e9ea Branch: refs/heads/master Commit: a199e9ea0b99ed28e8edf8185a3497e9fa6ec5db Parents: 719de79 Author: Xin Wang <[email protected]> Authored: Wed Mar 16 12:34:25 2016 +0800 Committer: vesense <[email protected]> Committed: Wed Mar 16 12:46:23 2016 +0800 ---------------------------------------------------------------------- .../src/jvm/org/apache/storm/scheduler/DefaultScheduler.java | 2 +- storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java | 2 +- .../src/jvm/org/apache/storm/scheduler/TopologyDetails.java | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/storm/blob/a199e9ea/storm-core/src/jvm/org/apache/storm/scheduler/DefaultScheduler.java ---------------------------------------------------------------------- diff --git a/storm-core/src/jvm/org/apache/storm/scheduler/DefaultScheduler.java b/storm-core/src/jvm/org/apache/storm/scheduler/DefaultScheduler.java index 764c198..57d8739 100644 --- a/storm-core/src/jvm/org/apache/storm/scheduler/DefaultScheduler.java +++ b/storm-core/src/jvm/org/apache/storm/scheduler/DefaultScheduler.java @@ -73,7 +73,7 @@ public class DefaultScheduler implements IScheduler { List<TopologyDetails> needsSchedulingTopologies = cluster.needsSchedulingTopologies(topologies); for (TopologyDetails topology : needsSchedulingTopologies) { List<WorkerSlot> availableSlots = cluster.getAvailableSlots(); - Set<ExecutorDetails> allExecutors = (Set<ExecutorDetails>) topology.getExecutors(); + Set<ExecutorDetails> allExecutors = topology.getExecutors(); Map<WorkerSlot, List<ExecutorDetails>> aliveAssigned = EvenScheduler.getAliveAssignedWorkerSlotExecutors(cluster, topology.getId()); Set<ExecutorDetails> aliveExecutors = new HashSet<ExecutorDetails>(); http://git-wip-us.apache.org/repos/asf/storm/blob/a199e9ea/storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java ---------------------------------------------------------------------- diff --git a/storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java b/storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java index d91e187..dec0a7b 100644 --- a/storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java +++ b/storm-core/src/jvm/org/apache/storm/scheduler/EvenScheduler.java @@ -100,7 +100,7 @@ public class EvenScheduler implements IScheduler { private static Map<ExecutorDetails, WorkerSlot> scheduleTopology(TopologyDetails topology, Cluster cluster) { List<WorkerSlot> availableSlots = cluster.getAvailableSlots(); - Set<ExecutorDetails> allExecutors = (Set<ExecutorDetails>) topology.getExecutors(); + Set<ExecutorDetails> allExecutors = topology.getExecutors(); Map<WorkerSlot, List<ExecutorDetails>> aliveAssigned = getAliveAssignedWorkerSlotExecutors(cluster, topology.getId()); int totalSlotsToUse = Math.min(topology.getNumWorkers(), availableSlots.size() + aliveAssigned.size()); http://git-wip-us.apache.org/repos/asf/storm/blob/a199e9ea/storm-core/src/jvm/org/apache/storm/scheduler/TopologyDetails.java ---------------------------------------------------------------------- diff --git a/storm-core/src/jvm/org/apache/storm/scheduler/TopologyDetails.java b/storm-core/src/jvm/org/apache/storm/scheduler/TopologyDetails.java index a0eb4ad..72375df 100644 --- a/storm-core/src/jvm/org/apache/storm/scheduler/TopologyDetails.java +++ b/storm-core/src/jvm/org/apache/storm/scheduler/TopologyDetails.java @@ -22,6 +22,7 @@ import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; import org.apache.storm.Config; import org.apache.storm.generated.Bolt; @@ -117,7 +118,7 @@ public class TopologyDetails { return ret; } - public Collection<ExecutorDetails> getExecutors() { + public Set<ExecutorDetails> getExecutors() { return this.executorToComponent.keySet(); }
