You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Till Toenshoff (JIRA)" <ji...@apache.org> on 2014/05/14 02:43:14 UTC

[jira] [Commented] (MESOS-1364) ExternalContainerizer 'recover' should destroy orphaned ContainerIDs

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

Till Toenshoff commented on MESOS-1364:
---------------------------------------

There are at least two possible ways to handle the specific {{destroy}} invocation that is needed for the above cases and I would like to draft those to get your input.

As of now, the {{destroy}} call within the ExternalContainerizerProcess expects a {{ContainerID}} to be among those that are covered by its internal states ( {{actives}} ). This is needed for things like providing a proper sandbox environment, as in redirecting {{stderr}} output to the correct output as identified in the {{launch}} call of that specific {{ContainerID}}. Clearly such sandbox can not be provided for orphaned containers. 

The alternatives I can see right now are:
(1) Never validate if a container is among the actives within the {{destroy}} call and always handle such call as a forceful destruction.
(2) Add a flag to the {{destroy}} parameters, allowing it to be enforced for the above case but not enforced (still using a sandbox) for all other cases.

Even though I have already implemented a patch according to (2), I now got to a stage where I think that we should always handle a destroy forcefully (hence according to (1) ).

> ExternalContainerizer 'recover' should destroy orphaned ContainerIDs
> --------------------------------------------------------------------
>
>                 Key: MESOS-1364
>                 URL: https://issues.apache.org/jira/browse/MESOS-1364
>             Project: Mesos
>          Issue Type: Bug
>    Affects Versions: 0.19.0
>            Reporter: Till Toenshoff
>            Assignee: Till Toenshoff
>              Labels: ExternalContainerizer
>
> Currently the EC does ignore any {{ContaineriID}} s that got returned by the ECP {{containers}} invocation but are not recoverable (e.g. missing slave state). Those should get killed by the EC invoking {{destroy}} for those {{ContainerID}} s on the ECP just like the LinuxLauncher does this in connection with the MesosContainerizer. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)