You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-commits@hadoop.apache.org by vi...@apache.org on 2011/12/10 00:16:16 UTC

svn commit: r1212680 - in /hadoop/common/trunk/hadoop-mapreduce-project: CHANGES.txt hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java

Author: vinodkv
Date: Fri Dec  9 23:16:15 2011
New Revision: 1212680

URL: http://svn.apache.org/viewvc?rev=1212680&view=rev
Log:
MAPREDUCE-3519. Fixed a deadlock in NodeManager LocalDirectories's handling service. Contributed by Ravi Gummadi.    

Modified:
    hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt
    hadoop/common/trunk/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java

Modified: hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt?rev=1212680&r1=1212679&r2=1212680&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt Fri Dec  9 23:16:15 2011
@@ -258,6 +258,9 @@ Release 0.23.1 - Unreleased
     MAPREDUCE-3513. Capacity Scheduler web UI has a spelling mistake for Memory.
     (chackaravarthy via mahadev)
 
+    MAPREDUCE-3519. Fixed a deadlock in NodeManager LocalDirectories's handling
+    service. (Ravi Gummadi via vinodkv)
+
 Release 0.23.0 - 2011-11-01 
 
   INCOMPATIBLE CHANGES

Modified: hadoop/common/trunk/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java?rev=1212680&r1=1212679&r2=1212680&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java (original)
+++ hadoop/common/trunk/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java Fri Dec  9 23:16:15 2011
@@ -249,49 +249,27 @@ public class LocalDirsHandlerService ext
     conf.setStrings(YarnConfiguration.NM_LOCAL_DIRS,
                     localDirs.toArray(new String[localDirs.size()]));
     List<String> logDirs = getLogDirs();
-    synchronized(conf) {
-      conf.setStrings(YarnConfiguration.NM_LOG_DIRS,
+    conf.setStrings(YarnConfiguration.NM_LOG_DIRS,
                       logDirs.toArray(new String[logDirs.size()]));
-    }
   }
 
   public Path getLocalPathForWrite(String pathStr) throws IOException {
-    Configuration conf = getConfig();
-    Path path = null;
-    synchronized (conf) {
-      path = localDirsAllocator.getLocalPathForWrite(pathStr, conf);
-    }
-    return path;
+    return localDirsAllocator.getLocalPathForWrite(pathStr, getConfig());
   }
 
   public Path getLocalPathForWrite(String pathStr, long size,
       boolean checkWrite) throws IOException {
-    Configuration conf = getConfig();
-    Path path = null;
-    synchronized (conf) {
-      path = localDirsAllocator.getLocalPathForWrite(pathStr, size, conf,
-                                                     checkWrite);
-    }
-    return path;
+    return localDirsAllocator.getLocalPathForWrite(pathStr, size, getConfig(),
+                                                   checkWrite);
   }
 
   public Path getLogPathForWrite(String pathStr, boolean checkWrite)
       throws IOException {
-    Configuration conf = getConfig();
-    Path path = null;
-    synchronized (conf) {
-      path = logDirsAllocator.getLocalPathForWrite(pathStr,
-        LocalDirAllocator.SIZE_UNKNOWN, conf, checkWrite);
-    }
-    return path;
+    return logDirsAllocator.getLocalPathForWrite(pathStr,
+        LocalDirAllocator.SIZE_UNKNOWN, getConfig(), checkWrite);
   }
 
   public Path getLogPathToRead(String pathStr) throws IOException {
-    Configuration conf = getConfig();
-    Path path = null;
-    synchronized (conf) {
-      path = logDirsAllocator.getLocalPathToRead(pathStr, conf);
-    }
-    return path;
+    return logDirsAllocator.getLocalPathToRead(pathStr, getConfig());
   }
 }