Added a TODO about a bug in MesosContainerizer. Review: https://reviews.apache.org/r/51390
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/a58adcf7 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/a58adcf7 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/a58adcf7 Branch: refs/heads/master Commit: a58adcf7a6a810f811e482ed3916d4fb4c75a91d Parents: e41d0f7 Author: Jie Yu <yujie....@gmail.com> Authored: Wed Aug 24 14:02:52 2016 -0700 Committer: Jie Yu <yujie....@gmail.com> Committed: Wed Aug 24 22:23:38 2016 -0700 ---------------------------------------------------------------------- src/slave/containerizer/mesos/containerizer.cpp | 7 +++++++ 1 file changed, 7 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/a58adcf7/src/slave/containerizer/mesos/containerizer.cpp ---------------------------------------------------------------------- diff --git a/src/slave/containerizer/mesos/containerizer.cpp b/src/slave/containerizer/mesos/containerizer.cpp index e8a9d6e..7a967dd 100644 --- a/src/slave/containerizer/mesos/containerizer.cpp +++ b/src/slave/containerizer/mesos/containerizer.cpp @@ -1616,6 +1616,13 @@ void MesosContainerizerProcess::destroy( container->state = DESTROYING; + // TODO(jieyu): It's likely that the launcher already forked the + // container. However, since we change the state to 'DESTROYING', + // the 'isolate()' will fail, causing the control pipes being + // closed. The container will terminate itself. However, we should + // wait for the container to terminate before we start to cleanup + // isolators. + // We need to wait for the isolators to finish preparing to // prevent a race that the destroy method calls the 'cleanup' // method of an isolator before the 'prepare' method is called.