[ https://issues.apache.org/jira/browse/STORM-532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14174941#comment-14174941 ]
ASF GitHub Bot commented on STORM-532: -------------------------------------- Github user itaifrenkel commented on a diff in the pull request: https://github.com/apache/storm/pull/296#discussion_r19012098 --- Diff: storm-core/src/clj/backtype/storm/util.clj --- @@ -372,6 +372,13 @@ (throw (RuntimeException. (str "Got unexpected process name: " name)))) (first split))) +(defn exists-process? + [process-id] + (if on-windows? + (exec-command! ( str "tasklist /v /fi \"PID eq " process-id + "\"" " | find /i \"" process-id "\"")) --- End diff -- On windows it's not that simple. See my SO post here: http://stackoverflow.com/a/26423642/985297 > Supervisor should restart worker immediately, if the worker process does not > exist any more > -------------------------------------------------------------------------------------------- > > Key: STORM-532 > URL: https://issues.apache.org/jira/browse/STORM-532 > Project: Apache Storm > Issue Type: Improvement > Affects Versions: 0.10.0 > Reporter: caofangkun > Priority: Minor > > For now > if the worker process does not exist any more > Supervisor will have to wait a few seconds for worker heartbeart timeout and > restart worker . > If supervisor knows the worker processid and check if the process exists in > the sync-processes thread ,may need less time to restart worker. > 1: record worker process id in the worker local heartbeart > 2: in supervisor sync-processes ,get process id from worker local heartbeat > and check if the process exits > 3: if not restart it immediately -- This message was sent by Atlassian JIRA (v6.3.4#6332)