You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by "DashengJu (JIRA)" <ji...@apache.org> on 2014/06/13 08:04:02 UTC
[jira] [Created] (STORM-351) multilang python process fall into
endless loop
DashengJu created STORM-351:
-------------------------------
Summary: multilang python process fall into endless loop
Key: STORM-351
URL: https://issues.apache.org/jira/browse/STORM-351
Project: Apache Storm (Incubating)
Issue Type: Bug
Affects Versions: 0.9.3-incubating
Environment: storm 0.9.3-incubating
Reporter: DashengJu
Priority: Blocker
1. steps to reproduce
1) write a topology with a python bolt, run the topology on storm; then there will be two process for the bolt: the worker(java process for ShellBolt), python process.
2)kill -9 the worker(java process for ShellBolt);
2. expected behavior
the worker exit and the python process exist
3. actual, incorrect behavior
the worker exit, but the python process never exist and fall into endless loop
4. analyse
in storm.py,read tuple from stdin with follow function:
def readMsg():
msg = ""
while True:
line = sys.stdin.readline()[0:-1]
if line == "end":
break
msg = msg + line + "\n"
return json_decode(msg[0:-1])
when sys.stdin is closed, EOF is encountered, readline() return None, so readMsg fall into endless loop.
--
This message was sent by Atlassian JIRA
(v6.2#6252)