[
https://issues.apache.org/jira/browse/TWILL-240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16113161#comment-16113161
]
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_r131210237
--- Diff:
twill-yarn/src/main/java/org/apache/twill/internal/appmaster/ApplicationMasterService.java
---
@@ -291,6 +301,23 @@ public void run() {
// Since all the runnables are now stopped, it is okay to stop the
poller.
stopPoller.shutdownNow();
cleanupDir();
+ if (eventHandler != null) {
+ if (finalStatus == null) {
+ // if finalStatus is not set, the application must be stopped by a
SystemMessages#STOP_COMMAND
+ eventHandler.killed(twillRuntimeSpec.getTwillAppName(),
twillRuntimeSpec.getTwillAppRunId());
+ }
+ switch (finalStatus) {
+ case COMPLETED:
+ eventHandler.completed(twillRuntimeSpec.getTwillAppName(),
twillRuntimeSpec.getTwillAppRunId());
+ break;
+ case ABORTED:
+ eventHandler.aborted(twillRuntimeSpec.getTwillAppName(),
twillRuntimeSpec.getTwillAppRunId());
+ break;
+ default:
+ // should never reach here
+ LOG.error("Unsupported FinalStatus '%s'", finalStatus.name());
--- End diff --
That's not the right syntax. slf4j logger uses `{}`. Should be
`LOG.error("Unsupported status {}", finalStatus)`.
> 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
>
> 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)