[ https://issues.apache.org/jira/browse/STORM-733?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Re'em Bensimhon updated STORM-733: ---------------------------------- Description: In cases where a multilang bolt is stuck (say, an infinite loop), the heartbeats are supposed to detect the issue and kill the supervisor process. In 0.9.3 this doesn't happen due to backtype.storm.utils.ShellProcess.getErrorsString() call in ShellBolt.die() This call, which in turn executes IOUtils.toString(processErrorStream) will block the thread until process exits. Heartbeat flow should not assume process had exited. was: In cases where a multilang bolt is stuck (say, an infinite loop), the heartbeats are supposed to detect the issue and kill the supervisor process. In 0.9.3 this doesn't happen due to backtype.storm.utils.ShellProcess.getErrorsString() call in ShellBolt.die() This call, which in turn executes IOUtils.toString(processErrorStream) will block the thread until process exits. Heartbean flow should not assume process had exited. > ShellBolts that don't respond to heartbeats are not being killed > ---------------------------------------------------------------- > > Key: STORM-733 > URL: https://issues.apache.org/jira/browse/STORM-733 > Project: Apache Storm > Issue Type: Bug > Affects Versions: 0.9.3 > Reporter: Re'em Bensimhon > Assignee: Re'em Bensimhon > Priority: Critical > > In cases where a multilang bolt is stuck (say, an infinite loop), the > heartbeats are supposed to detect the issue and kill the supervisor process. > In 0.9.3 this doesn't happen due to > backtype.storm.utils.ShellProcess.getErrorsString() call in ShellBolt.die() > This call, which in turn executes IOUtils.toString(processErrorStream) will > block the thread until process exits. Heartbeat flow should not assume > process had exited. -- This message was sent by Atlassian JIRA (v6.3.4#6332)