You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2017/06/29 05:48:47 UTC
[40/50] kylin git commit: minor, fix thread local KylinConfig bug
minor, fix thread local KylinConfig bug
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/0f8c21ba
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/0f8c21ba
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/0f8c21ba
Branch: refs/heads/master
Commit: 0f8c21ba350afee829a5e847d234705d8b2ef559
Parents: 81ff9a4
Author: Hongbin Ma <ma...@apache.org>
Authored: Sun Jun 25 17:03:16 2017 +0800
Committer: Dong Li <li...@apache.org>
Committed: Sun Jun 25 17:17:49 2017 +0800
----------------------------------------------------------------------
.../src/main/java/org/apache/kylin/common/KylinConfig.java | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/0f8c21ba/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
----------------------------------------------------------------------
diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
index 0f77096..1298807 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
@@ -57,7 +57,7 @@ public class KylinConfig extends KylinConfigBase {
private static KylinConfig SYS_ENV_INSTANCE = null;
// thread-local instances, will override SYS_ENV_INSTANCE
- private static final transient ThreadLocal<KylinConfig> THREAD_ENV_INSTANCE = new ThreadLocal<>();
+ private static transient ThreadLocal<KylinConfig> THREAD_ENV_INSTANCE = new ThreadLocal<>();
public static KylinConfig getInstanceFromEnv() {
synchronized (KylinConfig.class) {
@@ -88,7 +88,7 @@ public class KylinConfig extends KylinConfigBase {
logger.info("Destroy KylinConfig");
dumpStackTrace();
SYS_ENV_INSTANCE = null;
- THREAD_ENV_INSTANCE.remove();
+ THREAD_ENV_INSTANCE = new ThreadLocal<>();
}
}
@@ -197,6 +197,10 @@ public class KylinConfig extends KylinConfigBase {
public static void setKylinConfigThreadLocal(KylinConfig config) {
THREAD_ENV_INSTANCE.set(config);
}
+
+ public static void removeKylinConfigThreadLocal() {
+ THREAD_ENV_INSTANCE.remove();
+ }
public static KylinConfig createKylinConfig(String propsInStr) throws IOException {
Properties props = new Properties();