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) {