minor, handle cube desc being bad json cases

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

Branch: refs/heads/2.1.x
Commit: e164b4a3fac379e71b8effaa8922d95a2dca05d8
Parents: 7369ee3
Author: Hongbin Ma <mahong...@apache.org>
Authored: Mon Jul 31 21:57:59 2017 +0800
Committer: Hongbin Ma <mahong...@apache.org>
Committed: Mon Jul 31 22:00:50 2017 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/cube/CubeDescManager.java  | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/e164b4a3/core-cube/src/main/java/org/apache/kylin/cube/CubeDescManager.java
----------------------------------------------------------------------
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/CubeDescManager.java 
b/core-cube/src/main/java/org/apache/kylin/cube/CubeDescManager.java
index 2d44454..6635366 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/CubeDescManager.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/CubeDescManager.java
@@ -316,7 +316,13 @@ public class CubeDescManager {
         List<String> paths = 
store.collectResourceRecursively(ResourceStore.CUBE_DESC_RESOURCE_ROOT,
                 MetadataConstants.FILE_SURFIX);
         for (String path : paths) {
-            CubeDesc desc = loadCubeDesc(path, true);
+            CubeDesc desc = null;
+            try {
+                desc = loadCubeDesc(path, true);
+            } catch (Exception e) {
+                logger.error("Error during load cube desc, skipping " + path, 
e);
+                continue;
+            }
 
             if (!path.equals(desc.getResourcePath())) {
                 logger.error(
@@ -350,7 +356,7 @@ public class CubeDescManager {
             throw new IllegalArgumentException("CubeDesc '" + name + "' does 
not exist.");
         if (desc.isDraft())
             throw new IllegalArgumentException("CubeDesc '" + desc.getName() + 
"' must not be a draft");
-        
+
         try {
             desc.init(config);
         } catch (Exception e) {

Reply via email to