KYLIN-1328 "UnsupportedOperationException" is thrown when remove a data model


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/573c84e6
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/573c84e6
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/573c84e6

Branch: refs/heads/2.x-staging
Commit: 573c84e612bc59f2da656d58475a708b2505cc6e
Parents: 4c2e57e
Author: shaofengshi <[email protected]>
Authored: Tue Jan 19 09:54:51 2016 +0800
Committer: shaofengshi <[email protected]>
Committed: Tue Jan 19 09:57:44 2016 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/metadata/MetadataManager.java   | 6 +++---
 .../main/java/org/apache/kylin/rest/service/CacheService.java  | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/573c84e6/core-metadata/src/main/java/org/apache/kylin/metadata/MetadataManager.java
----------------------------------------------------------------------
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/MetadataManager.java 
b/core-metadata/src/main/java/org/apache/kylin/metadata/MetadataManager.java
index d2caa35..80ee8b3 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/MetadataManager.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/MetadataManager.java
@@ -385,11 +385,11 @@ public class MetadataManager {
     }
 
     private void afterModelDropped(DataModelDesc desc) {
-        removeModelCache(desc);
+        removeModelCache(desc.getName());
     }
 
-    private void removeModelCache(DataModelDesc desc) {
-        dataModelDescMap.remove(desc.getName());
+    public void removeModelCache(String modelName) {
+        dataModelDescMap.remove(modelName);
     }
 
     public DataModelDesc createDataModelDesc(DataModelDesc desc, String 
projectName, String owner) throws IOException {

http://git-wip-us.apache.org/repos/asf/kylin/blob/573c84e6/server/src/main/java/org/apache/kylin/rest/service/CacheService.java
----------------------------------------------------------------------
diff --git 
a/server/src/main/java/org/apache/kylin/rest/service/CacheService.java 
b/server/src/main/java/org/apache/kylin/rest/service/CacheService.java
index c8bc941..27650b2 100644
--- a/server/src/main/java/org/apache/kylin/rest/service/CacheService.java
+++ b/server/src/main/java/org/apache/kylin/rest/service/CacheService.java
@@ -261,7 +261,7 @@ public class CacheService extends BasicService {
             case TABLE:
                 throw new UnsupportedOperationException(log);
             case DATA_MODEL:
-                throw new UnsupportedOperationException(log);
+                getMetadataManager().removeModelCache(cacheKey);
             default:
                 throw new RuntimeException("invalid cacheType:" + cacheType);
             }

Reply via email to