hadoop-mapreduce-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From maha...@apache.org
Subject svn commit: r1136593 - in /hadoop/common/branches/MR-279/mapreduce: CHANGES.txt yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c
Date Thu, 16 Jun 2011 18:39:25 GMT
Author: mahadev
Date: Thu Jun 16 18:39:25 2011
New Revision: 1136593

URL: http://svn.apache.org/viewvc?rev=1136593&view=rev
Log:
Revert:  Fix race between multiple localizers on single node (chris douglas via mahadev)

Modified:
    hadoop/common/branches/MR-279/mapreduce/CHANGES.txt
    hadoop/common/branches/MR-279/mapreduce/yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c

Modified: hadoop/common/branches/MR-279/mapreduce/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/MR-279/mapreduce/CHANGES.txt?rev=1136593&r1=1136592&r2=1136593&view=diff
==============================================================================
--- hadoop/common/branches/MR-279/mapreduce/CHANGES.txt (original)
+++ hadoop/common/branches/MR-279/mapreduce/CHANGES.txt Thu Jun 16 18:39:25 2011
@@ -11,8 +11,6 @@ Trunk (unreleased changes)
 
     Hack until MAPREDUCE-2365 is fixed to make PIG work with MRV2. (mahadev)
 
-    Fix race between multiple localizers on single node (chris douglas via mahadev) 
-
     Bug fix to set correct state on containers so as to avoid duplicate
     containers from RM to AM. (vinodkv)
 

Modified: hadoop/common/branches/MR-279/mapreduce/yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c
URL: http://svn.apache.org/viewvc/hadoop/common/branches/MR-279/mapreduce/yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c?rev=1136593&r1=1136592&r2=1136593&view=diff
==============================================================================
--- hadoop/common/branches/MR-279/mapreduce/yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c
(original)
+++ hadoop/common/branches/MR-279/mapreduce/yarn/yarn-server/yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c
Thu Jun 16 18:39:25 2011
@@ -519,17 +519,30 @@ int create_directory_for_user(const char
   int ret = 0;
   ret = change_effective_user(tt_uid, tt_gid);
   if (ret == 0) {
-    if (0 == mkdir(path, permissions) || EEXIST == errno) {
+    if (mkdir(path, permissions) == 0) {
       // need to reassert the group sticky bit
       if (chmod(path, permissions) != 0) {
         fprintf(LOGFILE, "Can't chmod %s to add the sticky bit - %s\n",
                 path, strerror(errno));
         ret = -1;
       } else if (change_owner(path, user, tt_gid) != 0) {
-        fprintf(LOGFILE, "Failed to chown %s to %d:%d: %s\n", path, user, tt_gid,
-            strerror(errno));
         ret = -1;
       }
+    } else if (errno == EEXIST) {
+      struct stat file_stat;
+      if (stat(path, &file_stat) != 0) {
+        fprintf(LOGFILE, "Can't stat directory %s - %s\n", path, 
+                strerror(errno));
+        ret = -1;
+      } else {
+        if (file_stat.st_uid != user ||
+            file_stat.st_gid != tt_gid) {
+          fprintf(LOGFILE, "Directory %s owned by wrong user or group. "
+                  "Expected %d:%d and found %d:%d.\n",
+                  path, user, tt_gid, file_stat.st_uid, file_stat.st_gid);
+          ret = -1;
+        }
+      }
     } else {
       fprintf(LOGFILE, "Failed to create directory %s - %s\n", path,
               strerror(errno));



Mime
View raw message