You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Yan Xu (JIRA)" <ji...@apache.org> on 2016/09/29 04:42:20 UTC

[jira] [Commented] (MESOS-6271) The container logger should be responsible for making sure stdout/stderr are writable by the task

    [ https://issues.apache.org/jira/browse/MESOS-6271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15531770#comment-15531770 ] 

Yan Xu commented on MESOS-6271:
-------------------------------

See https://reviews.apache.org/r/52058/ for some discussions on the approach but basically it would involve passing the task {{user}} information into {{ContainerLogger::prepare()}} and pass the result {{SubprocessInfo}} to the fetcher. The default {{SandboxContainerLogger}} should create and chown the files to the {{user}}.

> The container logger should be responsible for making sure stdout/stderr are writable by the task
> -------------------------------------------------------------------------------------------------
>
>                 Key: MESOS-6271
>                 URL: https://issues.apache.org/jira/browse/MESOS-6271
>             Project: Mesos
>          Issue Type: Improvement
>    Affects Versions: 1.0.0
>            Reporter: Yan Xu
>
> Today the container logger prepares the stdout/stderr for the executor but the not the fetcher. The fetcher creates separate files (location hardcoded, with O_TRUNC!) for its own stdout/stderr. The fetcher also does a recursive chown (which has unintended side-effects and is being fixed in MESOS-5218) but it is not even executed if the task doesn't fetch anything (e.g., with a command executor). As a result by the time the executor needs to write to its stdout/stderr, the files may belong to the task user or the agent user and its by coincidence it doesn't fail more widely.
> The fetcher should use the stderr/stdout prepared by the container logger and the container logger should be responsible for making it writable by the task user.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)