You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ni...@apache.org on 2019/11/29 07:59:58 UTC
[kylin] branch master updated: KYLIN-4203 Disable a real time cube
and then enable it , this cube may can't submit build job anymore
This is an automated email from the ASF dual-hosted git repository.
nic pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kylin.git
The following commit(s) were added to refs/heads/master by this push:
new daffe23 KYLIN-4203 Disable a real time cube and then enable it ,this cube may can't submit build job anymore
daffe23 is described below
commit daffe23510f252e7efc0bd60b8cbb79af57fd214
Author: wangxiaojing <wa...@didichuxing.com>
AuthorDate: Fri Oct 25 18:27:48 2019 +0800
KYLIN-4203 Disable a real time cube and then enable it ,this cube may can't submit build job anymore
---
.../main/java/org/apache/kylin/rest/service/CubeService.java | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
index d068026..4fb2580 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
@@ -28,6 +28,7 @@ import java.util.Locale;
import java.util.Map;
import java.util.Set;
+import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.kylin.common.KylinConfig;
@@ -63,6 +64,7 @@ import org.apache.kylin.metadata.model.IStorageAware;
import org.apache.kylin.metadata.model.MeasureDesc;
import org.apache.kylin.metadata.model.SegmentRange;
import org.apache.kylin.metadata.model.SegmentStatusEnum;
+import org.apache.kylin.metadata.model.Segments;
import org.apache.kylin.metadata.model.TableDesc;
import org.apache.kylin.metadata.project.ProjectInstance;
import org.apache.kylin.metadata.project.ProjectManager;
@@ -423,6 +425,16 @@ public class CubeService extends BasicService implements InitializingBean {
cubeStatusUpdated = true;
// for streaming cube.
if (isStreamingCube) {
+ //drop not ready segments
+ CubeSegment[] buildingSegments = new CubeSegment[cubeInstance.getBuildingSegments().size()];
+ Segments segments = cubeInstance.getBuildingSegments();
+ if (!CollectionUtils.isEmpty(segments)) {
+ for (int i = 0; i < segments.size(); i++) {
+ buildingSegments[i] = (CubeSegment) segments.get(i);
+ }
+ getCubeManager().dropOptmizingSegments(cubeInstance, buildingSegments);
+ }
+ //unAssign cube
getStreamingCoordinator().unAssignCube(cubeName);
}
return cubeInstance;