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 e35d6a147aaf20a70d70f766398069f1d324c3d8
Author: DorrisRuixuanZhang <dorriszh...@hotmail.com>
AuthorDate: Tue Mar 21 10:47:13 2023 +0800

    KYLIN-5577 To fix the bug of checking upper case model alias
---
 .../java/org/apache/kylin/rest/service/FusionModelService.java | 10 ++++++++--
 .../org/apache/kylin/rest/service/FusionModelServiceTest.java  |  9 +++++----
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git 
a/src/modeling-service/src/main/java/org/apache/kylin/rest/service/FusionModelService.java
 
b/src/modeling-service/src/main/java/org/apache/kylin/rest/service/FusionModelService.java
index 5bea1e95e9..bce2acf180 100644
--- 
a/src/modeling-service/src/main/java/org/apache/kylin/rest/service/FusionModelService.java
+++ 
b/src/modeling-service/src/main/java/org/apache/kylin/rest/service/FusionModelService.java
@@ -20,6 +20,7 @@ package org.apache.kylin.rest.service;
 
 import java.util.List;
 import java.util.Locale;
+import java.util.Set;
 
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.kylin.common.KylinConfig;
@@ -253,7 +254,12 @@ public class FusionModelService extends 
AbstractModelService implements TableFus
     }
 
     public boolean modelExists(String modelAlias, String project) {
-        return getManager(NDataModelManager.class, project).listAllModelAlias()
-                .contains(modelAlias.toLowerCase(Locale.ROOT));
+        Set<String> allModelAlias = getManager(NDataModelManager.class, 
project).listAllModelAlias();
+        for (String alias : allModelAlias) {
+            if (alias.equalsIgnoreCase(modelAlias)) {
+                return true;
+            }
+        }
+        return false;
     }
 }
diff --git 
a/src/modeling-service/src/test/java/org/apache/kylin/rest/service/FusionModelServiceTest.java
 
b/src/modeling-service/src/test/java/org/apache/kylin/rest/service/FusionModelServiceTest.java
index 6b12926cf6..a2443f00f4 100644
--- 
a/src/modeling-service/src/test/java/org/apache/kylin/rest/service/FusionModelServiceTest.java
+++ 
b/src/modeling-service/src/test/java/org/apache/kylin/rest/service/FusionModelServiceTest.java
@@ -32,6 +32,8 @@ import 
org.apache.kylin.common.persistence.transaction.UnitOfWork;
 import org.apache.kylin.common.scheduler.EventBusFactory;
 import org.apache.kylin.common.util.JsonUtil;
 import org.apache.kylin.common.util.Pair;
+import org.apache.kylin.guava30.shaded.common.collect.Lists;
+import org.apache.kylin.guava30.shaded.common.collect.Sets;
 import org.apache.kylin.job.constant.JobStatusEnum;
 import org.apache.kylin.metadata.cube.model.IndexPlan;
 import org.apache.kylin.metadata.cube.model.NDataflowManager;
@@ -69,9 +71,6 @@ import 
org.springframework.security.authentication.TestingAuthenticationToken;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.test.util.ReflectionTestUtils;
 
-import org.apache.kylin.guava30.shaded.common.collect.Lists;
-import org.apache.kylin.guava30.shaded.common.collect.Sets;
-
 import lombok.val;
 import lombok.var;
 
@@ -466,6 +465,8 @@ public class FusionModelServiceTest extends SourceTestCase {
 
     @Test
     public void testModelExistsIgnoreCase() {
-        Assert.assertTrue(fusionModelService.modelExists("Stream_Merge1", 
"streaming_test"));
+        String project = "streaming_test";
+        Assert.assertTrue(fusionModelService.modelExists("Stream_Merge1", 
project));
+        
Assert.assertTrue(fusionModelService.modelExists("auto_model_p_lineorder_0", 
project));
     }
 }

Reply via email to