[
https://issues.apache.org/jira/browse/YARN-2934?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14263911#comment-14263911
]
Naganarasimha G R commented on YARN-2934:
-----------------------------------------
Hi [~jira.shegalov],
Had a look at the code, As you mentioned each app is free to pump error stream
to any file and each app sends the command (as part of ContainerLaunchContext)
and sets the out and err file in it like "<LOG_DIR>"/stdout and
"<LOG_DIR>"/syserr. Later ContainerLaunch will take care of expanding the env
variables before writing it into a script file which is further read/utilized
by the container executors.
AFAIU, in the approach which you have suggested you are expecting apps to set
the stderr file in ContainerLaunchContext so that if there is any error then
the wrapper script (i.e. ContainerLaunchContext) of DefaultContainerExecutor
can cat it and error is captured by ShellExecutor. But this solves only for
DefaultContainerExecutor any thoughts for handling in the case of Linux
containerExecutor ?
> Improve handling of container's stderr
> ---------------------------------------
>
> Key: YARN-2934
> URL: https://issues.apache.org/jira/browse/YARN-2934
> Project: Hadoop YARN
> Issue Type: Improvement
> Reporter: Gera Shegalov
> Assignee: Naganarasimha G R
>
> Most YARN applications redirect stderr to some file. That's why when
> container launch fails with {{ExitCodeException}} the message is empty.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)