You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2017/10/27 14:05:56 UTC
[6/6] kylin git commit: APACHE-KYLIN-2723: refine for feedback from
dongli
APACHE-KYLIN-2723: refine for feedback from dongli
Signed-off-by: lidongsjtu <li...@apache.org>
This closes #79
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/2411470d
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/2411470d
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/2411470d
Branch: refs/heads/master
Commit: 2411470d1e8cb3f7e08d31627c7e3e66d95ba3f9
Parents: ec897aa
Author: Zhong <nj...@apache.org>
Authored: Thu Oct 26 18:04:56 2017 +0800
Committer: lidongsjtu <li...@apache.org>
Committed: Fri Oct 27 21:58:17 2017 +0800
----------------------------------------------------------------------
.../apache/kylin/common/KylinConfigBase.java | 8 ++---
.../kylin/job/common/ShellExecutable.java | 6 ++--
.../job/execution/DefaultChainedExecutable.java | 2 +-
.../kylin/job/execution/ExecuteResult.java | 32 ++++++++------------
.../org/apache/kylin/engine/mr/CubingJob.java | 2 +-
.../engine/mr/common/HadoopShellExecutable.java | 6 ++--
.../engine/mr/common/MapReduceExecutable.java | 8 ++---
.../engine/mr/steps/MergeDictionaryStep.java | 4 +--
.../engine/mr/steps/MergeStatisticsStep.java | 4 +--
.../engine/mr/steps/SaveStatisticsStep.java | 4 +--
.../mr/steps/UpdateCubeInfoAfterBuildStep.java | 2 +-
.../mr/steps/UpdateCubeInfoAfterMergeStep.java | 7 ++---
.../kylin/engine/spark/SparkExecutable.java | 2 +-
.../kylin/rest/metrics/QueryMetricsFacade.java | 13 +++++---
.../apache/kylin/rest/request/SQLRequest.java | 9 +-----
.../apache/kylin/rest/response/SQLResponse.java | 9 +++---
.../source/hive/CreateFlatHiveTableStep.java | 2 +-
.../apache/kylin/source/hive/HiveMRInput.java | 4 +--
.../org/apache/kylin/source/jdbc/CmdStep.java | 2 +-
.../apache/kylin/source/jdbc/HiveCmdStep.java | 2 +-
.../apache/kylin/source/kafka/KafkaMRInput.java | 2 +-
.../kylin/source/kafka/job/MergeOffsetStep.java | 2 +-
.../storage/hbase/steps/DeprecatedGCStep.java | 2 +-
.../steps/HDFSPathGarbageCollectionStep.java | 2 +-
.../kylin/storage/hbase/steps/MergeGCStep.java | 3 +-
25 files changed, 63 insertions(+), 76 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
----------------------------------------------------------------------
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 625bbb3..9a28240 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
@@ -1337,7 +1337,7 @@ abstract public class KylinConfigBase implements Serializable {
}
public boolean isKylinMetricsReporterForJobEnabled() {
- return Boolean.parseBoolean(getOptional("kylin.core.metrics.reporter-job-enabled", "true"));
+ return Boolean.parseBoolean(getOptional("kylin.core.metrics.reporter-job-enabled", "false"));
}
public String getKylinMetricsActiveReservoirDefaultClass() {
@@ -1351,11 +1351,7 @@ abstract public class KylinConfigBase implements Serializable {
}
public String getKylinMetricsSubjectSuffix() {
- String suffix = getOptional("kylin.core.metric.subject-suffix", null);
- if (suffix != null) {
- return suffix;
- }
- return getDeployEnv();
+ return getOptional("kylin.core.metric.subject-suffix", getDeployEnv());
}
public String getKylinMetricsSubjectJob() {
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/core-job/src/main/java/org/apache/kylin/job/common/ShellExecutable.java
----------------------------------------------------------------------
diff --git a/core-job/src/main/java/org/apache/kylin/job/common/ShellExecutable.java b/core-job/src/main/java/org/apache/kylin/job/common/ShellExecutable.java
index 070ac23..b4abc4c 100644
--- a/core-job/src/main/java/org/apache/kylin/job/common/ShellExecutable.java
+++ b/core-job/src/main/java/org/apache/kylin/job/common/ShellExecutable.java
@@ -47,11 +47,11 @@ public class ShellExecutable extends AbstractExecutable {
final PatternedLogger patternedLogger = new PatternedLogger(logger);
final Pair<Integer, String> result = context.getConfig().getCliCommandExecutor().execute(getCmd(), patternedLogger);
getManager().addJobInfo(getId(), patternedLogger.getInfo());
- return new ExecuteResult(result.getFirst() == 0 ? ExecuteResult.State.SUCCEED : ExecuteResult.State.FAILED,
- new ShellException(result.getSecond()));
+ return result.getFirst() == 0 ? new ExecuteResult(ExecuteResult.State.SUCCEED, result.getSecond())
+ : ExecuteResult.createFailed(new ShellException(result.getSecond()));
} catch (IOException e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java
----------------------------------------------------------------------
diff --git a/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java b/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java
index 77d5efa..54b3b0a 100644
--- a/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java
+++ b/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java
@@ -82,7 +82,7 @@ public class DefaultChainedExecutable extends AbstractExecutable implements Chai
@Override
protected void onExecuteError(Throwable exception, ExecutableContext executableContext) {
super.onExecuteError(exception, executableContext);
- onStatusChange(executableContext, new ExecuteResult(exception), ExecutableState.ERROR);
+ onStatusChange(executableContext, ExecuteResult.createError(exception), ExecutableState.ERROR);
}
@Override
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/core-job/src/main/java/org/apache/kylin/job/execution/ExecuteResult.java
----------------------------------------------------------------------
diff --git a/core-job/src/main/java/org/apache/kylin/job/execution/ExecuteResult.java b/core-job/src/main/java/org/apache/kylin/job/execution/ExecuteResult.java
index 139c04b..c0c9d36 100644
--- a/core-job/src/main/java/org/apache/kylin/job/execution/ExecuteResult.java
+++ b/core-job/src/main/java/org/apache/kylin/job/execution/ExecuteResult.java
@@ -32,39 +32,33 @@ public final class ExecuteResult {
private final String output;
private final Throwable throwable;
- /**
- * Default constructor to indicate a success ExecuteResult.
- */
- public ExecuteResult() {
- this(State.SUCCEED, "succeed");
- }
-
public ExecuteResult(State state) {
this(state, "");
}
public ExecuteResult(State state, String output) {
- Preconditions.checkArgument(state != null, "state cannot be null");
- this.state = state;
- this.output = output;
- this.throwable = null;
+ this(state, output, null);
}
- public ExecuteResult(State state, Throwable throwable) {
+ public ExecuteResult(State state, String output, Throwable throwable) {
Preconditions.checkArgument(state != null, "state cannot be null");
this.state = state;
+ this.output = output;
this.throwable = throwable;
- this.output = throwable.getMessage();
}
- public ExecuteResult(Throwable throwable) {
- this(throwable, throwable.getMessage());
+ public static ExecuteResult createSucceed() {
+ return new ExecuteResult(State.SUCCEED, "succeed");
}
- public ExecuteResult(Throwable throwable, String output) {
- this.state = State.ERROR;
- this.throwable = throwable;
- this.output = output;
+ public static ExecuteResult createError(Throwable throwable) {
+ Preconditions.checkArgument(throwable != null, "throwable cannot be null");
+ return new ExecuteResult(State.ERROR, throwable.getLocalizedMessage(), throwable);
+ }
+
+ public static ExecuteResult createFailed(Throwable throwable) {
+ Preconditions.checkArgument(throwable != null, "throwable cannot be null");
+ return new ExecuteResult(State.FAILED, throwable.getLocalizedMessage(), throwable);
}
public State state() {
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/CubingJob.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/CubingJob.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/CubingJob.java
index 3fb1650..4e7bcdd 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/CubingJob.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/CubingJob.java
@@ -91,7 +91,7 @@ public class CubingJob extends DefaultChainedExecutable {
}
//32MB per block created by the first step
- public static final long MIN_SOURCE_SIZE = 33554432L;
+ private static final long MIN_SOURCE_SIZE = 33554432L;
// KEYS of Output.extraInfo map, info passed across job steps
public static final String SOURCE_RECORD_COUNT = "sourceRecordCount";
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/HadoopShellExecutable.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/HadoopShellExecutable.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/HadoopShellExecutable.java
index ddbcc99..10a6e8c 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/HadoopShellExecutable.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/HadoopShellExecutable.java
@@ -70,13 +70,13 @@ public class HadoopShellExecutable extends AbstractExecutable {
}
log.append("result code:").append(result);
return result == 0 ? new ExecuteResult(ExecuteResult.State.SUCCEED, log.toString())
- : new ExecuteResult(ExecuteResult.State.FAILED, new HadoopShellException(log.toString()));
+ : ExecuteResult.createFailed(new HadoopShellException(log.toString()));
} catch (ReflectiveOperationException e) {
logger.error("error getMapReduceJobClass, class name:" + getParam(KEY_MR_JOB), e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
} catch (Exception e) {
logger.error("error execute " + this.toString(), e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
index 27124b3..ca1311d 100755
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
@@ -139,7 +139,7 @@ public class MapReduceExecutable extends AbstractExecutable {
ex.printStackTrace(new PrintWriter(stringWriter));
log.append(stringWriter.toString()).append("\n");
log.append("result code:").append(2);
- return new ExecuteResult(ex, log.toString());
+ return new ExecuteResult(ExecuteResult.State.ERROR, log.toString(), ex);
}
job = hadoopJob.getJob();
}
@@ -168,7 +168,7 @@ public class MapReduceExecutable extends AbstractExecutable {
if (status == JobStepStatusEnum.FINISHED) {
return new ExecuteResult(ExecuteResult.State.SUCCEED, output.toString());
} else {
- return new ExecuteResult(ExecuteResult.State.FAILED, new MapReduceException(output.toString()));
+ return ExecuteResult.createFailed(new MapReduceException(output.toString()));
}
}
Thread.sleep(context.getConfig().getYarnStatusCheckIntervalSeconds() * 1000L);
@@ -191,10 +191,10 @@ public class MapReduceExecutable extends AbstractExecutable {
} catch (ReflectiveOperationException e) {
logger.error("error getMapReduceJobClass, class name:" + getParam(KEY_MR_JOB), e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
} catch (Exception e) {
logger.error("error execute " + this.toString(), e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java
index 87e95d8..3a1f852 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java
@@ -69,10 +69,10 @@ public class MergeDictionaryStep extends AbstractExecutable {
CubeUpdate cubeBuilder = new CubeUpdate(cube);
cubeBuilder.setToUpdateSegs(newSegment);
mgr.updateCube(cubeBuilder);
- return new ExecuteResult(ExecuteResult.State.SUCCEED, "succeed");
+ return ExecuteResult.createSucceed();
} catch (IOException e) {
logger.error("fail to merge dictionary or lookup snapshots", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java
index ccebbb2..a927c1f 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java
@@ -133,10 +133,10 @@ public class MergeStatisticsStep extends AbstractExecutable {
IOUtils.closeStream(is);
}
- return new ExecuteResult(ExecuteResult.State.SUCCEED, "succeed");
+ return ExecuteResult.createSucceed();
} catch (IOException e) {
logger.error("fail to merge cuboid statistics", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/SaveStatisticsStep.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/SaveStatisticsStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/SaveStatisticsStep.java
index f18de0e..2196f09 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/SaveStatisticsStep.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/SaveStatisticsStep.java
@@ -77,10 +77,10 @@ public class SaveStatisticsStep extends AbstractExecutable {
IOUtils.closeStream(is);
}
- return new ExecuteResult(ExecuteResult.State.SUCCEED, "succeed");
+ return ExecuteResult.createSucceed();
} catch (IOException e) {
logger.error("fail to save cuboid statistics", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterBuildStep.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterBuildStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterBuildStep.java
index a53071a..7d36643 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterBuildStep.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterBuildStep.java
@@ -76,7 +76,7 @@ public class UpdateCubeInfoAfterBuildStep extends AbstractExecutable {
return new ExecuteResult(ExecuteResult.State.SUCCEED, "succeed");
} catch (IOException e) {
logger.error("fail to update cube after build", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterMergeStep.java
----------------------------------------------------------------------
diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterMergeStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterMergeStep.java
index 86e6080..3185bec 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterMergeStep.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UpdateCubeInfoAfterMergeStep.java
@@ -52,7 +52,7 @@ public class UpdateCubeInfoAfterMergeStep extends AbstractExecutable {
CubeSegment mergedSegment = cube.getSegmentById(CubingExecutableUtil.getSegmentId(this.getParams()));
if (mergedSegment == null) {
- return new ExecuteResult(ExecuteResult.State.FAILED, new SegmentNotFoundException(
+ return ExecuteResult.createFailed(new SegmentNotFoundException(
"there is no segment with id:" + CubingExecutableUtil.getSegmentId(this.getParams())));
}
@@ -62,8 +62,7 @@ public class UpdateCubeInfoAfterMergeStep extends AbstractExecutable {
// collect source statistics
List<String> mergingSegmentIds = CubingExecutableUtil.getMergingSegmentIds(this.getParams());
if (mergingSegmentIds.isEmpty()) {
- return new ExecuteResult(ExecuteResult.State.FAILED,
- new SegmentNotFoundException("there are no merging segments"));
+ return ExecuteResult.createFailed(new SegmentNotFoundException("there are no merging segments"));
}
long sourceCount = 0L;
long sourceSize = 0L;
@@ -85,7 +84,7 @@ public class UpdateCubeInfoAfterMergeStep extends AbstractExecutable {
return new ExecuteResult(ExecuteResult.State.SUCCEED);
} catch (IOException e) {
logger.error("fail to update cube after merge", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java
----------------------------------------------------------------------
diff --git a/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java b/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java
index f63e999..69232ba 100644
--- a/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java
+++ b/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java
@@ -154,7 +154,7 @@ public class SparkExecutable extends AbstractExecutable {
return new ExecuteResult(ExecuteResult.State.SUCCEED, patternedLogger.getBufferedLog());
} catch (Exception e) {
logger.error("error run spark job:", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/server-base/src/main/java/org/apache/kylin/rest/metrics/QueryMetricsFacade.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/metrics/QueryMetricsFacade.java b/server-base/src/main/java/org/apache/kylin/rest/metrics/QueryMetricsFacade.java
index 4e09f6f..18ef867 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/metrics/QueryMetricsFacade.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/metrics/QueryMetricsFacade.java
@@ -28,6 +28,7 @@ import org.apache.hadoop.metrics2.MetricsException;
import org.apache.hadoop.metrics2.lib.DefaultMetricsSystem;
import org.apache.kylin.common.KylinConfig;
import org.apache.kylin.common.QueryContext;
+import org.apache.kylin.metadata.project.ProjectInstance;
import org.apache.kylin.metrics.MetricsManager;
import org.apache.kylin.metrics.lib.impl.RecordEvent;
import org.apache.kylin.metrics.lib.impl.TimedRecordEvent;
@@ -102,7 +103,8 @@ public class QueryMetricsFacade {
RecordEvent rpcMetricsEvent = new TimedRecordEvent(
KylinConfig.getInstanceFromEnv().getKylinMetricsSubjectQueryRpcCall());
setRPCWrapper(rpcMetricsEvent, //
- sqlRequest.getProject(), entry.getRealizationName(), entry.getRpcServer(), entry.getException());
+ ProjectInstance.getNormalizedProjectName(sqlRequest.getProject()), entry.getRealizationName(),
+ entry.getRpcServer(), entry.getException());
setRPCStats(rpcMetricsEvent, //
entry.getCallTimeMs(), entry.getSkippedRows(), entry.getScannedRows(), entry.getReturnedRows(),
entry.getAggregatedRows());
@@ -115,7 +117,8 @@ public class QueryMetricsFacade {
KylinConfig.getInstanceFromEnv().getKylinMetricsSubjectQuery());
setQueryWrapper(queryMetricsEvent, //
user, sqlHashCode, sqlResponse.isStorageCacheUsed() ? "CACHE" : contextEntry.getQueryType(),
- sqlRequest.getProject(), contextEntry.getRealization(), contextEntry.getRealizationType(),
+ ProjectInstance.getNormalizedProjectName(sqlRequest.getProject()), contextEntry.getRealization(),
+ contextEntry.getRealizationType(),
sqlResponse.getThrowable());
long totalStorageReturnCount = 0L;
@@ -126,9 +129,9 @@ public class QueryMetricsFacade {
KylinConfig.getInstanceFromEnv().getKylinMetricsSubjectQueryCube());
setCubeWrapper(cubeSegmentMetricsEvent, //
- sqlRequest.getProject(), segmentEntry.getCubeName(), segmentEntry.getSegmentName(),
- segmentEntry.getSourceCuboidId(), segmentEntry.getTargetCuboidId(),
- segmentEntry.getFilterMask());
+ ProjectInstance.getNormalizedProjectName(sqlRequest.getProject()),
+ segmentEntry.getCubeName(), segmentEntry.getSegmentName(), segmentEntry.getSourceCuboidId(),
+ segmentEntry.getTargetCuboidId(), segmentEntry.getFilterMask());
setCubeStats(cubeSegmentMetricsEvent, //
segmentEntry.getCallCount(), segmentEntry.getCallTimeSum(), segmentEntry.getCallTimeMax(),
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java b/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
index 85a7564..a98aba7 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
@@ -53,7 +53,7 @@ public class SQLRequest implements Serializable {
}
public String getProject() {
- return norm(project);
+ return project;
}
public void setProject(String project) {
@@ -114,13 +114,6 @@ public class SQLRequest implements Serializable {
return cacheKey;
}
- public static String norm(String str) {
- if (str == null) {
- return null;
- }
- return str.toUpperCase();
- }
-
@Override
public boolean equals(Object o) {
if (this == o)
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/server-base/src/main/java/org/apache/kylin/rest/response/SQLResponse.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/response/SQLResponse.java b/server-base/src/main/java/org/apache/kylin/rest/response/SQLResponse.java
index ee85162..a41e21b 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/response/SQLResponse.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/response/SQLResponse.java
@@ -24,6 +24,8 @@ import java.util.List;
import org.apache.commons.lang3.SerializationUtils;
import org.apache.kylin.common.QueryContext;
import org.apache.kylin.metadata.querymeta.SelectedColumnMeta;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.common.collect.Lists;
@@ -31,8 +33,7 @@ import com.google.common.collect.Lists;
public class SQLResponse implements Serializable {
protected static final long serialVersionUID = 1L;
- // private static final Logger logger =
- // LoggerFactory.getLogger(SQLResponse.class);
+ private static final Logger logger = LoggerFactory.getLogger(SQLResponse.class);
// the data type for each column
protected List<SelectedColumnMeta> columnMetas;
@@ -211,7 +212,7 @@ public class SQLResponse implements Serializable {
return queryStatistics == null ? Lists.<QueryContext.CubeSegmentStatisticsResult> newArrayList()
: (List<QueryContext.CubeSegmentStatisticsResult>) SerializationUtils.deserialize(queryStatistics);
} catch (Exception e) { // deserialize exception should not block query
- System.out.println("Error while deserialize queryStatistics due to " + e);
+ logger.warn("Error while deserialize queryStatistics due to " + e);
return Lists.newArrayList();
}
}
@@ -222,7 +223,7 @@ public class SQLResponse implements Serializable {
this.queryStatistics = cubeSegmentStatisticsList == null ? null
: SerializationUtils.serialize((Serializable) cubeSegmentStatisticsList);
} catch (Exception e) { // serialize exception should not block query
- System.out.println("Error while serialize queryStatistics due to " + e);
+ logger.warn("Error while serialize queryStatistics due to " + e);
this.queryStatistics = null;
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-hive/src/main/java/org/apache/kylin/source/hive/CreateFlatHiveTableStep.java
----------------------------------------------------------------------
diff --git a/source-hive/src/main/java/org/apache/kylin/source/hive/CreateFlatHiveTableStep.java b/source-hive/src/main/java/org/apache/kylin/source/hive/CreateFlatHiveTableStep.java
index 476068b..c768988 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/hive/CreateFlatHiveTableStep.java
+++ b/source-hive/src/main/java/org/apache/kylin/source/hive/CreateFlatHiveTableStep.java
@@ -73,7 +73,7 @@ public class CreateFlatHiveTableStep extends AbstractExecutable {
} catch (Exception e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, stepLogger.getBufferedLog());
+ return new ExecuteResult(ExecuteResult.State.ERROR, stepLogger.getBufferedLog(), e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-hive/src/main/java/org/apache/kylin/source/hive/HiveMRInput.java
----------------------------------------------------------------------
diff --git a/source-hive/src/main/java/org/apache/kylin/source/hive/HiveMRInput.java b/source-hive/src/main/java/org/apache/kylin/source/hive/HiveMRInput.java
index 38b8794..0041441 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/hive/HiveMRInput.java
+++ b/source-hive/src/main/java/org/apache/kylin/source/hive/HiveMRInput.java
@@ -350,7 +350,7 @@ public class HiveMRInput implements IMRInput {
} catch (Exception e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, stepLogger.getBufferedLog());
+ return new ExecuteResult(ExecuteResult.State.ERROR, stepLogger.getBufferedLog(), e);
}
}
@@ -392,7 +392,7 @@ public class HiveMRInput implements IMRInput {
//output.append(cleanUpHiveViewIntermediateTable(config));
} catch (IOException e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, e.getMessage());
+ return ExecuteResult.createError(e);
}
return new ExecuteResult(ExecuteResult.State.SUCCEED, output.toString());
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-hive/src/main/java/org/apache/kylin/source/jdbc/CmdStep.java
----------------------------------------------------------------------
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/CmdStep.java b/source-hive/src/main/java/org/apache/kylin/source/jdbc/CmdStep.java
index 4025457..09895f9 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/CmdStep.java
+++ b/source-hive/src/main/java/org/apache/kylin/source/jdbc/CmdStep.java
@@ -62,7 +62,7 @@ public class CmdStep extends AbstractExecutable {
} catch (Exception e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, stepLogger.getBufferedLog());
+ return new ExecuteResult(ExecuteResult.State.ERROR, stepLogger.getBufferedLog(), e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-hive/src/main/java/org/apache/kylin/source/jdbc/HiveCmdStep.java
----------------------------------------------------------------------
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/HiveCmdStep.java b/source-hive/src/main/java/org/apache/kylin/source/jdbc/HiveCmdStep.java
index a67dc37..073e965 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/HiveCmdStep.java
+++ b/source-hive/src/main/java/org/apache/kylin/source/jdbc/HiveCmdStep.java
@@ -62,7 +62,7 @@ public class HiveCmdStep extends AbstractExecutable {
} catch (Exception e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, stepLogger.getBufferedLog());
+ return new ExecuteResult(ExecuteResult.State.ERROR, stepLogger.getBufferedLog(), e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-kafka/src/main/java/org/apache/kylin/source/kafka/KafkaMRInput.java
----------------------------------------------------------------------
diff --git a/source-kafka/src/main/java/org/apache/kylin/source/kafka/KafkaMRInput.java b/source-kafka/src/main/java/org/apache/kylin/source/kafka/KafkaMRInput.java
index c6914c3..529e8b1 100644
--- a/source-kafka/src/main/java/org/apache/kylin/source/kafka/KafkaMRInput.java
+++ b/source-kafka/src/main/java/org/apache/kylin/source/kafka/KafkaMRInput.java
@@ -222,7 +222,7 @@ public class KafkaMRInput implements IMRInput {
rmdirOnHDFS(getDataPath());
} catch (IOException e) {
logger.error("job:" + getId() + " execute finished with exception", e);
- return new ExecuteResult(e, e.getMessage());
+ return ExecuteResult.createError(e);
}
return new ExecuteResult(ExecuteResult.State.SUCCEED, "HDFS path " + getDataPath() + " is dropped.\n");
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/source-kafka/src/main/java/org/apache/kylin/source/kafka/job/MergeOffsetStep.java
----------------------------------------------------------------------
diff --git a/source-kafka/src/main/java/org/apache/kylin/source/kafka/job/MergeOffsetStep.java b/source-kafka/src/main/java/org/apache/kylin/source/kafka/job/MergeOffsetStep.java
index 406d92e..8139342 100644
--- a/source-kafka/src/main/java/org/apache/kylin/source/kafka/job/MergeOffsetStep.java
+++ b/source-kafka/src/main/java/org/apache/kylin/source/kafka/job/MergeOffsetStep.java
@@ -76,7 +76,7 @@ public class MergeOffsetStep extends AbstractExecutable {
return new ExecuteResult(ExecuteResult.State.SUCCEED, "succeed");
} catch (IOException e) {
logger.error("fail to update cube segment offset", e);
- return new ExecuteResult(e, e.getLocalizedMessage());
+ return ExecuteResult.createError(e);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/DeprecatedGCStep.java
----------------------------------------------------------------------
diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/DeprecatedGCStep.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/DeprecatedGCStep.java
index c454e60..8d07a1c 100644
--- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/DeprecatedGCStep.java
+++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/DeprecatedGCStep.java
@@ -78,7 +78,7 @@ public class DeprecatedGCStep extends AbstractExecutable {
} catch (IOException e) {
logger.error("job:" + getId() + " execute finished with exception", e);
output.append("\n").append(e.getLocalizedMessage());
- return new ExecuteResult(e, output.toString());
+ return new ExecuteResult(ExecuteResult.State.ERROR, output.toString(), e);
}
return new ExecuteResult(ExecuteResult.State.SUCCEED, output.toString());
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HDFSPathGarbageCollectionStep.java
----------------------------------------------------------------------
diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HDFSPathGarbageCollectionStep.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HDFSPathGarbageCollectionStep.java
index b9b5fe6..3ec27d4 100644
--- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HDFSPathGarbageCollectionStep.java
+++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HDFSPathGarbageCollectionStep.java
@@ -67,7 +67,7 @@ public class HDFSPathGarbageCollectionStep extends AbstractExecutable {
} catch (IOException e) {
logger.error("job:" + getId() + " execute finished with exception", e);
output.append("\n").append(e.getLocalizedMessage());
- return new ExecuteResult(e, output.toString());
+ return new ExecuteResult(ExecuteResult.State.ERROR, output.toString(), e);
}
return new ExecuteResult(ExecuteResult.State.SUCCEED, output.toString());
http://git-wip-us.apache.org/repos/asf/kylin/blob/2411470d/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/MergeGCStep.java
----------------------------------------------------------------------
diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/MergeGCStep.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/MergeGCStep.java
index 7371e08..1bead67 100644
--- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/MergeGCStep.java
+++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/MergeGCStep.java
@@ -95,7 +95,8 @@ public class MergeGCStep extends AbstractExecutable {
} catch (IOException e) {
output.append("Got error when drop HBase table, exiting... \n");
// This should not block the merge job; Orphans should be cleaned up in StorageCleanupJob
- return new ExecuteResult(e, output.append(e.getLocalizedMessage()).toString());
+ return new ExecuteResult(ExecuteResult.State.ERROR, output.append(e.getLocalizedMessage()).toString(),
+ e);
} finally {
if (admin != null)
try {