streaming should accept stderr from task before first key arrives
-----------------------------------------------------------------
Key: HADOOP-3089
URL: https://issues.apache.org/jira/browse/HADOOP-3089
Project: Hadoop Core
Issue Type: Bug
Components: contrib/streaming
Affects Versions: 0.16.1, 0.16.0, 0.15.3, 0.15.2, 0.15.1, 0.15.0, 0.14.4,
0.14.3, 0.14.2, 0.14.1, 0.14.0
Reporter: Rick Cox
Assignee: Rick Cox
Fix For: 0.17.0
Stderr output from a streaming task is not collected until the
{{MRErrorThread}} is started by {{PipeMapRed.startOutputThreads()}}, which is
done on the first call to {{map()}} or {{reduce()}}.
This makes it difficult to debug failures in starting up the task process. It
can also lead to deadlock when a task receives no input keys but produces
significant stderr output: the process will block on writing to stderr, while
streaming will block waiting for the process to exit.
We should start the {{MRErrorThread}} when the process is forked, and then add
the {{reporter}} later to enable stderr output serve as a keep-alive.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.