You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by xx...@apache.org on 2020/08/27 07:37:18 UTC
[kylin] 01/08: KYLIN-4660 Remove duplicated/misleading code or
comment
This is an automated email from the ASF dual-hosted git repository.
xxyu pushed a commit to branch kylin-on-parquet-v2
in repository https://gitbox.apache.org/repos/asf/kylin.git
commit 7a336fab3eb9c5bb931eba031f9249f334fad066
Author: Zhichao Zhang <44...@qq.com>
AuthorDate: Tue Aug 25 16:01:17 2020 +0800
KYLIN-4660 Remove duplicated/misleading code or comment
---
.../java/org/apache/kylin/common/KylinConfig.java | 24 ++++++++++-----------
.../org/apache/kylin/common/KylinConfigBase.java | 1 +
.../java/org/apache/kylin/cube/CubeSegment.java | 2 +-
.../kylin/job/execution/AbstractExecutable.java | 5 +++--
.../apache/kylin/job/execution/JobTypeEnum.java | 25 ----------------------
.../metadata/realization/RealizationType.java | 2 +-
.../apache/kylin/engine/spark/job/JobStepType.java | 4 +---
.../kylin/engine/spark/job/NSparkCubingUtil.java | 4 ++--
.../kylin/engine/spark/job/NSparkMergingJob.java | 3 +--
.../merger/AfterMergeOrRefreshResourceMerger.java | 4 ++--
.../engine/spark/builder/CreateFlatTable.scala | 2 +-
.../kylin/engine/spark/job/CubeBuildJob.java | 7 +++---
.../org/apache/kylin/query/routing/Candidate.java | 1 -
13 files changed, 29 insertions(+), 55 deletions(-)
diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
index 8562314..c18c643 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java
@@ -587,23 +587,23 @@ public class KylinConfig extends KylinConfigBase {
throw new IllegalArgumentException(localMetaDir + " is not a valid local meta dir");
destroyInstance();
- String canonicalPath = localMetaDir;
- try {
- // remove the ".." in path string
- canonicalPath = new File(localMetaDir).getCanonicalPath();
- } catch (IOException e) {
- throw new IllegalStateException("");
- }
- logger.info("Setting KylinConfig to {} in UT.", canonicalPath);
- System.setProperty(KylinConfig.KYLIN_CONF, canonicalPath);
+ logger.info("Setting KylinConfig to {} in UT.", localMetaDir);
+ System.setProperty(KylinConfig.KYLIN_CONF, localMetaDir);
KylinConfig config = KylinConfig.getInstanceFromEnv();
- config.setMetadataUrl(canonicalPath);
+ config.setMetadataUrl(localMetaDir);
- File workingDir = new File(canonicalPath, "working-dir");
+ // create a local working dir
+ File workingDir = new File(localMetaDir, "working-dir");
workingDir.mkdirs();
- String path = workingDir.getAbsolutePath();
+ String path = "";
+ try {
+ // remove the ".." in path string
+ path = workingDir.getCanonicalPath();
+ } catch (IOException e) {
+ throw new IllegalStateException("");
+ }
if (!path.startsWith("/"))
path = "/" + path;
if (!path.endsWith("/"))
diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
index ac93fd4..78ba123 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
@@ -307,6 +307,7 @@ public abstract class KylinConfigBase implements Serializable {
String metaId = getMetadataUrlPrefix().replace(':', '-');
//transform relative path for local metadata
if (metaId.startsWith("../")) {
+ metaId = metaId.replace("../", "");
metaId = metaId.replace('/', '-');
}
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/CubeSegment.java b/core-cube/src/main/java/org/apache/kylin/cube/CubeSegment.java
index 70fb501..f7072cc 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/CubeSegment.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/CubeSegment.java
@@ -69,7 +69,7 @@ public class CubeSegment implements IBuildable, ISegment, Serializable {
@JsonProperty("name")
private String name;
@JsonProperty("storage_location_identifier")
- private String storageLocationIdentifier; // HTable name
+ private String storageLocationIdentifier;
@JsonProperty("date_range_start")
private long dateRangeStart;
@JsonProperty("date_range_end")
diff --git a/core-job/src/main/java/org/apache/kylin/job/execution/AbstractExecutable.java b/core-job/src/main/java/org/apache/kylin/job/execution/AbstractExecutable.java
index 86ac294..908e154 100644
--- a/core-job/src/main/java/org/apache/kylin/job/execution/AbstractExecutable.java
+++ b/core-job/src/main/java/org/apache/kylin/job/execution/AbstractExecutable.java
@@ -38,6 +38,7 @@ import org.apache.kylin.common.util.RandomUtil;
import org.apache.kylin.common.util.StringUtil;
import org.apache.kylin.cube.CubeInstance;
import org.apache.kylin.cube.CubeManager;
+import org.apache.kylin.cube.model.CubeBuildTypeEnum;
import org.apache.kylin.job.exception.ExecuteException;
import org.apache.kylin.job.exception.JobStoppedException;
import org.apache.kylin.job.exception.PersistentException;
@@ -81,7 +82,7 @@ public abstract class AbstractExecutable implements Executable, Idempotent {
private AbstractExecutable parentExecutable = null;
private Map<String, String> params = Maps.newHashMap();
protected Integer priority;
- private JobTypeEnum jobType;
+ private CubeBuildTypeEnum jobType;
protected String project;
private String targetSubject;
private List<String> targetSegments = Lists.newArrayList();//uuid of related segments
@@ -592,7 +593,7 @@ public abstract class AbstractExecutable implements Executable, Idempotent {
this.project = project;
}
- public void setJobType(JobTypeEnum jobType) {
+ public void setJobType(CubeBuildTypeEnum jobType) {
this.jobType = jobType;
}
diff --git a/core-job/src/main/java/org/apache/kylin/job/execution/JobTypeEnum.java b/core-job/src/main/java/org/apache/kylin/job/execution/JobTypeEnum.java
deleted file mode 100644
index 2823431..0000000
--- a/core-job/src/main/java/org/apache/kylin/job/execution/JobTypeEnum.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.kylin.job.execution;
-
-public enum JobTypeEnum {
- INDEX_REFRESH, INDEX_MERGE, INDEX_BUILD, INC_BUILD,
-
- TABLE_SAMPLING
-}
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/realization/RealizationType.java b/core-metadata/src/main/java/org/apache/kylin/metadata/realization/RealizationType.java
index 3fcfe63..8b9defc 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/realization/RealizationType.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/realization/RealizationType.java
@@ -23,5 +23,5 @@ package org.apache.kylin.metadata.realization;
//TODO: change to String for plugin
public enum RealizationType {
- CUBE, INVERTED_INDEX, HYBRID
+ CUBE, HYBRID
}
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/JobStepType.java b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/JobStepType.java
index a24a265..a81312a 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/JobStepType.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/JobStepType.java
@@ -21,7 +21,5 @@ package org.apache.kylin.engine.spark.job;
public enum JobStepType {
RESOURCE_DETECT,
- CLEAN_UP_AFTER_MERGE, CUBING, MERGING,
-
- SAMPLING
+ CLEAN_UP_AFTER_MERGE, CUBING, MERGING
}
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkCubingUtil.java b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkCubingUtil.java
index f80e9cf..5438896 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkCubingUtil.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkCubingUtil.java
@@ -87,8 +87,8 @@ public class NSparkCubingUtil {
public static String getStoragePath(CubeSegment nDataSegment, Long layoutId) {
String hdfsWorkingDir = nDataSegment.getConfig().getReadHdfsWorkingDirectory();
- return hdfsWorkingDir +
- getStoragePathWithoutPrefix(nDataSegment.getProject(), nDataSegment.getCubeInstance().getId(), nDataSegment.getUuid(), layoutId);
+ return hdfsWorkingDir + getStoragePathWithoutPrefix(nDataSegment.getProject(),
+ nDataSegment.getCubeInstance().getId(), nDataSegment.getUuid(), layoutId);
}
static Set<String> toSegmentNames(Segments<CubeSegment> segments) {
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkMergingJob.java b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkMergingJob.java
index 25de377..7efc946 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkMergingJob.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/job/NSparkMergingJob.java
@@ -32,7 +32,6 @@ import org.apache.kylin.common.KylinConfig;
import org.apache.kylin.cube.CubeInstance;
import org.apache.kylin.cube.CubeManager;
import org.apache.kylin.cube.CubeSegment;
-import org.apache.kylin.job.execution.JobTypeEnum;
import org.apache.kylin.metadata.MetadataConstants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -82,7 +81,7 @@ public class NSparkMergingJob extends CubingJob {
job.setParam(MetadataConstants.P_DATA_RANGE_START, mergedSegment.getSegRange().start.toString());
job.setParam(MetadataConstants.P_DATA_RANGE_END, mergedSegment.getSegRange().end.toString());
job.setParam(MetadataConstants.P_OUTPUT_META_URL, cube.getConfig().getMetadataUrl().toString());
- job.setParam(MetadataConstants.P_JOB_TYPE, String.valueOf(JobTypeEnum.INDEX_MERGE));
+ job.setParam(MetadataConstants.P_JOB_TYPE, String.valueOf(jobType));
job.setParam(MetadataConstants.P_CUBOID_NUMBER, String.valueOf(cube.getDescriptor().getAllCuboids().size()));
JobStepFactory.addStep(job, JobStepType.RESOURCE_DETECT, cube);
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/merger/AfterMergeOrRefreshResourceMerger.java b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/merger/AfterMergeOrRefreshResourceMerger.java
index f634917..2fb1812 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/merger/AfterMergeOrRefreshResourceMerger.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/merger/AfterMergeOrRefreshResourceMerger.java
@@ -30,9 +30,9 @@ import org.apache.kylin.cube.CubeInstance;
import org.apache.kylin.cube.CubeManager;
import org.apache.kylin.cube.CubeSegment;
import org.apache.kylin.cube.CubeUpdate;
+import org.apache.kylin.cube.model.CubeBuildTypeEnum;
import org.apache.kylin.engine.mr.steps.CubingExecutableUtil;
import org.apache.kylin.job.execution.AbstractExecutable;
-import org.apache.kylin.job.execution.JobTypeEnum;
import org.apache.kylin.metadata.MetadataConstants;
import org.apache.kylin.metadata.model.IStorageAware;
import org.apache.kylin.metadata.model.SegmentStatusEnum;
@@ -69,7 +69,7 @@ public class AfterMergeOrRefreshResourceMerger extends MetadataMerger {
Collections.sort(toRemoveSegments);
makeSnapshotForNewSegment(mergedSegment, toRemoveSegments);
- if (String.valueOf(JobTypeEnum.INDEX_MERGE).equals(jobType)) {
+ if (String.valueOf(CubeBuildTypeEnum.MERGE).equals(jobType)) {
Optional<Long> reduce = toRemoveSegments.stream().map(CubeSegment::getSizeKB).filter(size -> size != -1)
.reduce(Long::sum);
Optional<Long> inputRecords = toRemoveSegments.stream().map(CubeSegment::getInputRecords).filter(records -> records != -1)
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/builder/CreateFlatTable.scala b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/builder/CreateFlatTable.scala
index 8d11974..dd383c3 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/builder/CreateFlatTable.scala
+++ b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/builder/CreateFlatTable.scala
@@ -170,7 +170,7 @@ object CreateFlatTable extends Logging {
ss: SparkSession): Dataset[Row] = {
var afterJoin = rootFactDataset
val joinType = joinDesc.joinType
- if (joinType != null && !StringUtils.isEmpty(joinType)) {
+ if (StringUtils.isNotEmpty(joinType)) {
val pk = joinDesc.PKS
val fk = joinDesc.FKS
if (pk.length != fk.length) {
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/job/CubeBuildJob.java b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/job/CubeBuildJob.java
index d8788cb..80b0674 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/job/CubeBuildJob.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/kylin/engine/spark/job/CubeBuildJob.java
@@ -222,12 +222,13 @@ public class CubeBuildJob extends SparkApplication {
buildLayoutWithUpdate.submit(new BuildLayoutWithUpdate.JobEntity() {
@Override
public String getName() {
- return "build-index-" + index.getId();
+ return "build-cuboid-" + index.getId();
}
@Override
public LayoutEntity build() throws IOException {
- return buildIndex(seg, index, parentDS, st, info.getLayoutId(), parentDSCnt);
+ return buildCuboid(seg, index, parentDS, st, info.getLayoutId(),
+ parentDSCnt);
}
}, config);
allIndexesInCurrentLayer.add(index);
@@ -288,7 +289,7 @@ public class CubeBuildJob extends SparkApplication {
return ResourceDetectUtils.selectMaxValueInFiles(fileStatuses);
}
- private LayoutEntity buildIndex(SegmentInfo seg, LayoutEntity cuboid, Dataset<Row> parent,
+ private LayoutEntity buildCuboid(SegmentInfo seg, LayoutEntity cuboid, Dataset<Row> parent,
SpanningTree spanningTree, long parentId, long parentDSCnt) throws IOException {
String parentName = String.valueOf(parentId);
if (parentId == ParentSourceChooser.FLAT_TABLE_FLAG()) {
diff --git a/query/src/main/java/org/apache/kylin/query/routing/Candidate.java b/query/src/main/java/org/apache/kylin/query/routing/Candidate.java
index bc17721..ddf5d0d 100644
--- a/query/src/main/java/org/apache/kylin/query/routing/Candidate.java
+++ b/query/src/main/java/org/apache/kylin/query/routing/Candidate.java
@@ -36,7 +36,6 @@ public class Candidate implements Comparable<Candidate> {
static {
DEFAULT_PRIORITIES.put(RealizationType.HYBRID, 0);
DEFAULT_PRIORITIES.put(RealizationType.CUBE, 1);
- DEFAULT_PRIORITIES.put(RealizationType.INVERTED_INDEX, 1);
}
/** for test only */