changeset 864:98657a5c5cb1

UP-1916 don't use lock per temp dir It seems like we didn't need such a concurrency anyway
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Wed, 27 Aug 2014 17:34:59 +0200
parents 11af75f9dc98
children 3d700493d033
files mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java
diffstat 1 files changed, 2 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java	Tue Aug 26 22:01:22 2014 +0200
+++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java	Wed Aug 27 17:34:59 2014 +0200
@@ -24,16 +24,14 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
 
 /**
  * @author dmitry.neverov
  */
 public final class HgFileUtil {
 
-  private final static ConcurrentMap<String, Object> myTmpDirLocks = new ConcurrentHashMap<String, Object>();
   private final static String TEMP_DIR_PREFIX = "hg";
+  private final static Object ourTmpDirLock = new Object();
 
   private HgFileUtil() {
   }
@@ -63,7 +61,7 @@
       if (dir.exists())
         continue;
 
-      synchronized (getTmpDirLock(tmpDirName)) {
+      synchronized (ourTmpDirLock) {
         try {
           if (!dir.createNewFile())
             continue;
@@ -82,13 +80,6 @@
     }
   }
 
-  @NotNull
-  private static Object getTmpDirLock(@NotNull final String tmpDirName) {
-    Object tmpDirLock = new Object();
-    Object existingLock = myTmpDirLocks.putIfAbsent(tmpDirName, tmpDirLock);
-    return existingLock != null ? existingLock : tmpDirLock;
-  }
-
 
   public static void deleteDir(@Nullable final File dir, @NotNull final Logger logger) {
     if (dir == null)