From 06b5138b33c97cf8f0ddec2d1ba230746ea7a07c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E6=99=9F=20Wu=20Sheng?= Date: Thu, 8 Jun 2017 08:54:23 +0800 Subject: [PATCH] Create WitnessClassFinder.java Fix the wrong key of poolMap --- .../apm/agent/core/plugin/WitnessClassFinder.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/plugin/WitnessClassFinder.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/plugin/WitnessClassFinder.java index 8f28b0fa9..eccc0ca12 100644 --- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/plugin/WitnessClassFinder.java +++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/plugin/WitnessClassFinder.java @@ -1,7 +1,7 @@ package org.skywalking.apm.agent.core.plugin; import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; +import java.util.HashMap; import net.bytebuddy.pool.TypePool; /** @@ -14,7 +14,7 @@ import net.bytebuddy.pool.TypePool; public enum WitnessClassFinder { INSTANCE; - private Map poolMap = new ConcurrentHashMap(); + private Map poolMap = new HashMap(); /** * @param witnessClass @@ -23,9 +23,9 @@ public enum WitnessClassFinder { */ public boolean exist(String witnessClass, ClassLoader classLoader) { ClassLoader mappingKey = classLoader == null ? NullClassLoader.INSTANCE : classLoader; - if (!poolMap.containsKey(witnessClass)) { + if (!poolMap.containsKey(mappingKey)) { synchronized (poolMap) { - if (!poolMap.containsKey(witnessClass)) { + if (!poolMap.containsKey(mappingKey)) { TypePool classTypePool = classLoader == null ? TypePool.Default.ofClassPath() : TypePool.Default.of(classLoader); poolMap.put(mappingKey, classTypePool); }