in data-orchestrator/workflow-engine/workflow-engine-worker/src/main/java/org/apache/airavata/datalake/workflow/engine/worker/Participant.java [255:274]
private void disconnect() {
logger.info("Shutting down participant. Currently available tasks " + runningTasks.size());
if (zkHelixManager != null) {
if (runningTasks.size() > 0) {
for (int i = 0; i <= shutdownGraceRetries; i++) {
logger.info("Shutting down gracefully [RETRY " + i + "]");
try {
Thread.sleep(shutdownGracePeriod);
} catch (InterruptedException e) {
logger.warn("Waiting for running tasks failed [RETRY " + i + "]", e);
}
if (runningTasks.size() == 0) {
break;
}
}
}
logger.info("Participant: " + participantName + ", has disconnected from cluster: " + clusterName);
zkHelixManager.disconnect();
}
}