You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2016/02/19 09:26:34 UTC

kylin git commit: KYLIN-1426: fix the bug: fail to locate kylin.propertiesi during cardinality calculation

Repository: kylin
Updated Branches:
  refs/heads/2.x-staging 6d496d337 -> cd5b0248a


KYLIN-1426: fix the bug: fail to locate kylin.propertiesi during cardinality calculation


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/cd5b0248
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/cd5b0248
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/cd5b0248

Branch: refs/heads/2.x-staging
Commit: cd5b0248a5fbf5ffcd359f7ce1b9b02cb273328a
Parents: 6d496d3
Author: yangzhong <ya...@ebay.com>
Authored: Thu Feb 18 10:21:38 2016 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Fri Feb 19 16:24:42 2016 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/rest/service/CubeService.java  | 7 ++++---
 .../source/hive/cardinality/HiveColumnCardinalityJob.java     | 5 +++++
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/cd5b0248/server/src/main/java/org/apache/kylin/rest/service/CubeService.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/service/CubeService.java b/server/src/main/java/org/apache/kylin/rest/service/CubeService.java
index c3a19f6..5d2776f 100644
--- a/server/src/main/java/org/apache/kylin/rest/service/CubeService.java
+++ b/server/src/main/java/org/apache/kylin/rest/service/CubeService.java
@@ -41,6 +41,7 @@ import org.apache.kylin.engine.EngineFactory;
 import org.apache.kylin.engine.mr.CubingJob;
 import org.apache.kylin.engine.mr.HadoopUtil;
 import org.apache.kylin.engine.mr.common.HadoopShellExecutable;
+import org.apache.kylin.engine.mr.common.MapReduceExecutable;
 import org.apache.kylin.job.exception.JobException;
 import org.apache.kylin.job.execution.DefaultChainedExecutable;
 import org.apache.kylin.job.execution.ExecutableState;
@@ -498,10 +499,10 @@ public class CubeService extends BasicService {
         String outPath = HiveColumnCardinalityJob.OUTPUT_PATH + "/" + tableName;
         String param = "-table " + tableName + " -output " + outPath;
 
-        HadoopShellExecutable step1 = new HadoopShellExecutable();
+        MapReduceExecutable step1 = new MapReduceExecutable();
 
-        step1.setJobClass(HiveColumnCardinalityJob.class);
-        step1.setJobParams(param);
+        step1.setMapReduceJobClass(HiveColumnCardinalityJob.class);
+        step1.setMapReduceParams(param);
 
         job.addTask(step1);
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/cd5b0248/source-hive/src/main/java/org/apache/kylin/source/hive/cardinality/HiveColumnCardinalityJob.java
----------------------------------------------------------------------
diff --git a/source-hive/src/main/java/org/apache/kylin/source/hive/cardinality/HiveColumnCardinalityJob.java b/source-hive/src/main/java/org/apache/kylin/source/hive/cardinality/HiveColumnCardinalityJob.java
index 51eb0ef..70286ab 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/hive/cardinality/HiveColumnCardinalityJob.java
+++ b/source-hive/src/main/java/org/apache/kylin/source/hive/cardinality/HiveColumnCardinalityJob.java
@@ -35,7 +35,9 @@ import org.apache.kylin.engine.mr.MRUtil;
 import org.apache.kylin.engine.mr.common.AbstractHadoopJob;
 import org.apache.kylin.engine.mr.common.BatchConstants;
 import org.apache.kylin.job.engine.JobEngineConfig;
+import org.apache.kylin.metadata.MetadataManager;
 import org.apache.kylin.metadata.model.DataModelDesc;
+import org.apache.kylin.metadata.model.TableDesc;
 
 /**
  * This hadoop job will scan all rows of the hive table and then calculate the cardinality on each column.
@@ -101,6 +103,9 @@ public class HiveColumnCardinalityJob extends AbstractHadoopJob {
             this.deletePath(job.getConfiguration(), output);
 
             logger.info("Going to submit HiveColumnCardinalityJob for table '" + table + "'");
+
+            TableDesc tableDesc = MetadataManager.getInstance(KylinConfig.getInstanceFromEnv()).getTableDesc(table);
+            attachKylinPropsAndMetadata(tableDesc, job.getConfiguration());
             int result = waitForCompletion(job);
 
             return result;