KYLIN-2695 Should allow user to override spark conf in cube
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/804a1aa3 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/804a1aa3 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/804a1aa3 Branch: refs/heads/KYLIN-2606 Commit: 804a1aa3809e67d8e701f147bee794eec19d57e2 Parents: a8627e8 Author: kangkaisen <kangkai...@live.com> Authored: Wed Jun 28 20:21:52 2017 +0800 Committer: kangkaisen <kangkai...@live.com> Committed: Thu Jun 29 21:03:20 2017 +0800 ---------------------------------------------------------------------- .../java/org/apache/kylin/engine/spark/SparkExecutable.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/804a1aa3/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 1ed2235..1e032c6 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 @@ -23,6 +23,8 @@ import java.util.Map; import org.apache.commons.lang.StringUtils; import org.apache.kylin.common.KylinConfig; import org.apache.kylin.common.util.CliCommandExecutor; +import org.apache.kylin.cube.CubeInstance; +import org.apache.kylin.cube.CubeManager; import org.apache.kylin.job.common.PatternedLogger; import org.apache.kylin.job.exception.ExecuteException; import org.apache.kylin.job.execution.AbstractExecutable; @@ -70,7 +72,10 @@ public class SparkExecutable extends AbstractExecutable { @Override protected ExecuteResult doWork(ExecutableContext context) throws ExecuteException { - final KylinConfig config = context.getConfig(); + String cubeName = this.getParam(SparkCubingByLayer.OPTION_CUBE_NAME.getOpt()); + CubeInstance cube = CubeManager.getInstance(context.getConfig()).getCube(cubeName); + final KylinConfig config = cube.getConfig(); + if (KylinConfig.getSparkHome() == null) { throw new NullPointerException(); }