[ 
https://issues.apache.org/jira/browse/TWILL-116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14596622#comment-14596622
 ] 

Terence Yim commented on TWILL-116:
-----------------------------------

I have couple comments about the proposal.

1. I think the introduction of the new RunnableStateCommand class into api is 
unnecessary. It seems the main purpose is to introduce the callback object, 
right? I think it's better for the setRunnableState(s) methods to return 
Future(s), which is more friendly to use for one off change (callback is good 
for recurring events).
2. The doc mentions a history service for state changes history. Where does the 
AM stores the history? Is it in-memory or persisted? Is there any bound to the 
number of history records being kept?
3. Why the getXXXHistory methods return a {{List<Object>}}? Is there a more 
specific type for the values in the list?
4. The doc mentions that the AM will proxy the message to runnable(s), does it 
means through the ZK message mechanism as well? What if the Runnable process is 
not responding (e.g. it has OOM error, which the operator want to kill and 
restart the process)? Would it be better for the AM communicates with the NM to 
ask for termination of container(s) instead?
5. The new setRunnableState(s) APIs only take runnable name. However, how to 
kill a particular instance of a runnable? Or does it require stopping all 
instances of a given runnable?

> Support for start/stop/restart of a runnable in an application
> --------------------------------------------------------------
>
>                 Key: TWILL-116
>                 URL: https://issues.apache.org/jira/browse/TWILL-116
>             Project: Apache Twill
>          Issue Type: New Feature
>          Components: core
>            Reporter: Albert Shau
>            Assignee: Henry Saputra
>             Fix For: 0.6.0-incubating
>
>         Attachments: TWILL-116-design.pdf
>
>
> Once an application is running, it would be good to be able to stop, start, 
> and restart a specific runnable of the application without affecting other 
> runnables.  
> For example, I may be running multiple services in a single application, with 
> each service as a different runnable. One of my services gets into an invalid 
> state. I now want to restart just that runnable and not the other ones that 
> are running properly.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to