Github user HeartSaVioR commented on a diff in the pull request: https://github.com/apache/storm/pull/2551#discussion_r167094514 --- Diff: storm-client/src/jvm/org/apache/storm/grouping/LoadAwareShuffleGrouping.java --- @@ -85,6 +85,7 @@ public void prepare(WorkerTopologyContext context, GlobalStreamId stream, List<I sourceNodeInfo = new NodeInfo(context.getThisWorkerHost(), Sets.newHashSet((long) context.getThisWorkerPort())); taskToNodePort = context.getTaskToNodePort(); this.targetTasks = targetTasks; + capacity = targetTasks.size() == 1 ? 1 : Math.max(1000, targetTasks.size() * 5); --- End diff -- Please add tests which cover the case that task count is beyond 1000 to see if it still guarantees correct distribution with acceptable margin.
---