You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by xy...@apache.org on 2018/05/09 17:41:04 UTC

[26/26] hadoop git commit: YARN-8261. Fixed a bug in creation of localized container directory. Contributed by Jason Lowe

YARN-8261.  Fixed a bug in creation of localized container directory.
            Contributed by Jason Lowe


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

Branch: refs/heads/HDDS-4
Commit: af4fc2e62805a5bd392214521a93650085b8d020
Parents: 343b51d
Author: Eric Yang <ey...@apache.org>
Authored: Wed May 9 13:32:51 2018 -0400
Committer: Eric Yang <ey...@apache.org>
Committed: Wed May 9 13:32:51 2018 -0400

----------------------------------------------------------------------
 .../linux/runtime/docker/DockerClient.java               | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/af4fc2e6/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/runtime/docker/DockerClient.java
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/runtime/docker/DockerClient.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/runtime/docker/DockerClient.java
index 7bd4546..dd49e15 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/runtime/docker/DockerClient.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/runtime/docker/DockerClient.java
@@ -110,7 +110,7 @@ public final class DockerClient {
     ApplicationId appId = containerId.getApplicationAttemptId()
         .getApplicationId();
     File dockerCommandFile;
-    String cmdDir = null;
+    File cmdDir = null;
 
     if(nmContext == null || nmContext.getLocalDirsHandler() == null) {
       throw new ContainerExecutionException(
@@ -118,12 +118,17 @@ public final class DockerClient {
     }
 
     try {
-      cmdDir = nmContext.getLocalDirsHandler().getLocalPathForWrite(
+      String cmdDirPath = nmContext.getLocalDirsHandler().getLocalPathForWrite(
           ResourceLocalizationService.NM_PRIVATE_DIR + Path.SEPARATOR +
           appId + Path.SEPARATOR + filePrefix + Path.SEPARATOR).toString();
+      cmdDir = new File(cmdDirPath);
+      if (!cmdDir.mkdirs() && !cmdDir.exists()) {
+        throw new IOException("Cannot create container private directory "
+            + cmdDir);
+      }
 
       dockerCommandFile = File.createTempFile(TMP_FILE_PREFIX + filePrefix,
-          TMP_FILE_SUFFIX, new File(cmdDir));
+          TMP_FILE_SUFFIX, cmdDir);
 
       Writer writer = new OutputStreamWriter(
           new FileOutputStream(dockerCommandFile.toString()), "UTF-8");


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org