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

xxyu pushed a commit to branch kylin5
in repository https://gitbox.apache.org/repos/asf/kylin.git

commit 4fb83dd59397dc1e5598ef6cfe03064830b6a2ee
Author: Liang.Hua <36814772+jacob...@users.noreply.github.com>
AuthorDate: Wed Jun 7 16:41:23 2023 +0800

    KYLIN-5711 fix query limit get metadata url bug when node type is query
    
    --------------
    Co-authored-by: liang.hua <liang....@kyligence.io>
---
 .../java/org/apache/kylin/rest/config/AppInitializer.java    |  1 +
 .../main/java/org/apache/kylin/common/KylinConfigBase.java   | 12 ++++++++++++
 .../java/org/apache/kylin/common/KylinConfigBaseTest.java    |  2 ++
 .../org/apache/kylin/metadata/state/JdbcShareStateStore.java |  2 +-
 4 files changed, 16 insertions(+), 1 deletion(-)

diff --git 
a/src/common-service/src/main/java/org/apache/kylin/rest/config/AppInitializer.java
 
b/src/common-service/src/main/java/org/apache/kylin/rest/config/AppInitializer.java
index 9f83f39451..e0dec7a413 100644
--- 
a/src/common-service/src/main/java/org/apache/kylin/rest/config/AppInitializer.java
+++ 
b/src/common-service/src/main/java/org/apache/kylin/rest/config/AppInitializer.java
@@ -125,6 +125,7 @@ public class AppInitializer {
             val epochStore = EpochStore.getEpochStore(kylinConfig);
             
kylinConfig.setQueryHistoryUrl(kylinConfig.getQueryHistoryUrl().toString());
             
kylinConfig.setStreamingStatsUrl(kylinConfig.getStreamingStatsUrl().toString());
+            
kylinConfig.setJdbcShareStateUrl(kylinConfig.getJdbcShareStateUrl().toString());
             if (kylinConfig.getMetadataStoreType().equals("hdfs")) {
                 kylinConfig.setProperty("kylin.metadata.url", 
kylinConfig.getMetadataUrlPrefix() + "@hdfs");
             }
diff --git 
a/src/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java 
b/src/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
index 6d6b945041..a683e66a59 100644
--- a/src/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
+++ b/src/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
@@ -117,6 +117,7 @@ public abstract class KylinConfigBase implements 
Serializable {
     public static final String POWER_BI_CONVERTER = 
"org.apache.kylin.query.util.PowerBIConverter";
     public static final String KYLIN_STREAMING_STATS_URL = 
"kylin.streaming.stats.url";
     public static final String KYLIN_QUERY_HISTORY_URL = 
"kylin.query.queryhistory.url";
+    public static final String KYLIN_JDBC_SHARE_STATE_URL = 
"kylin.jdbc.share.state.url";
     public static final String KYLIN_METADATA_DISTRIBUTED_LOCK_JDBC_URL = 
"kylin.metadata.distributed-lock.jdbc.url";
 
     private static final String METRICS = "_metrics/";
@@ -3968,4 +3969,15 @@ public abstract class KylinConfigBase implements 
Serializable {
     public String getKubernetesUploadPathKey() {
         return "kylin.engine.spark-conf.spark.kubernetes.file.upload.path";
     }
+
+    public StorageURL getJdbcShareStateUrl() {
+        if (StringUtils.isEmpty(getOptional(KYLIN_JDBC_SHARE_STATE_URL))) {
+            return getMetadataUrl();
+        }
+        return StorageURL.valueOf(getOptional(KYLIN_JDBC_SHARE_STATE_URL));
+    }
+
+    public void setJdbcShareStateUrl(String jdbcShareStateUrl) {
+        setProperty(KYLIN_JDBC_SHARE_STATE_URL, jdbcShareStateUrl);
+    }
 }
diff --git 
a/src/core-common/src/test/java/org/apache/kylin/common/KylinConfigBaseTest.java
 
b/src/core-common/src/test/java/org/apache/kylin/common/KylinConfigBaseTest.java
index 8727fb83d2..230f322e9f 100644
--- 
a/src/core-common/src/test/java/org/apache/kylin/common/KylinConfigBaseTest.java
+++ 
b/src/core-common/src/test/java/org/apache/kylin/common/KylinConfigBaseTest.java
@@ -1122,6 +1122,8 @@ class KylinConfigBaseTest {
         assertEquals(pgUrl, config.getStreamingStatsUrl().toString());
         config.setQueryHistoryUrl(pgUrl);
         assertEquals(pgUrl, config.getQueryHistoryUrl().toString());
+        config.setJdbcShareStateUrl(pgUrl);
+        assertEquals(pgUrl, config.getJdbcShareStateUrl().toString());
     }
 
     @Test
diff --git 
a/src/core-metadata/src/main/java/org/apache/kylin/metadata/state/JdbcShareStateStore.java
 
b/src/core-metadata/src/main/java/org/apache/kylin/metadata/state/JdbcShareStateStore.java
index 120d6fbd5d..f5889ec1f3 100644
--- 
a/src/core-metadata/src/main/java/org/apache/kylin/metadata/state/JdbcShareStateStore.java
+++ 
b/src/core-metadata/src/main/java/org/apache/kylin/metadata/state/JdbcShareStateStore.java
@@ -54,7 +54,7 @@ public class JdbcShareStateStore {
     }
 
     private JdbcShareStateStore() throws Exception {
-        StorageURL url = KylinConfig.getInstanceFromEnv().getMetadataUrl();
+        StorageURL url = 
KylinConfig.getInstanceFromEnv().getJdbcShareStateUrl();
         Properties props = JdbcUtil.datasourceParameters(url);
         dataSource = JdbcDataSource.getDataSource(props);
         ssTableName = StorageURL.replaceUrl(url) + "_" + "share_state";

Reply via email to