You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ji...@apache.org on 2016/08/22 20:46:32 UTC

[03/12] mesos git commit: Kept a single provisioning future in MesosContainerizer.

Kept a single provisioning future in MesosContainerizer.

Since we move the image volume provisioning code to an isolator, there
is no reason to keep a list of provisioning futures.

Review: https://reviews.apache.org/r/51162/


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/e006df1a
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/e006df1a
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/e006df1a

Branch: refs/heads/master
Commit: e006df1a0ecfcf9d8b8925be0cbf94aa48b434d2
Parents: 80676e6
Author: Jie Yu <yu...@gmail.com>
Authored: Mon Aug 22 13:00:14 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Mon Aug 22 13:00:14 2016 -0700

----------------------------------------------------------------------
 src/slave/containerizer/mesos/containerizer.cpp | 8 +++-----
 src/slave/containerizer/mesos/containerizer.hpp | 2 +-
 2 files changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/e006df1a/src/slave/containerizer/mesos/containerizer.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/containerizer.cpp b/src/slave/containerizer/mesos/containerizer.cpp
index fa9513f..6c2441a 100644
--- a/src/slave/containerizer/mesos/containerizer.cpp
+++ b/src/slave/containerizer/mesos/containerizer.cpp
@@ -841,13 +841,11 @@ Future<bool> MesosContainerizerProcess::launch(
                   lambda::_1));
   }
 
-  Future<ProvisionInfo> provisioning = provisioner->provision(
+  container->provisioning = provisioner->provision(
       containerId,
       containerImage.get());
 
-  container->provisionInfos.push_back(provisioning);
-
-  return provisioning
+  return container->provisioning
     .then(defer(self(),
                 [=](const ProvisionInfo& provisionInfo) -> Future<bool> {
       return prepare(containerId,
@@ -1557,7 +1555,7 @@ void MesosContainerizerProcess::destroy(
 
     // Wait for the provisioner to finish provisioning before we
     // start destroying the container.
-    await(container->provisionInfos)
+    container->provisioning
       .onAny(defer(
           self(),
           &Self::____destroy,

http://git-wip-us.apache.org/repos/asf/mesos/blob/e006df1a/src/slave/containerizer/mesos/containerizer.hpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/containerizer.hpp b/src/slave/containerizer/mesos/containerizer.hpp
index 041a62e..bfbae9d 100644
--- a/src/slave/containerizer/mesos/containerizer.hpp
+++ b/src/slave/containerizer/mesos/containerizer.hpp
@@ -305,7 +305,7 @@ private:
     // We keep track of the future that is waiting for the provisioner's
     // `ProvisionInfo`, so that destroy will only start calling
     // provisioner->destroy after provisioner->provision has finished.
-    std::list<process::Future<ProvisionInfo>> provisionInfos;
+    process::Future<ProvisionInfo> provisioning;
 
     // We keep track of the future that is waiting for all the
     // isolators' prepare futures, so that destroy will only start