You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by xx...@apache.org on 2020/11/08 08:13:04 UTC

[kylin] 04/13: Fix KYLIN_CONF

This is an automated email from the ASF dual-hosted git repository.

xxyu pushed a commit to branch kylin-on-parquet-v2
in repository https://gitbox.apache.org/repos/asf/kylin.git

commit 8a96a4b6986dd89d15fe6c6b5813f511a0e47a31
Author: XiaoxiangYu <xx...@apache.org>
AuthorDate: Mon Oct 19 20:10:05 2020 +0800

    Fix KYLIN_CONF
---
 .../org/apache/kylin/common/util/SourceConfigurationUtil.java  | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/core-common/src/main/java/org/apache/kylin/common/util/SourceConfigurationUtil.java b/core-common/src/main/java/org/apache/kylin/common/util/SourceConfigurationUtil.java
index 38171de..4645d2c 100644
--- a/core-common/src/main/java/org/apache/kylin/common/util/SourceConfigurationUtil.java
+++ b/core-common/src/main/java/org/apache/kylin/common/util/SourceConfigurationUtil.java
@@ -71,19 +71,25 @@ public class SourceConfigurationUtil {
 
     private static Map<String, String> loadXmlConfiguration(String filename, boolean checkExist) {
         Map<String, String> confProps = new HashMap<>();
-        File confFile;
+        File confFile = null;
         String xmlFileName = filename + ".xml";
         String path = System.getProperty(KylinConfig.KYLIN_CONF);
 
         if (StringUtils.isNotEmpty(path)) {
             confFile = new File(path, xmlFileName);
-        } else {
+            if (!confFile.exists() && path.contains("meta")) {
+                confFile = null;
+            }
+        }
+
+        if (confFile == null) {
             path = KylinConfig.getKylinHome();
             if (StringUtils.isEmpty(path)) {
                 logger.error("KYLIN_HOME is not set, can not locate conf: {}", xmlFileName);
                 return confProps;
             }
             confFile = new File(path + File.separator + "conf", xmlFileName);
+            System.setProperty(KylinConfig.KYLIN_CONF, path + File.separator + "conf");
         }
 
         if (!confFile.exists()) {