Set<Entry<Integer, LocalAssignment>> reassignTasksEntrySet = reassignTasks
.entrySet();
for (Entry<Integer, LocalAssignment> entry : reassignTasksEntrySet) {
Integer port = entry.getKey();
LocalAssignment assignment = entry.getValue();
String workerId = newWorkerIds.get(port);
StringBuilder sb = new StringBuilder();
sb.append("Launching worker with assiangment ");
sb.append(assignment.toString());
sb.append(" for the supervisor ");
sb.append(supervisorId);
sb.append(" on port ");
sb.append(port);
sb.append(" with id ");
sb.append(workerId);
LOG.info(sb);
try {
String clusterMode = StormConfig.cluster_mode(conf);
if (clusterMode.equals("distributed")) {
launchWorker(conf, sharedContext,
assignment.getTopologyId(), supervisorId, port,
workerId);
} else if (clusterMode.equals("local")) {
// in fact, this is no use
launchWorker(conf, sharedContext,
assignment.getTopologyId(), supervisorId, port,
workerId, workerThreadPids);
}
} catch (Exception e) {
String errorMsg = "Failed to launchWorker workerId:"
+ workerId + ":" + port;