GitHub user HeartSaVioR opened a pull request:

    https://github.com/apache/storm/pull/286

    STORM-513 check heartbeat from multilang subprocess

    Related issue link : https://issues.apache.org/jira/browse/STORM-513
    
    It seems that ShellSpout and ShellBolt doesn't check subprocess, and set 
heartbeat with their only states.
    Subprocess could hang, but it doesn't affect ShellSpout / ShellBolt. It 
just stops working on tuple.
    It's better to check heartbeat from subprocess, and suicide if subprocess 
stops working.
    
    * Spout
      * ShellSpout sends "next" to subprocess continuously
      * subprocess sends "sync" to ShellSpout when "next" is received
      * so we can treat "sync", or any messages to heartbeat
    * Bolt
      * ShellBolt sends tuples to subprocess if it's available
      * so we need to send "heartbeat" tuple
       * subprocess sends "sync" to ShellBolt when "heartbeat" tuple is received

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/HeartSaVioR/storm STORM-513

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/storm/pull/286.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #286
    
----
commit ca5874cdf11af8d835335d228b643f28aeb3f9c3
Author: Jungtaek Lim <[email protected]>
Date:   2014-10-08T13:48:01Z

    STORM-513 check heartbeat from multilang subprocess
    
    * Spout
    ** ShellSpout sends "next" to subprocess continuously
    ** subprocess sends "sync" to ShellSpout when "next" is received
    ** so we can treat "sync", or any messages to heartbeat
    * Bolt
    ** ShellBolt sends tuples to subprocess if it's available
    ** so we need to send "heartbeat" tuple
    ** subprocess sends "sync" to ShellBolt when "heartbeat" tuple is
    received

commit 1a0d4bdd735ba0ade42f6777a4c47affec931557
Author: Jungtaek Lim <[email protected]>
Date:   2014-10-08T14:06:24Z

    Fix mixed tab / space, remove FIXME

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to