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 2016/04/22 06:11:59 UTC
[30/50] [abbrv] kylin git commit: minor, fix bug in KylinConfigExt
minor, fix bug in KylinConfigExt
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/653743f3
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/653743f3
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/653743f3
Branch: refs/heads/1.5.x-HBase1.1.3
Commit: 653743f34b3a0fe049ed5b9e48d5ad26114907eb
Parents: 166e8ea
Author: Hongbin Ma <ma...@apache.org>
Authored: Tue Apr 5 17:40:43 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Tue Apr 5 17:40:59 2016 +0800
----------------------------------------------------------------------
.../org/apache/kylin/common/KylinConfigExt.java | 22 ++++++++++++++++----
.../org/apache/kylin/cube/model/CubeDesc.java | 6 ++----
2 files changed, 20 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/653743f3/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java
----------------------------------------------------------------------
diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java
index f6e20ff..e34a58a 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java
@@ -30,14 +30,28 @@ public class KylinConfigExt extends KylinConfig {
final private Map<String, String> overrides;
final KylinConfig base;
- public KylinConfigExt(KylinConfig base, Map<String, String> overrides) {
+ public static KylinConfigExt createInstance(KylinConfig kylinConfig, Map<String, String> overrides) {
+ if (kylinConfig instanceof KylinConfigExt) {
+ return new KylinConfigExt((KylinConfigExt) kylinConfig, overrides);
+ } else {
+ return new KylinConfigExt(kylinConfig, overrides);
+ }
+ }
+
+ private KylinConfigExt(KylinConfig base, Map<String, String> overrides) {
super(base.getAllProperties());
- if (base.getClass() != KylinConfig.class)
+ if (base.getClass() != KylinConfig.class) {
throw new IllegalArgumentException();
+ }
this.base = base;
this.overrides = overrides;
}
-
+
+ private KylinConfigExt(KylinConfigExt ext, Map<String, String> overrides) {
+ this.base = ext.base;
+ this.overrides = overrides;
+ }
+
protected String getOptional(String prop, String dft) {
String value = overrides.get(prop);
if (value != null)
@@ -51,5 +65,5 @@ public class KylinConfigExt extends KylinConfig {
result.putAll(overrides);
return result;
}
-
+
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/653743f3/core-cube/src/main/java/org/apache/kylin/cube/model/CubeDesc.java
----------------------------------------------------------------------
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/model/CubeDesc.java b/core-cube/src/main/java/org/apache/kylin/cube/model/CubeDesc.java
index 89f297e..240cf52 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/model/CubeDesc.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/model/CubeDesc.java
@@ -171,7 +171,6 @@ public class CubeDesc extends RootPersistentEntity {
return getRowkey().getShardByColumns();
}
-
/**
* Error messages during resolving json metadata
*/
@@ -402,7 +401,7 @@ public class CubeDesc extends RootPersistentEntity {
public void setStatusNeedNotify(List<String> statusNeedNotify) {
this.statusNeedNotify = statusNeedNotify;
}
-
+
public LinkedHashMap<String, String> getOverrideKylinProps() {
return overrideKylinProps;
}
@@ -516,7 +515,7 @@ public class CubeDesc extends RootPersistentEntity {
public void init(KylinConfig config, Map<String, TableDesc> tables) {
this.errors.clear();
- this.config = new KylinConfigExt(config, overrideKylinProps);
+ this.config = KylinConfigExt.createInstance(config, overrideKylinProps);
if (this.modelName == null || this.modelName.length() == 0) {
this.addError("The cubeDesc '" + this.getName() + "' doesn't have data model specified.");
@@ -591,7 +590,6 @@ public class CubeDesc extends RootPersistentEntity {
combination = combination * (1 << jointDimsList.size());
}
-
if (!includeDims.containsAll(mandatoryDims) || !includeDims.containsAll(hierarchyDims) || !includeDims.containsAll(jointDims)) {
logger.error("Aggregation group " + index + " Include dims not containing all the used dims");
throw new IllegalStateException("Aggregation group " + index + " Include dims not containing all the used dims");