Repository: kylin
Updated Branches:
  refs/heads/master 5b942267f -> 807395787


KYLIN-2716: remove non-thread-safe WeakHashMap for ClassUtil

Signed-off-by: Li Yang <liy...@apache.org>


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

Branch: refs/heads/master
Commit: bdb3a5fde7635ab3601abdaf6c2e2653ccd5ac60
Parents: 5b94226
Author: Zhong <nju_y...@apache.org>
Authored: Wed Aug 2 15:37:44 2017 +0800
Committer: Li Yang <liy...@apache.org>
Committed: Sun Aug 20 17:24:35 2017 +0800

----------------------------------------------------------------------
 .../java/org/apache/kylin/common/util/ClassUtil.java   | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/bdb3a5fd/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
----------------------------------------------------------------------
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java 
b/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
index 0eb1af5..a78cb48 100644
--- a/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
+++ b/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
@@ -27,7 +27,6 @@ import java.net.URLDecoder;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.WeakHashMap;
 
 import org.slf4j.LoggerFactory;
 
@@ -54,7 +53,6 @@ public class ClassUtil {
         }
     }
 
-    private static final WeakHashMap<String, Class<?>> forNameCache = new 
WeakHashMap<>();
     private static final Map<String, String> classRenameMap;
     static {
         classRenameMap = new HashMap<>();
@@ -71,15 +69,8 @@ public class ClassUtil {
 
     @SuppressWarnings("unchecked")
     public static <T> Class<? extends T> forName(String name, Class<T> clz) 
throws ClassNotFoundException {
-        String origName = name;
-
-        Class<? extends T> result = (Class<? extends T>) 
forNameCache.get(origName);
-        if (result == null) {
-            name = forRenamedClass(name);
-            result = (Class<? extends T>) Class.forName(name);
-            forNameCache.put(origName, result);
-        }
-        return result;
+        name = forRenamedClass(name);
+        return (Class<? extends T>) Class.forName(name);
     }
 
     private static String forRenamedClass(String name) {

Reply via email to