You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by lu...@apache.org on 2015/09/06 09:39:30 UTC

[24/50] [abbrv] incubator-kylin git commit: Don’t block cube build if couldn’t parse cube size from MR output

Don’t block cube build if couldn’t parse cube size from MR output

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

Branch: refs/heads/master
Commit: 4c3381b040138640df2e082db357218f1e8772d6
Parents: 5534ccc
Author: shaofengshi <sh...@apache.org>
Authored: Fri Aug 14 11:49:11 2015 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Fri Aug 14 11:49:11 2015 +0800

----------------------------------------------------------------------
 .../job/cube/UpdateCubeInfoAfterBuildStep.java  | 27 +++++++++++++-------
 1 file changed, 18 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/4c3381b0/job/src/main/java/org/apache/kylin/job/cube/UpdateCubeInfoAfterBuildStep.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/cube/UpdateCubeInfoAfterBuildStep.java b/job/src/main/java/org/apache/kylin/job/cube/UpdateCubeInfoAfterBuildStep.java
index cc2b4d4..6f8febe 100644
--- a/job/src/main/java/org/apache/kylin/job/cube/UpdateCubeInfoAfterBuildStep.java
+++ b/job/src/main/java/org/apache/kylin/job/cube/UpdateCubeInfoAfterBuildStep.java
@@ -18,8 +18,6 @@
 
 package org.apache.kylin.job.cube;
 
-import java.io.IOException;
-
 import org.apache.commons.lang.StringUtils;
 import org.apache.kylin.cube.CubeInstance;
 import org.apache.kylin.cube.CubeManager;
@@ -31,7 +29,7 @@ import org.apache.kylin.job.execution.ExecutableContext;
 import org.apache.kylin.job.execution.ExecuteResult;
 import org.apache.kylin.job.execution.Output;
 
-import com.google.common.base.Preconditions;
+import java.io.IOException;
 
 /**
  * Created by qianzhou on 1/4/15.
@@ -101,19 +99,30 @@ public class UpdateCubeInfoAfterBuildStep extends AbstractExecutable {
 
         Output baseCuboidOutput = executableManager.getOutput(getBaseCuboidStepId());
         String sourceRecordsCount = baseCuboidOutput.getExtra().get(ExecutableConstants.SOURCE_RECORDS_COUNT);
-        Preconditions.checkState(StringUtils.isNotEmpty(sourceRecordsCount), "Can't get cube source record count.");
-        long sourceCount = Long.parseLong(sourceRecordsCount);
+        long sourceCount = 0l;
+        if (StringUtils.isNotEmpty(sourceRecordsCount)) {
+            sourceCount = Long.parseLong(sourceRecordsCount);
+        } else {
+            logger.warn("Can not get cube source record count.");
+        }
 
+        long sourceSize = 0l;
         String sourceRecordsSize = baseCuboidOutput.getExtra().get(ExecutableConstants.SOURCE_RECORDS_SIZE);
-        Preconditions.checkState(StringUtils.isNotEmpty(sourceRecordsSize), "Can't get cube source record size.");
-        long sourceSize = Long.parseLong(sourceRecordsSize);
+        if (StringUtils.isNotEmpty(sourceRecordsSize)) {
+            sourceSize = Long.parseLong(sourceRecordsSize);
+        } else {
+            logger.warn("Can not get cube source record size.");
+        }
 
         long size = 0;
         boolean segmentReady = true;
         if (!StringUtils.isBlank(getConvertToHfileStepId())) {
             String cubeSizeString = executableManager.getOutput(getConvertToHfileStepId()).getExtra().get(ExecutableConstants.HDFS_BYTES_WRITTEN);
-            Preconditions.checkState(StringUtils.isNotEmpty(cubeSizeString), "Can't get cube segment size.");
-            size = Long.parseLong(cubeSizeString) / 1024;
+            if (StringUtils.isNotEmpty(cubeSizeString)) {
+                size = Long.parseLong(cubeSizeString) / 1024;
+            } else {
+                logger.warn("Can't get cube segment size.");
+            }
         } else {
             // for the increment & merge case, the increment segment is only built to be merged, won't serve query by itself
             segmentReady = false;