Prefer `at` to `[]` for read-only access to container structs.

This was pulled out as an independent sweep from
https://reviews.apache.org/r/52056/


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

Branch: refs/heads/master
Commit: f73f55c7219f0cf3bb8a0dc0c106a32ac49b4ad5
Parents: 5bffa49
Author: Benjamin Mahler <bmah...@apache.org>
Authored: Wed Sep 21 15:12:53 2016 -0700
Committer: Benjamin Mahler <bmah...@apache.org>
Committed: Wed Sep 21 15:55:01 2016 -0700

----------------------------------------------------------------------
 src/slave/containerizer/docker.cpp              | 42 ++++++++++----------
 src/slave/containerizer/mesos/containerizer.cpp | 42 ++++++++++----------
 2 files changed, 42 insertions(+), 42 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/f73f55c7/src/slave/containerizer/docker.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/docker.cpp 
b/src/slave/containerizer/docker.cpp
index 2e02943..27a49a2 100644
--- a/src/slave/containerizer/docker.cpp
+++ b/src/slave/containerizer/docker.cpp
@@ -387,7 +387,7 @@ Future<Nothing> DockerContainerizerProcess::fetch(
     const SlaveID& slaveId)
 {
   CHECK(containers_.contains(containerId));
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   return fetcher->fetch(
       containerId,
@@ -406,7 +406,7 @@ Future<Nothing> DockerContainerizerProcess::pull(
     return Failure("Container is already destroyed");
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
   container->state = Container::PULLING;
 
   string image = container->image();
@@ -416,7 +416,7 @@ Future<Nothing> DockerContainerizerProcess::pull(
     image,
     container->forcePullImage());
 
-  containers_[containerId]->pull = future;
+  containers_.at(containerId)->pull = future;
 
   return future.then(defer(self(), [=]() {
     VLOG(1) << "Docker pull " << image << " completed";
@@ -558,7 +558,7 @@ Future<Nothing> 
DockerContainerizerProcess::mountPersistentVolumes(
     return Failure("Container is already destroyed");
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
   container->state = Container::MOUNTING;
 
   if (container->task.isNone() &&
@@ -635,7 +635,7 @@ Try<Nothing> DockerContainerizerProcess::checkpoint(
 {
   CHECK(containers_.contains(containerId));
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   container->executorPid = pid;
 
@@ -1037,7 +1037,7 @@ Future<bool> DockerContainerizerProcess::launch(
           return Failure("Container is already destroyed");
         }
 
-        Container* container = containers_[containerId];
+        Container* container = containers_.at(containerId);
 
         if (taskInfo.isSome()) {
           // The built-in command executors explicitly support passing
@@ -1086,7 +1086,7 @@ Future<bool> DockerContainerizerProcess::_launch(
     return Failure("Container is already destroyed");
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   if (HookManager::hooksAvailable()) {
     HookManager::slavePreLaunchDockerHook(
@@ -1182,7 +1182,7 @@ Future<Docker::Container> 
DockerContainerizerProcess::launchExecutorContainer(
     return Failure("Container is already destroyed");
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
   container->state = Container::RUNNING;
 
   return logger->prepare(container->executor, container->directory)
@@ -1255,7 +1255,7 @@ Future<pid_t> 
DockerContainerizerProcess::launchExecutorProcess(
     return Failure("Container is already destroyed");
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
   container->state = Container::RUNNING;
 
   // Prepare environment variables for the executor.
@@ -1380,7 +1380,7 @@ Future<bool> DockerContainerizerProcess::reapExecutor(
   // after we set 'status', which we do in this function.
   CHECK(containers_.contains(containerId));
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   // And finally watch for when the container gets reaped.
   container->status.set(process::reap(pid));
@@ -1404,7 +1404,7 @@ Future<Nothing> DockerContainerizerProcess::update(
     return Nothing();
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   if (container->state == Container::DESTROYING)  {
     LOG(INFO) << "Ignoring updating container " << containerId
@@ -1436,7 +1436,7 @@ Future<Nothing> DockerContainerizerProcess::update(
     return __update(containerId, _resources, container->pid.get());
   }
 
-  return docker->inspect(containers_[containerId]->name())
+  return docker->inspect(containers_.at(containerId)->name())
     .then(defer(self(), &Self::_update, containerId, _resources, lambda::_1));
 #else
   return Nothing();
@@ -1459,7 +1459,7 @@ Future<Nothing> DockerContainerizerProcess::_update(
     return Nothing();
   }
 
-  containers_[containerId]->pid = container.pid.get();
+  containers_.at(containerId)->pid = container.pid.get();
 
   return __update(containerId, _resources, container.pid.get());
 }
@@ -1637,7 +1637,7 @@ Future<ResourceStatistics> 
DockerContainerizerProcess::usage(
     return Failure("Unknown container: " + stringify(containerId));
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   if (container->state == Container::DESTROYING) {
     return Failure("Container is being removed: " + stringify(containerId));
@@ -1650,7 +1650,7 @@ Future<ResourceStatistics> 
DockerContainerizerProcess::usage(
       return Failure("Container has been destroyed: " + 
stringify(containerId));
     }
 
-    Container* container = containers_[containerId];
+    Container* container = containers_.at(containerId);
 
     if (container->state == Container::DESTROYING) {
       return Failure("Container is being removed: " + stringify(containerId));
@@ -1698,7 +1698,7 @@ Future<ResourceStatistics> 
DockerContainerizerProcess::usage(
             "Container has been destroyed:" + stringify(containerId));
         }
 
-        Container* container = containers_[containerId];
+        Container* container = containers_.at(containerId);
 
         // Update the container's pid now. We ran inspect because we didn't 
have
         // a pid for the container.
@@ -1805,7 +1805,7 @@ void DockerContainerizerProcess::destroy(
     return;
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   if (container->launch.isFailed()) {
     VLOG(1) << "Container " << containerId << " launch failed";
@@ -1944,7 +1944,7 @@ void DockerContainerizerProcess::_destroy(
 {
   CHECK(containers_.contains(containerId));
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   CHECK(container->state == Container::DESTROYING);
 
@@ -1981,7 +1981,7 @@ void DockerContainerizerProcess::__destroy(
 {
   CHECK(containers_.contains(containerId));
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   if (!kill.isReady() && !container->status.future().isReady()) {
     // TODO(benh): This means we've failed to do a Docker::kill, which
@@ -2032,7 +2032,7 @@ void DockerContainerizerProcess::___destroy(
                  << " container " << containerId << ": " << unmount.error();
   }
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   ContainerTermination termination;
 
@@ -2066,7 +2066,7 @@ Future<Nothing> 
DockerContainerizerProcess::destroyTimeout(
 
   LOG(WARNING) << "Docker stop timed out for container " << containerId;
 
-  Container* container = containers_[containerId];
+  Container* container = containers_.at(containerId);
 
   // A hanging `docker stop` could be a problem with docker or even a kernel
   // bug. Assuming that this is a docker problem, circumventing docker and

http://git-wip-us.apache.org/repos/asf/mesos/blob/f73f55c7/src/slave/containerizer/mesos/containerizer.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/containerizer.cpp 
b/src/slave/containerizer/mesos/containerizer.cpp
index 01acd70..a6f0d79 100644
--- a/src/slave/containerizer/mesos/containerizer.cpp
+++ b/src/slave/containerizer/mesos/containerizer.cpp
@@ -938,7 +938,7 @@ Future<Nothing> MesosContainerizerProcess::prepare(
     return Failure("Container destroyed during provisioning");
   }
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   // Make sure containerizer is not in DESTROYING state, to avoid
   // a possible race that containerizer is destroying the container
@@ -1004,7 +1004,7 @@ Future<Nothing> MesosContainerizerProcess::fetch(
     return Failure("Container destroyed during isolating");
   }
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   if (container->state == DESTROYING) {
     return Failure("Container is being destroyed during isolating");
@@ -1047,7 +1047,7 @@ Future<bool> MesosContainerizerProcess::_launch(
     return Failure("Container destroyed during preparing");
   }
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   if (container->state == DESTROYING) {
     return Failure("Container is being destroyed during preparing");
@@ -1176,11 +1176,11 @@ Future<bool> MesosContainerizerProcess::_launch(
       return Failure("Container destroyed during preparing");
     }
 
-    if (containers_[containerId]->state == DESTROYING) {
+    if (containers_.at(containerId)->state == DESTROYING) {
       return Failure("Container is being destroyed during preparing");
     }
 
-    const Owned<Container>& container = containers_[containerId];
+    const Owned<Container>& container = containers_.at(containerId);
 
     // Use a pipe to block the child until it's been isolated.
     // The `pipes` array is captured later in a lambda.
@@ -1322,13 +1322,13 @@ Future<bool> MesosContainerizerProcess::isolate(
     return Failure("Container destroyed during preparing");
   }
 
-  if (containers_[containerId]->state == DESTROYING) {
+  if (containers_.at(containerId)->state == DESTROYING) {
     return Failure("Container is being destroyed during preparing");
   }
 
-  CHECK_EQ(containers_[containerId]->state, PREPARING);
+  CHECK_EQ(containers_.at(containerId)->state, PREPARING);
 
-  containers_[containerId]->state = ISOLATING;
+  containers_.at(containerId)->state = ISOLATING;
 
   // Set up callbacks for isolator limitations.
   foreach (const Owned<Isolator>& isolator, isolators) {
@@ -1348,7 +1348,7 @@ Future<bool> MesosContainerizerProcess::isolate(
   // Wait for all isolators to complete.
   Future<list<Nothing>> future = collect(futures);
 
-  containers_[containerId]->isolation = future;
+  containers_.at(containerId)->isolation = future;
 
   return future.then([]() { return true; });
 }
@@ -1364,11 +1364,11 @@ Future<bool> MesosContainerizerProcess::exec(
     return Failure("Container destroyed during fetching");
   }
 
-  if (containers_[containerId]->state == DESTROYING) {
+  if (containers_.at(containerId)->state == DESTROYING) {
     return Failure("Container is being destroyed during fetching");
   }
 
-  CHECK_EQ(containers_[containerId]->state, FETCHING);
+  CHECK_EQ(containers_.at(containerId)->state, FETCHING);
 
   // Now that we've contained the child we can signal it to continue
   // by writing to the pipe.
@@ -1382,7 +1382,7 @@ Future<bool> MesosContainerizerProcess::exec(
                    os::strerror(errno));
   }
 
-  containers_[containerId]->state = RUNNING;
+  containers_.at(containerId)->state = RUNNING;
 
   return true;
 }
@@ -1429,7 +1429,7 @@ Future<Nothing> MesosContainerizerProcess::update(
     return Nothing();
   }
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   if (container->state == DESTROYING) {
     LOG(WARNING) << "Ignoring update for currently being destroyed "
@@ -1517,7 +1517,7 @@ Future<ResourceStatistics> 
MesosContainerizerProcess::usage(
     .then(lambda::bind(
           _usage,
           containerId,
-          containers_[containerId]->resources,
+          containers_.at(containerId)->resources,
           lambda::_1));
 }
 
@@ -1567,7 +1567,7 @@ Future<ContainerStatus> MesosContainerizerProcess::status(
   // MESOS-4671 for more details.
   VLOG(2) << "Serializing status request for container " << containerId;
 
-  return containers_[containerId]->sequence.add<ContainerStatus>(
+  return containers_.at(containerId)->sequence.add<ContainerStatus>(
       [=]() -> Future<ContainerStatus> {
         return await(futures)
           .then(lambda::bind(_status, containerId, lambda::_1));
@@ -1597,7 +1597,7 @@ void MesosContainerizerProcess::destroy(
     return;
   }
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   if (container->state == DESTROYING) {
     VLOG(1) << "Destroy has already been initiated for " << containerId;
@@ -1690,7 +1690,7 @@ void MesosContainerizerProcess::__destroy(
 {
   CHECK(containers_.contains(containerId));
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   // Something has gone wrong and the launcher wasn't able to kill all
   // the processes in the container. We cannot clean up the isolators
@@ -1738,7 +1738,7 @@ void MesosContainerizerProcess::____destroy(
   CHECK_READY(cleanups);
   CHECK(containers_.contains(containerId));
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   // Check cleanup succeeded for all isolators. If not, we'll fail the
   // container termination and remove the container from the map.
@@ -1774,7 +1774,7 @@ void MesosContainerizerProcess::_____destroy(
 {
   CHECK(containers_.contains(containerId));
 
-  const Owned<Container>& container = containers_[containerId];
+  const Owned<Container>& container = containers_.at(containerId);
 
   if (!destroy.isReady()) {
     container->promise.fail(
@@ -1840,7 +1840,7 @@ void MesosContainerizerProcess::limited(
     const Future<ContainerLimitation>& future)
 {
   if (!containers_.contains(containerId) ||
-      containers_[containerId]->state == DESTROYING) {
+      containers_.at(containerId)->state == DESTROYING) {
     return;
   }
 
@@ -1849,7 +1849,7 @@ void MesosContainerizerProcess::limited(
               << " resource " << future.get().resources()
               << " and will be terminated";
 
-    containers_[containerId]->limitations.push_back(future.get());
+    containers_.at(containerId)->limitations.push_back(future.get());
   } else {
     // TODO(idownes): A discarded future will not be an error when
     // isolators discard their promises after cleanup.

Reply via email to