You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2015/07/20 09:04:43 UTC

[3/4] incubator-kylin git commit: KYLIN-898 clear "CUBOID_CACHE" in Cuboid.java

KYLIN-898 clear "CUBOID_CACHE" in Cuboid.java

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

Branch: refs/heads/0.8
Commit: 7b057e3e085bced76a660fba9bc0556f3d1e53e6
Parents: 2afbf3a
Author: shaofengshi <sh...@apache.org>
Authored: Mon Jul 20 15:03:47 2015 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Mon Jul 20 15:03:47 2015 +0800

----------------------------------------------------------------------
 .../org/apache/kylin/common/util/AbstractKylinTestCase.java  | 1 +
 cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java  | 8 ++++++++
 .../java/org/apache/kylin/rest/service/CacheService.java     | 4 ++++
 3 files changed, 13 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/7b057e3e/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java b/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
index c9e785a..b47816b 100644
--- a/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
+++ b/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
@@ -39,6 +39,7 @@ public abstract class AbstractKylinTestCase {
     public static final String[] SERVICES_WITH_CACHE = {//
     "org.apache.kylin.cube.CubeManager",//
             "org.apache.kylin.cube.CubeDescManager", //
+            "org.apache.kylin.cube.cuboid.Cuboid", //
             "org.apache.kylin.invertedindex.IIDescManager",//
             "org.apache.kylin.invertedindex.IIManager",//
             "org.apache.kylin.storage.hybrid.HybridManager",

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/7b057e3e/cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java
----------------------------------------------------------------------
diff --git a/cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java b/cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java
index 2dd147b..499ba28 100644
--- a/cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java
+++ b/cube/src/main/java/org/apache/kylin/cube/cuboid/Cuboid.java
@@ -292,6 +292,14 @@ public class Cuboid implements Comparable<Cuboid> {
         return requirePostAggregation;
     }
 
+    public static void clearCache() {
+        CUBOID_CACHE.clear();
+    }
+
+    public static void reloadCache(String cubeDescName) {
+        CUBOID_CACHE.remove(cubeDescName);
+    }
+
     @Override
     public String toString() {
         return "Cuboid [id=" + id + "]";

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/7b057e3e/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 9bc2f8c..1cf1fe0 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
@@ -25,6 +25,7 @@ import org.apache.kylin.common.restclient.Broadcaster;
 import org.apache.kylin.cube.CubeDescManager;
 import org.apache.kylin.cube.CubeInstance;
 import org.apache.kylin.cube.CubeManager;
+import org.apache.kylin.cube.cuboid.Cuboid;
 import org.apache.kylin.invertedindex.IIDescManager;
 import org.apache.kylin.invertedindex.IIManager;
 import org.apache.kylin.metadata.MetadataManager;
@@ -83,6 +84,7 @@ public class CacheService extends BasicService {
                     break;
                 case CUBE_DESC:
                     getCubeDescManager().reloadCubeDescLocal(cacheKey);
+                    Cuboid.reloadCache(cacheKey);
                     break;
                 case PROJECT:
                     ProjectInstance projectInstance = getProjectManager().reloadProjectLocal(cacheKey);
@@ -111,6 +113,7 @@ public class CacheService extends BasicService {
                     MetadataManager.clearCache();
                     CubeDescManager.clearCache();
                     CubeManager.clearCache();
+                    Cuboid.clearCache();
                     IIDescManager.clearCache();
                     IIManager.clearCache();
                     HybridManager.clearCache();
@@ -138,6 +141,7 @@ public class CacheService extends BasicService {
                     break;
                 case CUBE_DESC:
                     getCubeDescManager().removeLocalCubeDesc(cacheKey);
+                    Cuboid.reloadCache(cacheKey);
                     break;
                 case PROJECT:
                     ProjectManager.clearCache();