Github user revans2 commented on a diff in the pull request: https://github.com/apache/storm/pull/2647#discussion_r186754134 --- Diff: storm-server/src/main/java/org/apache/storm/scheduler/Cluster.java --- @@ -48,6 +49,9 @@ public class Cluster implements ISchedulingState { private static final Logger LOG = LoggerFactory.getLogger(Cluster.class); + private static final Function<String, Set<WorkerSlot>> MAKE_SET = (x) -> new HashSet<>(); + private static final Function<String, Map<WorkerSlot, NormalizedResourceRequest>> MAKE_MAP = (x) -> new HashMap<>(); --- End diff -- I am happy to add in a comment to Cluster itself about it, as none of Cluster is currently thread safe. As for parallel scheduling the plan that we had been thinking about was more around scheduling multiple topologies in parallel, rather then trying to make a single scheduler strategy multi-threaded, but both have advantages and disadvantages.
---