[ https://issues.apache.org/jira/browse/TWILL-240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16120612#comment-16120612 ]
ASF GitHub Bot commented on TWILL-240: -------------------------------------- Github user chtyim commented on a diff in the pull request: https://github.com/apache/twill/pull/58#discussion_r132297954 --- Diff: twill-yarn/src/main/java/org/apache/twill/internal/appmaster/RunningContainers.java --- @@ -401,6 +409,24 @@ void stopAll() { // When we acquire this lock, all stopped runnables should have been cleaned up by handleCompleted() method containerLock.lock(); try { + for (Map.Entry<String, Map<String, TwillContainerController>> entry : containers.rowMap().entrySet()) { + String runnableName = entry.getKey(); + Collection<ContainerInfo> containerInfos = containerStats.get(runnableName); + for (Map.Entry<String, TwillContainerController> containerControllerEntry : entry.getValue().entrySet()) { + boolean containerExist = false; + for (ContainerInfo containerInfo : containerInfos) { + if (containerInfo.getId().equals(containerControllerEntry.getKey())) { + containerExist = true; + break; + } + } + // Only call eventHandler.containerStopped if container is not removed by handleCompleted + if (containerExist) { + eventHandler.containerStopped(runnableName, containerControllerEntry.getValue().getInstanceId(), --- End diff -- you can move this inside the `for` loop and no need to use `containerExist`. > Improve EventHandler to handle more application lifecycle events > ---------------------------------------------------------------- > > Key: TWILL-240 > URL: https://issues.apache.org/jira/browse/TWILL-240 > Project: Apache Twill > Issue Type: New Feature > Reporter: Chengfeng Mao > Assignee: Chengfeng Mao > Fix For: 0.12.0 > > > Application Master should be able to run application specific code when > certain lifecycle events happen by calling methods from EventHandler. For > instance, when the app first starts, completes, aborts and etc. -- This message was sent by Atlassian JIRA (v6.4.14#64029)