[6/9] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
--
diff --git a/examples/sample_cube/template/cube_desc/kylin_sales_cube.json 
b/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
index eb17922..48eef46 100644
--- a/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
+++ b/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
@@ -6,27 +6,32 @@
   "description" : null,
   "null_string" : null,
   "dimensions" : [ {
+"name" : "TRANS_ID",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "TRANS_ID",
+"derived" : null
+  }, {
 "name" : "CAL_DT",
 "table" : "DEFAULT.KYLIN_CAL_DT",
 "column" : "{FK}",
-"derived" : [ "WEEK_BEG_DT" ]
+"derived" : [ "WEEK_BEG_DT", "MONTH_BEG_DT", "YEAR_BEG_DT" ]
   }, {
 "name" : "CATEGORY",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "{FK}",
 "derived" : [ "USER_DEFINED_FIELD1", "USER_DEFINED_FIELD3" ]
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "META_CATEG_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "META_CATEG_NAME",
 "derived" : null
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "CATEG_LVL2_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "CATEG_LVL2_NAME",
 "derived" : null
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "CATEG_LVL3_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "CATEG_LVL3_NAME",
 "derived" : null
@@ -36,14 +41,54 @@
 "column" : "LSTG_FORMAT_NAME",
 "derived" : null
   }, {
-"name" : "USER_ID",
+"name" : "SELLER_ID",
 "table" : "DEFAULT.KYLIN_SALES",
-"column" : "USER_ID",
+"column" : "SELLER_ID",
 "derived" : null
   }, {
-"name" : "REGION",
+"name" : "BUYER_ID",
 "table" : "DEFAULT.KYLIN_SALES",
-"column" : "REGION",
+"column" : "BUYER_ID",
+"derived" : null
+  }, {
+"name" : "ACCOUNT_BUYER_LEVEL",
+"table" : "BUYER_ACCOUNT",
+"column" : "ACCOUNT_BUYER_LEVEL",
+"derived" : null
+  }, {
+"name" : "ACCOUNT_SELLER_LEVEL",
+"table" : "SELLER_ACCOUNT",
+"column" : "ACCOUNT_SELLER_LEVEL",
+"derived" : null
+  }, {
+"name" : "BUYER_COUNTRY",
+"table" : "BUYER_ACCOUNT",
+"column" : "ACCOUNT_COUNTRY",
+"derived" : null
+  }, {
+"name" : "SELLER_COUNTRY",
+"table" : "SELLER_ACCOUNT",
+"column" : "ACCOUNT_COUNTRY",
+"derived" : null
+  }, {
+"name" : "BUYER_COUNTRY_NAME",
+"table" : "BUYER_COUNTRY",
+"column" : "NAME",
+"derived" : null
+  }, {
+"name" : "SELLER_COUNTRY_NAME",
+"table" : "SELLER_COUNTRY",
+"column" : "NAME",
+"derived" : null
+  }, {
+"name" : "OPS_USER_ID",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "OPS_USER_ID",
+"derived" : null
+  }, {
+"name" : "OPS_REGION",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "OPS_REGION",
 "derived" : null
   } ],
   "measures" : [ {
@@ -56,8 +101,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "GMV_MIN",
 "function" : {
@@ -68,8 +112,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "GMV_MAX",
 "function" : {
@@ -80,8 +123,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "TRANS_CNT",
 "function" : {
@@ -92,8 +134,7 @@
 "next_parameter" : null
   },
   "returntype" : "bigint"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "SELLER_CNT_HLL",
 "function" : {
@@ -104,20 +145,7 @@
 "next_parameter" : null
   },
   "returntype" : "hllc(10)"
-},
-"dependent_measure_ref" : null
-  }, {
-"name" : "SELLER_FORMAT_CNT",
-"function" : {
-  "expression" : "COUNT_DISTINCT",
-  "parameter" : {
-"type" : "column",
-"value" : "LSTG_FORMAT_NAME",
-"next_parameter" : null
-  },
-  "returntype" : "hllc(10)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "TOP_SELLER",
 "function" : {
@@ -132,13 +160,21 @@
 }
   },
   "returntype" : "topn(100)"
-},
-"dependent_measure_ref" : null
+}
   } ],
   "rowkey" : {
 "rowkey_columns" : [ {
+  "column" : "BUYER_ID",
+  "encoding" : "integer:4"
+}, {
+  "column" : "SELLER_ID",
+  "encoding" : "integer:4"
+}, {
+  "column" : "TRANS_ID",
+  "encoding" : "integer:4"
+}, {
   "column" : "PART_DT",
-  "encoding" : "dict"
+  "encoding" : "date"
 }, {
   "column" : "LEAF_CATEG_ID",
   "encoding" : 

[1/9] kylin git commit: KYLIN-1793 Fix exit code issue in beeline mode [Forced Update!]

2016-11-27 Thread liyang
Repository: kylin
Updated Branches:
  refs/heads/KYLIN-1875 7fd1fd924 -> 07322fafd (forced update)


KYLIN-1793 Fix exit code issue in beeline mode


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

Branch: refs/heads/KYLIN-1875
Commit: 99f1dd9d2460566748db2167e69a6a8a7689271d
Parents: 5edffa5
Author: lidongsjtu 
Authored: Mon Nov 28 08:35:05 2016 +0800
Committer: lidongsjtu 
Committed: Mon Nov 28 08:46:35 2016 +0800

--
 .../java/org/apache/kylin/job/DeployUtil.java   |   2 +-
 .../kylin/common/util/HiveCmdBuilder.java   | 114 +++
 .../kylin/common/util/HiveCmdBuilderTest.java   |  80 +
 .../source/hive/CreateFlatHiveTableStep.java|   1 +
 .../kylin/source/hive/HiveCmdBuilder.java   | 113 --
 .../apache/kylin/source/hive/HiveMRInput.java   |   1 +
 .../kylin/source/hive/HiveCmdBuilderTest.java   |  83 --
 .../storage/hbase/steps/DeprecatedGCStep.java   |   2 +-
 .../storage/hbase/util/HiveCmdBuilder.java  | 110 --
 .../storage/hbase/util/StorageCleanupJob.java   |   3 +-
 .../apache/kylin/tool/StorageCleanupJob.java|   2 +-
 11 files changed, 201 insertions(+), 310 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/99f1dd9d/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
--
diff --git a/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java 
b/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
index 79a3b3b..23b3670 100644
--- a/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
+++ b/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
@@ -46,7 +46,7 @@ import org.apache.kylin.metadata.model.TableDesc;
 import org.apache.kylin.metadata.model.TableRef;
 import org.apache.kylin.metadata.model.TblColRef;
 import org.apache.kylin.source.hive.HiveClientFactory;
-import org.apache.kylin.source.hive.HiveCmdBuilder;
+import org.apache.kylin.common.util.HiveCmdBuilder;
 import org.apache.kylin.source.hive.IHiveClient;
 import org.apache.kylin.source.kafka.TimedJsonStreamParser;
 import org.apache.maven.model.Model;

http://git-wip-us.apache.org/repos/asf/kylin/blob/99f1dd9d/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java 
b/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
new file mode 100644
index 000..5942ba9
--- /dev/null
+++ b/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
@@ -0,0 +1,114 @@
+/*
+ * 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.common.util;
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.IOUtils;
+import org.apache.kylin.common.KylinConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.Lists;
+
+public class HiveCmdBuilder {
+private static final Logger logger = 
LoggerFactory.getLogger(HiveCmdBuilder.class);
+
+public enum HiveClientMode {
+CLI, BEELINE
+}
+
+private HiveClientMode clientMode;
+private KylinConfig kylinConfig;
+final private ArrayList statements = Lists.newArrayList();
+
+public HiveCmdBuilder() {
+kylinConfig = KylinConfig.getInstanceFromEnv();
+clientMode = 
HiveClientMode.valueOf(kylinConfig.getHiveClientMode().toUpperCase());
+}
+
+public String build() {
+StringBuffer buf = new StringBuffer();
+
+switch (clientMode) {
+case CLI:

[9/9] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 
'kylin_default_instance'


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

Branch: refs/heads/KYLIN-1875
Commit: 4271f108e4134ccf43034fd4a350cf33cd9d2f17
Parents: 3f10b3a
Author: Yang Li 
Authored: Sun Nov 27 18:26:33 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:22:20 2016 +0800

--
 build/conf/kylin.properties | 2 +-
 .../apache/kylin/common/KylinConfigBase.java|11 +-
 .../kylin/metadata/model/DataModelDesc.java | 3 +
 .../kylin/metadata/model/MeasureDesc.java   | 5 +
 .../realization/IRealizationConstants.java  | 2 +-
 examples/sample_cube/create_sample_tables.sql   |21 +-
 .../sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv  | 1 +
 .../sample_cube/data/DEFAULT.KYLIN_SALES.csv| 2 -
 .../template/cube_desc/kylin_sales_cube.json|   157 +-
 .../template/model_desc/kylin_sales_model.json  |50 +-
 .../template/table/DEFAULT.KYLIN_ACCOUNT.json   |28 +
 .../template/table/DEFAULT.KYLIN_SALES.json |12 +-
 .../test_case_data/sandbox/kylin.properties | 2 +-
 .../apache/kylin/query/relnode/OLAPJoinRel.java |25 +-
 .../kylin/rest/security/AclHBaseStorage.java| 1 -
 .../rest/security/RealAclHBaseStorage.java  | 5 +-
 .../apache/kylin/rest/service/QueryService.java | 6 +-
 .../kylin/storage/hbase/HBaseResourceStore.java | 2 +-
 .../storage/hbase/util/StorageCleanupJob.java   | 2 +-
 .../apache/kylin/tool/StorageCleanupJob.java| 2 +-
 20 files changed, 20246 insertions(+), 10090 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/build/conf/kylin.properties
--
diff --git a/build/conf/kylin.properties b/build/conf/kylin.properties
index 1409394..131a725 100644
--- a/build/conf/kylin.properties
+++ b/build/conf/kylin.properties
@@ -18,7 +18,7 @@
 ### METADATA | ENV ###
 
 # The metadata store in hbase
-kylin.metadata.url=kylin_metadata@hbase
+kylin.metadata.url=kylin_default_instance@hbase
 
 # Working folder in HDFS, make sure user has the right access to the hdfs 
directory
 kylin.env.hdfs-working-dir=/kylin

http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/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 aa5e6e1..7dcc771 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
@@ -188,13 +188,12 @@ abstract public class KylinConfigBase implements 
Serializable {
 }
 
 public String getMetadataUrlPrefix() {
-String hbaseMetadataUrl = getMetadataUrl();
-String defaultPrefix = "kylin_metadata";
+String metadataUrl = getMetadataUrl();
+String defaultPrefix = "kylin_default_instance";
 
-if 
(org.apache.commons.lang3.StringUtils.containsIgnoreCase(hbaseMetadataUrl, 
"@hbase")) {
-int cut = hbaseMetadataUrl.indexOf('@');
-String tmp = cut < 0 ? defaultPrefix : 
hbaseMetadataUrl.substring(0, cut);
-return tmp;
+if (metadataUrl.endsWith("@hbase")) {
+int cut = metadataUrl.lastIndexOf('@');
+return metadataUrl.substring(0, cut);
 } else {
 return defaultPrefix;
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
index c2de5d6..ff92def 100644
--- 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
+++ 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
@@ -378,6 +378,9 @@ public class DataModelDesc extends RootPersistentEntity {
 for (int i = 0; i < pks.length; i++) {
 TblColRef col = dimTable.getColumn(pks[i]);
 if (col == null) {
+col = findColumn(pks[i]);
+}
+if (col == null || col.getTableRef().equals(dimTable) == 
false) {
   

[5/9] kylin git commit: fix UT

2016-11-27 Thread liyang
fix UT


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

Branch: refs/heads/KYLIN-1875
Commit: 07322fafdb1c2475df924d61167cf70806a08020
Parents: 237c763
Author: Li Yang 
Authored: Mon Nov 28 14:22:02 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:22:20 2016 +0800

--
 .../localmeta/cube_desc/test_kylin_snowflake_sales_cube.json | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/07322faf/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
--
diff --git 
a/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
 
b/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
index aa0f874..ee0d68c 100644
--- 
a/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
+++ 
b/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
@@ -260,8 +260,8 @@
   "partition_date_start" : 132537600,
   "auto_merge_time_ranges" : null,
   "retention_range" : 0,
-  "engine_type" : %default_engine_type%,
-  "storage_type" : %default_engine_type%,
+  "engine_type" : 2,
+  "storage_type" : 2,
   "override_kylin_properties" : {
 "kylin.cube.aggrgroup.is-mandatory-only-valid" : "true"
   }



[4/9] kylin git commit: JoinsTree complete, simple query pass

2016-11-27 Thread liyang
JoinsTree complete, simple query pass


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

Branch: refs/heads/KYLIN-1875
Commit: 237c7632a7fd4cb5cfaeaadf028d952a5817c024
Parents: e9ccf5f
Author: Li Yang 
Authored: Mon Nov 28 14:04:39 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:22:20 2016 +0800

--
 .../apache/kylin/dict/DictionaryManager.java|   4 +-
 .../kylin/metadata/model/DataModelDesc.java |  30 +-
 .../apache/kylin/metadata/model/JoinsTree.java  |  61 ++-
 .../kylin/metadata/MetadataManagerTest.java |  11 +-
 .../kylin/metadata/model/JoinsTreeTest.java |  74 
 .../test_kylin_snowflake_sales_cube.json| 268 
 .../test_kylin_snowflake_model_desc.json| 161 
 .../test_kylin_snowflake_sales_model.json   |  87 
 .../localmeta/table/SNOWTEST.KYLIN_ACCOUNT.json |  28 ++
 .../localmeta/table/SNOWTEST.KYLIN_CAL_DT.json  | 408 +++
 .../SNOWTEST.KYLIN_CATEGORY_GROUPINGS.json  | 152 +++
 .../localmeta/table/SNOWTEST.KYLIN_COUNTRY.json |  24 ++
 .../localmeta/table/SNOWTEST.KYLIN_SALES.json   |  56 +++
 .../apache/kylin/query/relnode/OLAPContext.java |   2 +
 .../kylin/query/relnode/OLAPTableScan.java  |   7 +-
 .../kylin/query/routing/ModelChooser.java   |  46 +--
 16 files changed, 1175 insertions(+), 244 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/237c7632/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
index 3c64e45..6178234 100644
--- a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
+++ b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
@@ -339,7 +339,7 @@ public class DictionaryManager {
 
 // find a lookup table that the col joins as FK
 for (TableRef lookup : model.getLookupTables()) {
-JoinDesc lookupJoin = model.getPKSideJoinMap().get(lookup);
+JoinDesc lookupJoin = model.getJoinByPKSide(lookup);
 int find = ArrayUtils.indexOf(lookupJoin.getForeignKeyColumns(), 
col);
 if (find < 0)
 continue;
@@ -358,7 +358,7 @@ public class DictionaryManager {
 return false;
 
 TableRef table = join.getFKSide();
-join = model.getPKSideJoinMap().get(table);
+join = model.getJoinByPKSide(table);
 }
 return true;
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/237c7632/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
index ff92def..d917571 100644
--- 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
+++ 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
@@ -97,8 +97,7 @@ public class DataModelDesc extends RootPersistentEntity {
 private Set allTableRefs = Sets.newLinkedHashSet();
 private Map aliasMap = Maps.newHashMap(); // alias => 
TableRef, a table has exactly one alias
 private Map tableNameMap = Maps.newHashMap(); // name => 
TableRef, a table maybe referenced by multiple names
-private Map pkSideJoinMap = Maps.newHashMap(); // 
table (PK side) => JoinTable
-private Map fkSideJoinMap = Maps.newHashMap(); // 
table (FK side) => JoinDesc
+private JoinsTree joinsTree;
 
 /**
  * Error messages during resolving json metadata
@@ -151,12 +150,12 @@ public class DataModelDesc extends RootPersistentEntity {
 return joinTables;
 }
 
-public Map getPKSideJoinMap() {
-return pkSideJoinMap;
+public JoinDesc getJoinByPKSide(TableRef table) {
+return joinsTree.getJoinByPKSide(table);
 }
-
-public Map getFKSideJoinMap() {
-return fkSideJoinMap;
+
+public JoinsTree getJoinsTree() {
+return joinsTree;
 }
 
 @Deprecated
@@ -282,6 +281,7 @@ public class DataModelDesc extends RootPersistentEntity {
 initJoinTablesForUpgrade();
 initTableAlias(tables);
 initJoinColumns();
+

[2/9] kylin git commit: minor, update 1.6 doc links in README.md

2016-11-27 Thread liyang
minor, update 1.6 doc links in README.md


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

Branch: refs/heads/KYLIN-1875
Commit: 3f10b3a534166f43118caf0564ad521a9fb2632f
Parents: 99f1dd9
Author: lidongsjtu 
Authored: Mon Nov 28 09:02:28 2016 +0800
Committer: lidongsjtu 
Committed: Mon Nov 28 09:02:36 2016 +0800

--
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/3f10b3a5/README.md
--
diff --git a/README.md b/README.md
index e72bd56..06e5ba4 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ For more details, see the website 
[http://kylin.apache.org](http://kylin.apache.
 
 Documentation
 =
-Please refer to 
[http://kylin.apache.org/docs15/](http://kylin.apache.org/docs15/).
+Please refer to 
[http://kylin.apache.org/docs16/](http://kylin.apache.org/docs16/).
 
 Get Help
 



[8/9] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
--
diff --git a/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv 
b/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
new file mode 100644
index 000..253afbf
--- /dev/null
+++ b/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
@@ -0,0 +1,1 @@
+1000,1,4,FR,N/A
+1001,0,1,DE,N/A
+1002,0,1,IT,N/A
+1003,4,2,DE,N/A
+1004,2,3,JP,N/A
+1005,0,1,CN,N/A
+1006,2,3,JP,N/A
+1007,0,2,GB,N/A
+1008,5,3,US,N/A
+1009,1,3,US,N/A
+1010,1,1,IT,N/A
+1011,2,4,FR,N/A
+1012,3,1,CN,N/A
+1013,1,1,FR,N/A
+1014,5,3,CN,N/A
+1015,3,5,IT,N/A
+1016,4,5,JP,N/A
+1017,3,4,US,N/A
+1018,0,5,CN,N/A
+1019,4,4,GB,N/A
+1020,4,4,IT,N/A
+1021,1,2,FR,N/A
+1022,2,2,DE,N/A
+1023,0,1,GB,N/A
+1024,3,4,IT,N/A
+1025,4,4,JP,N/A
+1026,5,4,IT,N/A
+1027,2,4,FR,N/A
+1028,2,2,GB,N/A
+1029,1,1,GB,N/A
+1030,5,5,CN,N/A
+1031,4,2,CN,N/A
+1032,1,3,CN,N/A
+1033,2,1,JP,N/A
+1034,2,1,JP,N/A
+1035,4,2,US,N/A
+1036,5,4,DE,N/A
+1037,2,4,DE,N/A
+1038,1,3,US,N/A
+1039,3,5,US,N/A
+1040,2,3,GB,N/A
+1041,1,5,IT,N/A
+1042,5,5,CN,N/A
+1043,5,1,IT,N/A
+1044,3,4,IT,N/A
+1045,1,3,US,N/A
+1046,3,3,JP,N/A
+1047,2,2,FR,N/A
+1048,5,4,JP,N/A
+1049,3,1,JP,N/A
+1050,3,5,JP,N/A
+1051,5,1,US,N/A
+1052,3,5,DE,N/A
+1053,1,3,JP,N/A
+1054,5,1,GB,N/A
+1055,2,1,GB,N/A
+1056,2,3,CN,N/A
+1057,1,5,US,N/A
+1058,2,2,CN,N/A
+1059,2,4,FR,N/A
+1060,0,3,FR,N/A
+1061,0,5,FR,N/A
+1062,1,1,US,N/A
+1063,4,5,DE,N/A
+1064,2,5,GB,N/A
+1065,0,3,GB,N/A
+1066,1,1,IT,N/A
+1067,0,2,GB,N/A
+1068,4,1,IT,N/A
+1069,0,4,FR,N/A
+1070,3,4,CN,N/A
+1071,3,5,GB,N/A
+1072,4,3,CN,N/A
+1073,0,4,IT,N/A
+1074,5,3,GB,N/A
+1075,0,4,JP,N/A
+1076,2,5,JP,N/A
+1077,0,3,CN,N/A
+1078,4,3,GB,N/A
+1079,4,5,US,N/A
+1080,4,2,JP,N/A
+1081,5,2,CN,N/A
+1082,4,1,JP,N/A
+1083,0,4,GB,N/A
+1084,1,4,DE,N/A
+1085,4,4,FR,N/A
+1086,2,5,JP,N/A
+1087,0,1,IT,N/A
+1088,0,2,FR,N/A
+1089,3,2,DE,N/A
+1090,5,2,IT,N/A
+1091,0,3,GB,N/A
+1092,1,4,DE,N/A
+1093,2,1,IT,N/A
+1094,4,3,JP,N/A
+1095,1,1,DE,N/A
+1096,0,5,JP,N/A
+1097,3,3,CN,N/A
+1098,5,3,JP,N/A
+1099,3,1,GB,N/A
+1100,5,1,CN,N/A
+1101,2,3,JP,N/A
+1102,5,1,IT,N/A
+1103,5,2,GB,N/A
+1104,3,5,GB,N/A
+1105,3,1,DE,N/A
+1106,3,5,GB,N/A
+1107,5,3,DE,N/A
+1108,4,1,CN,N/A
+1109,4,3,GB,N/A
+1110,4,1,FR,N/A
+1111,3,5,FR,N/A
+1112,1,1,GB,N/A
+1113,5,4,FR,N/A
+1114,2,2,DE,N/A
+1115,4,3,GB,N/A
+1116,0,3,FR,N/A
+1117,1,4,CN,N/A
+1118,4,4,IT,N/A
+1119,0,2,CN,N/A
+1120,5,2,DE,N/A
+1121,0,2,GB,N/A
+1122,4,3,CN,N/A
+1123,1,4,FR,N/A
+1124,0,2,CN,N/A
+1125,4,5,US,N/A
+1126,0,4,GB,N/A
+1127,4,3,CN,N/A
+1128,4,3,GB,N/A
+1129,1,4,JP,N/A
+1130,2,2,JP,N/A
+1131,0,3,IT,N/A
+1132,4,1,GB,N/A
+1133,1,5,US,N/A
+1134,3,3,DE,N/A
+1135,3,2,IT,N/A
+1136,2,2,JP,N/A
+1137,0,3,CN,N/A
+1138,3,1,FR,N/A
+1139,2,3,FR,N/A
+1140,3,1,IT,N/A
+1141,0,3,US,N/A
+1142,3,4,FR,N/A
+1143,4,5,DE,N/A
+1144,3,3,JP,N/A
+1145,5,5,DE,N/A
+1146,2,5,FR,N/A
+1147,0,5,IT,N/A
+1148,2,5,US,N/A
+1149,0,3,CN,N/A
+1150,2,2,GB,N/A
+1151,5,5,CN,N/A
+1152,2,2,IT,N/A
+1153,3,2,FR,N/A
+1154,5,4,FR,N/A
+1155,3,5,FR,N/A
+1156,5,2,GB,N/A
+1157,1,2,IT,N/A
+1158,3,3,JP,N/A
+1159,5,1,IT,N/A
+1160,3,4,CN,N/A
+1161,2,5,IT,N/A
+1162,4,5,CN,N/A
+1163,3,5,FR,N/A
+1164,1,2,FR,N/A
+1165,0,3,GB,N/A
+1166,5,4,CN,N/A
+1167,4,5,IT,N/A
+1168,3,2,IT,N/A
+1169,3,2,DE,N/A
+1170,2,2,DE,N/A
+1171,3,1,IT,N/A
+1172,3,1,IT,N/A
+1173,3,5,CN,N/A
+1174,5,2,US,N/A
+1175,2,3,FR,N/A
+1176,5,5,JP,N/A
+1177,1,4,DE,N/A
+1178,4,5,GB,N/A
+1179,5,3,FR,N/A
+1180,2,3,GB,N/A
+1181,0,3,IT,N/A
+1182,3,2,JP,N/A
+1183,5,5,IT,N/A
+1184,4,1,IT,N/A
+1185,3,2,IT,N/A
+1186,3,2,CN,N/A
+1187,2,5,IT,N/A
+1188,3,2,JP,N/A
+1189,4,4,IT,N/A
+1190,4,3,GB,N/A
+1191,3,4,JP,N/A
+1192,2,2,FR,N/A
+1193,5,1,FR,N/A
+1194,5,2,US,N/A
+1195,2,5,FR,N/A
+1196,1,2,FR,N/A
+1197,5,3,FR,N/A
+1198,1,4,GB,N/A
+1199,1,3,FR,N/A
+1200,4,5,IT,N/A
+1201,3,1,GB,N/A
+1202,0,3,GB,N/A
+1203,4,3,DE,N/A
+1204,4,2,GB,N/A
+1205,4,2,DE,N/A
+1206,5,2,GB,N/A
+1207,1,5,DE,N/A
+1208,4,5,GB,N/A
+1209,0,3,FR,N/A
+1210,1,5,FR,N/A
+1211,3,2,DE,N/A
+1212,5,1,JP,N/A
+1213,0,4,CN,N/A
+1214,3,1,JP,N/A
+1215,5,1,CN,N/A
+1216,4,2,FR,N/A

[7/9] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/4271f108/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
--
diff --git a/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv 
b/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
index d8158ec..7349b37 100644
--- a/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
+++ b/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
@@ -1,1 +1,1 @@
-0,2012-12-14,Others,88750,0,11,36.2828,0,1349,US,JP,ANALYST,Beijing
-1,2012-08-28,Others,175750,0,13,23.8563,0,1927,JP,JP,ANALYST,Beijing
-2,2012-02-16,ABIN,148324,15,13,88.3418,0,1005,DE,FR,ADMIN,Shanghai
-3,2013-10-19,FP-non GTC,37831,0,13,47.3015,0,1209,UK,UK,ANALYST,Beijing
-4,2012-10-22,Others,140746,100,11,83.454,0,1154,JP,CN,ADMIN,Shanghai
-5,2013-01-25,FP-GTC,16509,0,-99,22.9896,0,1372,DE,UK,ADMIN,Shanghai
-6,2013-04-04,Others,963,0,13,88.5907,0,1648,US,JP,MODELER,Hongkong
-7,2012-04-11,Others,15687,0,15,88.194,0,1866,US,UK,ADMIN,Shanghai
-8,2013-01-19,ABIN,60606,3,13,77.9727,0,1936,FR,CN,MODELER,Hongkong
-9,2012-04-30,FP-non GTC,106246,0,14,52.295,0,1047,CN,FR,MODELER,Hongkong
-10,2013-02-03,Auction,45333,0,16,56.3584,0,1470,UK,JP,MODELER,Hongkong
-11,2012-09-02,FP-GTC,25147,0,-99,15.3553,0,1203,US,UK,ANALYST,Beijing
-12,2013-07-30,Others,24760,0,16,25.077,0,1382,CN,JP,ADMIN,Shanghai
-13,2012-04-17,Auction,31519,0,16,72.7384,0,1069,CN,JP,ADMIN,Shanghai
-14,2013-04-30,FP-GTC,51582,0,15,75.82,0,1085,CN,DE,ANALYST,Beijing
-15,2013-03-23,FP-GTC,16509,0,15,8.6653,0,1559,US,FR,MODELER,Hongkong
-16,2013-04-01,ABIN,175750,3,16,64.2802,0,1507,JP,CN,MODELER,Hongkong
-17,2013-07-12,ABIN,50677,0,-99,24.5987,0,1938,UK,FR,ADMIN,Shanghai
-18,2012-04-23,FP-GTC,45333,0,5,72.6553,0,1863,CN,CN,MODELER,Hongkong
-19,2012-12-19,ABIN,3838,0,12,87.4142,0,1612,DE,JP,ADMIN,Shanghai
-20,2012-08-15,FP-GTC,62179,0,16,67.4238,0,1839,JP,US,MODELER,Hongkong
-21,2013-08-22,Auction,1357,0,5,18.36,0,1303,CN,JP,ANALYST,Beijing
-22,2013-08-23,ABIN,31519,0,5,67.6344,0,1877,FR,JP,ANALYST,Beijing
-23,2013-09-12,FP-GTC,223,0,14,71.7898,0,1848,US,CN,MODELER,Hongkong
-24,2012-03-14,FP-GTC,132939,0,15,26.1496,0,1815,JP,DE,MODELER,Hongkong
-25,2013-07-13,Others,67703,3,16,83.9661,0,1858,CN,CN,MODELER,Hongkong
-26,2013-12-15,FP-non GTC,100847,0,5,34.3451,0,1387,CN,CN,ADMIN,Shanghai
-27,2012-08-30,Auction,62179,0,11,21.0496,0,1393,JP,FR,ANALYST,Beijing
-28,2013-01-10,FP-GTC,48027,0,13,23.4142,0,1757,FR,FR,MODELER,Hongkong
-29,2013-01-25,ABIN,145970,0,5,26.7842,0,1402,DE,CN,ANALYST,Beijing
-30,2012-07-05,Auction,48027,0,-99,46.732,0,1972,DE,UK,MODELER,Hongkong
-31,2012-11-07,FP-GTC,20213,0,-99,19.727,0,1873,UK,CN,ANALYST,Beijing
-32,2013-06-20,ABIN,100847,0,5,76.2783,0,1409,CN,DE,ADMIN,Shanghai
-33,2012-10-08,ABIN,26262,0,5,48.7447,0,1029,CN,FR,ADMIN,Shanghai
-34,2013-04-30,ABIN,87118,0,15,63.2187,0,1529,FR,DE,ANALYST,Beijing
-35,2013-04-24,FP-non GTC,20213,0,16,39.5057,0,1329,JP,FR,ANALYST,Beijing
-36,2012-05-13,Others,164261,0,13,84.1246,0,1688,CN,GB,ADMIN,Shanghai
-37,2013-08-02,ABIN,31519,0,5,37.1504,0,1905,FR,DE,MODELER,Hongkong
-38,2012-04-03,Auction,164261,0,11,92.0974,0,1341,CN,UK,ADMIN,Shanghai
-39,2012-09-02,FP-GTC,31519,0,14,87.7829,0,1460,DE,UK,ANALYST,Beijing
-40,2013-10-05,ABIN,13987,0,16,74.0719,0,1381,CN,UK,MODELER,Hongkong
-41,2012-01-13,FP-GTC,48027,0,15,71.2637,0,1915,UK,CN,ADMIN,Shanghai
-42,2013-03-01,Others,13836,0,14,16.7288,0,1953,CN,UK,ADMIN,Shanghai
-43,2012-09-12,FP-non GTC,16509,0,5,12.2933,0,1277,FR,CN,MODELER,Hongkong
-44,2012-02-07,Auction,45333,0,5,64.977,0,1040,FR,JP,MODELER,Hongkong
-45,2013-12-14,FP-non GTC,158798,0,16,72.4413,0,1500,DE,CN,MODELER,Hongkong
-46,2013-10-13,Auction,31519,0,5,79.3053,0,1816,CN,JP,MODELER,Hongkong
-47,2012-06-11,ABIN,4943,0,5,11.6942,0,1696,US,UK,ANALYST,Beijing
-48,2012-10-18,ABIN,80053,0,-99,54.0933,0,1604,FR,JP,MODELER,Hongkong
-49,2012-11-03,Auction,20886,0,5,9.8258,0,1764,US,CN,MODELER,Hongkong
-50,2012-01-15,Auction,44079,0,14,13.0371,0,1343,CN,US,MODELER,Hongkong
-51,2012-07-03,FP-GTC,159184,0,-99,92.5314,0,1724,CN,GB,ADMIN,Shanghai
-52,2012-02-16,FP-GTC,314,0,13,49.1825,0,1334,JP,CN,ADMIN,Shanghai
-53,2012-06-17,FP-non GTC,31387,3,12,0.6677,0,1603,JP,JP,ANALYST,Beijing
-54,2012-07-15,FP-non GTC,32876,0,-99,50.9634,0,1248,CN,UK,ANALYST,Beijing
-55,2012-07-24,FP-GTC,150265,15,16,57.5645,0,1653,CN,CN,ADMIN,Shanghai
-56,2012-10-06,Auction,145970,0,5,44.3091,0,1082,JP,DE,ADMIN,Shanghai
-57,2013-06-14,ABIN,80053,0,5,20.2388,0,1632,JP,UK,MODELER,Hongkong
-58,2013-10-10,FP-non GTC,15868,0,11,28.629,0,1523,US,FR,MODELER,Hongkong
-59,2012-09-30,ABIN,31673,0,12,75.8658,0,1719,CN,FR,ADMIN,Shanghai
-60,2012-04-02,FP-GTC,63861,0,5,25.8748,0,1311,JP,FR,ANALYST,Beijing

[3/9] kylin git commit: add JoinsTree, halfway

2016-11-27 Thread liyang
add JoinsTree, halfway


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

Branch: refs/heads/KYLIN-1875
Commit: e9ccf5f708b51c9c282bbf7a96c974f95c711feb
Parents: 4271f10
Author: Yang Li 
Authored: Mon Nov 28 07:49:11 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:22:20 2016 +0800

--
 .../apache/kylin/dict/DictionaryManager.java|   2 +-
 .../apache/kylin/metadata/model/JoinDesc.java   |  11 ++
 .../apache/kylin/metadata/model/JoinsTree.java  | 113 +++
 .../apache/kylin/metadata/model/TblColRef.java  |   4 +
 4 files changed, 129 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/e9ccf5f7/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
index 820299c..3c64e45 100644
--- a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
+++ b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
@@ -357,7 +357,7 @@ public class DictionaryManager {
 if (join.isInnerJoin() == false)
 return false;
 
-TableRef table = join.getForeignKeyColumns()[0].getTableRef();
+TableRef table = join.getFKSide();
 join = model.getPKSideJoinMap().get(table);
 }
 return true;

http://git-wip-us.apache.org/repos/asf/kylin/blob/e9ccf5f7/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
index d3c0745..6489244 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
@@ -110,6 +110,14 @@ public class JoinDesc {
 Preconditions.checkState(tableRef == cols[i].getTableRef());
 }
 
+public TableRef getPKSide() {
+return primaryKeyColumns[0].getTableRef();
+}
+
+public TableRef getFKSide() {
+return foreignKeyColumns[0].getTableRef();
+}
+
 public void sortByFK() {
 Preconditions.checkState(primaryKey.length == foreignKey.length && 
primaryKey.length == primaryKeyColumns.length && foreignKey.length == 
foreignKeyColumns.length);
 boolean cont = true;
@@ -174,6 +182,9 @@ public class JoinDesc {
 
 // equals() without alias
 public boolean matches(JoinDesc other) {
+if (other == null)
+return false;
+
 if (!this.type.equalsIgnoreCase(other.getType()))
 return false;
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/e9ccf5f7/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
new file mode 100644
index 000..0317a3d
--- /dev/null
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
@@ -0,0 +1,113 @@
+/*
+ * 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.metadata.model;
+
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import com.google.common.base.Preconditions;
+
+public class JoinsTree {
+
+final private Chain root;
+final private Map tableChains = new 

kylin git commit: fix UT

2016-11-27 Thread liyang
Repository: kylin
Updated Branches:
  refs/heads/KYLIN-1875 ee80fa23b -> 7fd1fd924


fix UT


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

Branch: refs/heads/KYLIN-1875
Commit: 7fd1fd9249f4b2e87d2499b16866d7ed7fc86c53
Parents: ee80fa2
Author: Li Yang 
Authored: Mon Nov 28 14:22:02 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:22:02 2016 +0800

--
 .../localmeta/cube_desc/test_kylin_snowflake_sales_cube.json | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/7fd1fd92/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
--
diff --git 
a/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
 
b/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
index aa0f874..ee0d68c 100644
--- 
a/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
+++ 
b/examples/test_case_data/localmeta/cube_desc/test_kylin_snowflake_sales_cube.json
@@ -260,8 +260,8 @@
   "partition_date_start" : 132537600,
   "auto_merge_time_ranges" : null,
   "retention_range" : 0,
-  "engine_type" : %default_engine_type%,
-  "storage_type" : %default_engine_type%,
+  "engine_type" : 2,
+  "storage_type" : 2,
   "override_kylin_properties" : {
 "kylin.cube.aggrgroup.is-mandatory-only-valid" : "true"
   }



kylin git commit: JoinsTree complete, simple query pass

2016-11-27 Thread liyang
Repository: kylin
Updated Branches:
  refs/heads/KYLIN-1875 e9139f0c4 -> ee80fa23b


JoinsTree complete, simple query pass


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

Branch: refs/heads/KYLIN-1875
Commit: ee80fa23b22b19ed722b6e5487ac85b5d1ee971b
Parents: e9139f0
Author: Li Yang 
Authored: Mon Nov 28 14:04:39 2016 +0800
Committer: Li Yang 
Committed: Mon Nov 28 14:04:39 2016 +0800

--
 .../apache/kylin/dict/DictionaryManager.java|   4 +-
 .../kylin/metadata/model/DataModelDesc.java |  30 +-
 .../apache/kylin/metadata/model/JoinsTree.java  |  61 ++-
 .../kylin/metadata/MetadataManagerTest.java |  11 +-
 .../kylin/metadata/model/JoinsTreeTest.java |  74 
 .../test_kylin_snowflake_sales_cube.json| 268 
 .../test_kylin_snowflake_model_desc.json| 161 
 .../test_kylin_snowflake_sales_model.json   |  87 
 .../localmeta/table/SNOWTEST.KYLIN_ACCOUNT.json |  28 ++
 .../localmeta/table/SNOWTEST.KYLIN_CAL_DT.json  | 408 +++
 .../SNOWTEST.KYLIN_CATEGORY_GROUPINGS.json  | 152 +++
 .../localmeta/table/SNOWTEST.KYLIN_COUNTRY.json |  24 ++
 .../localmeta/table/SNOWTEST.KYLIN_SALES.json   |  56 +++
 .../apache/kylin/query/relnode/OLAPContext.java |   2 +
 .../kylin/query/relnode/OLAPTableScan.java  |   7 +-
 .../kylin/query/routing/ModelChooser.java   |  46 +--
 16 files changed, 1175 insertions(+), 244 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/ee80fa23/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
index 3c64e45..6178234 100644
--- a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
+++ b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
@@ -339,7 +339,7 @@ public class DictionaryManager {
 
 // find a lookup table that the col joins as FK
 for (TableRef lookup : model.getLookupTables()) {
-JoinDesc lookupJoin = model.getPKSideJoinMap().get(lookup);
+JoinDesc lookupJoin = model.getJoinByPKSide(lookup);
 int find = ArrayUtils.indexOf(lookupJoin.getForeignKeyColumns(), 
col);
 if (find < 0)
 continue;
@@ -358,7 +358,7 @@ public class DictionaryManager {
 return false;
 
 TableRef table = join.getFKSide();
-join = model.getPKSideJoinMap().get(table);
+join = model.getJoinByPKSide(table);
 }
 return true;
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/ee80fa23/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
index ff92def..d917571 100644
--- 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
+++ 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
@@ -97,8 +97,7 @@ public class DataModelDesc extends RootPersistentEntity {
 private Set allTableRefs = Sets.newLinkedHashSet();
 private Map aliasMap = Maps.newHashMap(); // alias => 
TableRef, a table has exactly one alias
 private Map tableNameMap = Maps.newHashMap(); // name => 
TableRef, a table maybe referenced by multiple names
-private Map pkSideJoinMap = Maps.newHashMap(); // 
table (PK side) => JoinTable
-private Map fkSideJoinMap = Maps.newHashMap(); // 
table (FK side) => JoinDesc
+private JoinsTree joinsTree;
 
 /**
  * Error messages during resolving json metadata
@@ -151,12 +150,12 @@ public class DataModelDesc extends RootPersistentEntity {
 return joinTables;
 }
 
-public Map getPKSideJoinMap() {
-return pkSideJoinMap;
+public JoinDesc getJoinByPKSide(TableRef table) {
+return joinsTree.getJoinByPKSide(table);
 }
-
-public Map getFKSideJoinMap() {
-return fkSideJoinMap;
+
+public JoinsTree getJoinsTree() {
+return joinsTree;
 }
 
 @Deprecated
@@ -282,6 +281,7 @@ public class DataModelDesc extends RootPersistentEntity {
 

svn commit: r1771677 [1/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Author: lidong
Date: Mon Nov 28 03:54:52 2016
New Revision: 1771677

URL: http://svn.apache.org/viewvc?rev=1771677=rev
Log:
update doc for 1.6.0 release

Modified:
kylin/site/cn/docs15/index.html
kylin/site/cn/docs16/index.html
kylin/site/cn/docs16/install/index.html
kylin/site/cn/docs16/install/manual_install_guide.html
kylin/site/cn/docs16/tutorial/acl.html
kylin/site/cn/docs16/tutorial/create_cube.html
kylin/site/cn/docs16/tutorial/cube_build_job.html
kylin/site/cn/docs16/tutorial/kylin_client_tool.html
kylin/site/cn/docs16/tutorial/odbc.html
kylin/site/cn/docs16/tutorial/powerbi.html
kylin/site/cn/docs16/tutorial/tableau.html
kylin/site/cn/docs16/tutorial/tableau_91.html
kylin/site/cn/docs16/tutorial/web.html
kylin/site/cn/download/index.html
kylin/site/docs15/index.html
kylin/site/docs16/gettingstarted/best_practices.html
kylin/site/docs16/gettingstarted/concepts.html
kylin/site/docs16/gettingstarted/events.html
kylin/site/docs16/gettingstarted/faq.html
kylin/site/docs16/gettingstarted/terminology.html
kylin/site/docs16/howto/howto_backup_metadata.html
kylin/site/docs16/howto/howto_build_cube_with_restapi.html
kylin/site/docs16/howto/howto_cleanup_storage.html
kylin/site/docs16/howto/howto_jdbc.html
kylin/site/docs16/howto/howto_ldap_and_sso.html
kylin/site/docs16/howto/howto_optimize_cubes.html
kylin/site/docs16/howto/howto_update_coprocessor.html
kylin/site/docs16/howto/howto_upgrade.html
kylin/site/docs16/howto/howto_use_beeline.html
kylin/site/docs16/howto/howto_use_restapi.html
kylin/site/docs16/howto/howto_use_restapi_in_js.html
kylin/site/docs16/index.html
kylin/site/docs16/install/advance_settings.html
kylin/site/docs16/install/hadoop_env.html
kylin/site/docs16/install/index.html
kylin/site/docs16/install/kylin_cluster.html
kylin/site/docs16/install/kylin_docker.html
kylin/site/docs16/release_notes.html
kylin/site/docs16/tutorial/acl.html
kylin/site/docs16/tutorial/create_cube.html
kylin/site/docs16/tutorial/cube_build_job.html
kylin/site/docs16/tutorial/cube_streaming.html
kylin/site/docs16/tutorial/kylin_sample.html
kylin/site/docs16/tutorial/odbc.html
kylin/site/docs16/tutorial/powerbi.html
kylin/site/docs16/tutorial/tableau.html
kylin/site/docs16/tutorial/tableau_91.html
kylin/site/docs16/tutorial/web.html
kylin/site/download/index.html
kylin/site/feed.xml
kylin/site/index.html

Modified: kylin/site/cn/docs15/index.html
URL: 
http://svn.apache.org/viewvc/kylin/site/cn/docs15/index.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/cn/docs15/index.html (original)
+++ kylin/site/cn/docs15/index.html Mon Nov 28 03:54:52 2016
@@ -1184,7 +1184,11 @@
 
 Apache 
Kylin™是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持è¶
…大规模数据,最初由eBay Inc.开发并贡献至开源社区。
 
-查看旧版本文档: v1.3
+查看旧版本文档:
+
+
+  v1.3.x
+
 
 安装
 请参考安装文档以安装Apache Kylin: 安装向导

Modified: kylin/site/cn/docs16/index.html
URL: 
http://svn.apache.org/viewvc/kylin/site/cn/docs16/index.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/cn/docs16/index.html (original)
+++ kylin/site/cn/docs16/index.html Mon Nov 28 03:54:52 2016
@@ -172,1003 +172,6 @@
 
 
 
-开始
-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  概述  
-  
-
-
-
-
-
-
-
-
-  
-
-
-安装

-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  手动安装指南   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-教程
-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
- 

svn commit: r1771677 [8/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Modified: kylin/site/docs16/tutorial/tableau_91.html
URL: 
http://svn.apache.org/viewvc/kylin/site/docs16/tutorial/tableau_91.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/docs16/tutorial/tableau_91.html (original)
+++ kylin/site/docs16/tutorial/tableau_91.html Mon Nov 28 03:54:52 2016
@@ -175,1921 +175,6 @@
 
 
 
-Getting Started
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Overview  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Apache Kylin Release Notes  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  FAQ  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  Events and 
Conferences  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  Community Best 
Practices  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Terminology  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  Technical Concepts   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-Installation
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Installation Guide  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Hadoop Environment  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Deploy in Cluster 
Mode  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Advance Settings 
 
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Run Kylin with 
Docker  
-  
-
-
-
-
-
-
-
-
-  
-
-
-Tutorial
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Quick Start with Sample 
Cube  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube Creation  

-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-  

svn commit: r1771677 [6/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Modified: kylin/site/docs16/release_notes.html
URL: 
http://svn.apache.org/viewvc/kylin/site/docs16/release_notes.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/docs16/release_notes.html (original)
+++ kylin/site/docs16/release_notes.html Mon Nov 28 03:54:52 2016
@@ -175,1921 +175,6 @@
 
 
 
-Getting Started
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Overview  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Apache Kylin Release Notes  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  FAQ  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  Events and 
Conferences  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  Community Best 
Practices  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Terminology  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  Technical Concepts   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-Installation
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Installation Guide  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Hadoop Environment  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Deploy in Cluster 
Mode  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Advance Settings 
 
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Run Kylin with 
Docker  
-  
-
-
-
-
-
-
-
-
-  
-
-
-Tutorial
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Quick Start with Sample 
Cube  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube Creation  

-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-

svn commit: r1771677 [3/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Modified: kylin/site/docs16/gettingstarted/terminology.html
URL: 
http://svn.apache.org/viewvc/kylin/site/docs16/gettingstarted/terminology.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/docs16/gettingstarted/terminology.html (original)
+++ kylin/site/docs16/gettingstarted/terminology.html Mon Nov 28 03:54:52 2016
@@ -175,1921 +175,6 @@
 
 
 
-Getting Started
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Overview  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Apache Kylin Release Notes  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  FAQ  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  Events and 
Conferences  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  Community Best 
Practices  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Terminology  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  Technical Concepts   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-Installation
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Installation Guide  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Hadoop Environment  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Deploy in Cluster 
Mode  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Advance Settings 
 
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Run Kylin with 
Docker  
-  
-
-
-
-
-
-
-
-
-  
-
-
-Tutorial
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Quick Start with Sample 
Cube  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube Creation  

-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-

svn commit: r1771677 [2/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Modified: kylin/site/cn/docs16/tutorial/tableau_91.html
URL: 
http://svn.apache.org/viewvc/kylin/site/cn/docs16/tutorial/tableau_91.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/cn/docs16/tutorial/tableau_91.html (original)
+++ kylin/site/cn/docs16/tutorial/tableau_91.html Mon Nov 28 03:54:52 2016
@@ -172,1003 +172,6 @@
 
 
 
-开始
-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  概述  
-  
-
-
-
-
-
-
-
-
-  
-
-
-安装

-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  手动安装指南   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-教程
-
-   
-
-
-
-
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube 
建立和Job监控教程  
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube 权限授予教程  
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin网页版教程  
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Tableau教程  
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Tableau 9 教程 
 
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  微软Excel及Power 
BI教程  
-  
-
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
- 

svn commit: r1771677 [7/8] - in /kylin/site: ./ cn/docs15/ cn/docs16/ cn/docs16/install/ cn/docs16/tutorial/ cn/download/ docs15/ docs16/ docs16/gettingstarted/ docs16/howto/ docs16/install/ docs16/tu

2016-11-27 Thread lidong
Modified: kylin/site/docs16/tutorial/cube_build_job.html
URL: 
http://svn.apache.org/viewvc/kylin/site/docs16/tutorial/cube_build_job.html?rev=1771677=1771676=1771677=diff
==
--- kylin/site/docs16/tutorial/cube_build_job.html (original)
+++ kylin/site/docs16/tutorial/cube_build_job.html Mon Nov 28 03:54:52 2016
@@ -175,1921 +175,6 @@
 
 
 
-Getting Started
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Overview  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Apache Kylin Release Notes  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  FAQ  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  Events and 
Conferences  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  Community Best 
Practices  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Terminology  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  Technical Concepts   
   
-  
-
-
-
-
-
-
-
-
-  
-
-
-Installation
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Installation Guide  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Hadoop Environment  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Deploy in Cluster 
Mode  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Advance Settings 
 
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Run Kylin with 
Docker  
-  
-
-
-
-
-
-
-
-
-  
-
-
-Tutorial
-
-   
-
-
-
-
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Quick Start with Sample 
Cube  
-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  Kylin Cube Creation  

-  
-
-
-
-  
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-
-  
-

svn commit: r1771676 - /kylin/site/download/KylinODBCDriver-1.6.zip

2016-11-27 Thread lidong
Author: lidong
Date: Mon Nov 28 03:43:03 2016
New Revision: 1771676

URL: http://svn.apache.org/viewvc?rev=1771676=rev
Log:
ODBC Driver 1.6 download

Added:
kylin/site/download/KylinODBCDriver-1.6.zip   (with props)

Added: kylin/site/download/KylinODBCDriver-1.6.zip
URL: 
http://svn.apache.org/viewvc/kylin/site/download/KylinODBCDriver-1.6.zip?rev=1771676=auto
==
Binary file - no diff available.

Propchange: kylin/site/download/KylinODBCDriver-1.6.zip
--
svn:mime-type = application/octet-stream




svn commit: r1771675 - in /kylin/site: cn/download/index.html download/index.html feed.xml

2016-11-27 Thread lidong
Author: lidong
Date: Mon Nov 28 03:41:05 2016
New Revision: 1771675

URL: http://svn.apache.org/viewvc?rev=1771675=rev
Log:
Update download for ODBC Driver 1.6

Modified:
kylin/site/cn/download/index.html
kylin/site/download/index.html
kylin/site/feed.xml

Modified: kylin/site/cn/download/index.html
URL: 
http://svn.apache.org/viewvc/kylin/site/cn/download/index.html?rev=1771675=1771674=1771675=diff
==
--- kylin/site/cn/download/index.html (original)
+++ kylin/site/cn/download/index.html Mon Nov 28 03:41:05 2016
@@ -197,10 +197,12 @@
 
 ODBC Driver
 
-  http://kylin.apache.org/download/KylinODBCDriver-1.5.zip;>Kylin 
ODBC 驱动 v1.5 
-Kylin ODBC 驱动要求首先安装http://www.microsoft.com/en-us/download/details.aspx?id=30679;>Microsoft 
Visual C++ 2012 Redistributable.
+  http://kylin.apache.org/download/KylinODBCDriver-1.6.zip;>Kylin 
ODBC 驱动 v1.6
+  http://kylin.apache.org/download/KylinODBCDriver-1.5.zip;>Kylin 
ODBC 驱动 v1.5
 
 
+Kylin ODBC 驱动要求首先安装http://www.microsoft.com/en-us/download/details.aspx?id=30679;>Microsoft 
Visual C++ 2012 Redistributable.
+
 
   
 

Modified: kylin/site/download/index.html
URL: 
http://svn.apache.org/viewvc/kylin/site/download/index.html?rev=1771675=1771674=1771675=diff
==
--- kylin/site/download/index.html (original)
+++ kylin/site/download/index.html Mon Nov 28 03:41:05 2016
@@ -200,10 +200,12 @@ You can verify your download by followin
 
 ODBC Driver
 
-  http://kylin.apache.org/download/KylinODBCDriver-1.5.zip;>Kylin 
ODBC Driver v1.5
-Please note, it requires http://www.microsoft.com/en-us/download/details.aspx?id=30679;>Microsoft 
Visual C++ 2012 Redistributable installed first.
+  http://kylin.apache.org/download/KylinODBCDriver-1.6.zip;>Kylin 
ODBC Driver v1.6
+  http://kylin.apache.org/download/KylinODBCDriver-1.5.zip;>Kylin 
ODBC Driver v1.5
 
 
+Please note, it requires http://www.microsoft.com/en-us/download/details.aspx?id=30679;>Microsoft 
Visual C++ 2012 Redistributable installed first.
+
 
 
   

Modified: kylin/site/feed.xml
URL: 
http://svn.apache.org/viewvc/kylin/site/feed.xml?rev=1771675=1771674=1771675=diff
==
--- kylin/site/feed.xml (original)
+++ kylin/site/feed.xml Mon Nov 28 03:41:05 2016
@@ -19,8 +19,8 @@
 Apache Kylin Home
 http://kylin.apache.org/
 http://kylin.apache.org/feed.xml; rel="self" 
type="application/rss+xml"/>
-Thu, 24 Nov 2016 04:33:19 -0800
-Thu, 24 Nov 2016 04:33:19 -0800
+Mon, 28 Nov 2016 03:37:26 -0800
+Mon, 28 Nov 2016 03:37:26 -0800
 Jekyll v2.5.3
 
   




kylin git commit: Update download for ODBC Driver 1.6

2016-11-27 Thread lidong
Repository: kylin
Updated Branches:
  refs/heads/document 7dfcc595b -> ecdd9a72d


Update download for ODBC Driver 1.6


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

Branch: refs/heads/document
Commit: ecdd9a72da845482cb9b427d8ccee27e9a16e0c2
Parents: 7dfcc59
Author: lidongsjtu 
Authored: Mon Nov 28 11:35:57 2016 +0800
Committer: lidongsjtu 
Committed: Mon Nov 28 11:35:57 2016 +0800

--
 website/download/index.cn.md | 2 ++
 website/download/index.md| 2 ++
 2 files changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/ecdd9a72/website/download/index.cn.md
--
diff --git a/website/download/index.cn.md b/website/download/index.cn.md
index 2181974..19eb2e2 100644
--- a/website/download/index.cn.md
+++ b/website/download/index.cn.md
@@ -29,5 +29,7 @@ title: 下载
 Apache 
Kylin的旧版本可以从[https://archive.apache.org/dist/kylin/](https://archive.apache.org/dist/kylin/)下载.
 
 ## ODBC Driver
+* [Kylin ODBC 驱动 
v1.6](http://kylin.apache.org/download/KylinODBCDriver-1.6.zip) 
 * [Kylin ODBC 驱动 
v1.5](http://kylin.apache.org/download/KylinODBCDriver-1.5.zip) 
+
 Kylin ODBC 驱动要求首先安装[Microsoft Visual C++ 2012 
Redistributable](http://www.microsoft.com/en-us/download/details.aspx?id=30679).

http://git-wip-us.apache.org/repos/asf/kylin/blob/ecdd9a72/website/download/index.md
--
diff --git a/website/download/index.md b/website/download/index.md
index fef0fd5..b75e3de 100644
--- a/website/download/index.md
+++ b/website/download/index.md
@@ -30,6 +30,8 @@ You can verify your download by following these 
[procedures](https://www.apache.
 Older releases can be found in 
[https://archive.apache.org/dist/kylin/](https://archive.apache.org/dist/kylin/).
 
 ## ODBC Driver
+* [Kylin ODBC Driver 
v1.6](http://kylin.apache.org/download/KylinODBCDriver-1.6.zip)
 * [Kylin ODBC Driver 
v1.5](http://kylin.apache.org/download/KylinODBCDriver-1.5.zip)
+
 Please note, it requires [Microsoft Visual C++ 2012 
Redistributable](http://www.microsoft.com/en-us/download/details.aspx?id=30679) 
installed first. 
 



kylin git commit: minor, update 1.6 doc links in README.md

2016-11-27 Thread lidong
Repository: kylin
Updated Branches:
  refs/heads/master 99f1dd9d2 -> 3f10b3a53


minor, update 1.6 doc links in README.md


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

Branch: refs/heads/master
Commit: 3f10b3a534166f43118caf0564ad521a9fb2632f
Parents: 99f1dd9
Author: lidongsjtu 
Authored: Mon Nov 28 09:02:28 2016 +0800
Committer: lidongsjtu 
Committed: Mon Nov 28 09:02:36 2016 +0800

--
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/3f10b3a5/README.md
--
diff --git a/README.md b/README.md
index e72bd56..06e5ba4 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ For more details, see the website 
[http://kylin.apache.org](http://kylin.apache.
 
 Documentation
 =
-Please refer to 
[http://kylin.apache.org/docs15/](http://kylin.apache.org/docs15/).
+Please refer to 
[http://kylin.apache.org/docs16/](http://kylin.apache.org/docs16/).
 
 Get Help
 



kylin git commit: KYLIN-1793 Fix exit code issue in beeline mode

2016-11-27 Thread lidong
Repository: kylin
Updated Branches:
  refs/heads/master 5edffa51d -> 99f1dd9d2


KYLIN-1793 Fix exit code issue in beeline mode


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

Branch: refs/heads/master
Commit: 99f1dd9d2460566748db2167e69a6a8a7689271d
Parents: 5edffa5
Author: lidongsjtu 
Authored: Mon Nov 28 08:35:05 2016 +0800
Committer: lidongsjtu 
Committed: Mon Nov 28 08:46:35 2016 +0800

--
 .../java/org/apache/kylin/job/DeployUtil.java   |   2 +-
 .../kylin/common/util/HiveCmdBuilder.java   | 114 +++
 .../kylin/common/util/HiveCmdBuilderTest.java   |  80 +
 .../source/hive/CreateFlatHiveTableStep.java|   1 +
 .../kylin/source/hive/HiveCmdBuilder.java   | 113 --
 .../apache/kylin/source/hive/HiveMRInput.java   |   1 +
 .../kylin/source/hive/HiveCmdBuilderTest.java   |  83 --
 .../storage/hbase/steps/DeprecatedGCStep.java   |   2 +-
 .../storage/hbase/util/HiveCmdBuilder.java  | 110 --
 .../storage/hbase/util/StorageCleanupJob.java   |   3 +-
 .../apache/kylin/tool/StorageCleanupJob.java|   2 +-
 11 files changed, 201 insertions(+), 310 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/99f1dd9d/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
--
diff --git a/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java 
b/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
index 79a3b3b..23b3670 100644
--- a/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
+++ b/assembly/src/test/java/org/apache/kylin/job/DeployUtil.java
@@ -46,7 +46,7 @@ import org.apache.kylin.metadata.model.TableDesc;
 import org.apache.kylin.metadata.model.TableRef;
 import org.apache.kylin.metadata.model.TblColRef;
 import org.apache.kylin.source.hive.HiveClientFactory;
-import org.apache.kylin.source.hive.HiveCmdBuilder;
+import org.apache.kylin.common.util.HiveCmdBuilder;
 import org.apache.kylin.source.hive.IHiveClient;
 import org.apache.kylin.source.kafka.TimedJsonStreamParser;
 import org.apache.maven.model.Model;

http://git-wip-us.apache.org/repos/asf/kylin/blob/99f1dd9d/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java 
b/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
new file mode 100644
index 000..5942ba9
--- /dev/null
+++ b/core-common/src/main/java/org/apache/kylin/common/util/HiveCmdBuilder.java
@@ -0,0 +1,114 @@
+/*
+ * 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.common.util;
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.IOUtils;
+import org.apache.kylin.common.KylinConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.Lists;
+
+public class HiveCmdBuilder {
+private static final Logger logger = 
LoggerFactory.getLogger(HiveCmdBuilder.class);
+
+public enum HiveClientMode {
+CLI, BEELINE
+}
+
+private HiveClientMode clientMode;
+private KylinConfig kylinConfig;
+final private ArrayList statements = Lists.newArrayList();
+
+public HiveCmdBuilder() {
+kylinConfig = KylinConfig.getInstanceFromEnv();
+clientMode = 
HiveClientMode.valueOf(kylinConfig.getHiveClientMode().toUpperCase());
+}
+
+public String build() {
+StringBuffer buf = new StringBuffer();
+
+switch (clientMode) {
+case CLI:
+

kylin git commit: add JoinsTree, halfway

2016-11-27 Thread liyang
Repository: kylin
Updated Branches:
  refs/heads/KYLIN-1875 dbbbae227 -> e9139f0c4


add JoinsTree, halfway


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

Branch: refs/heads/KYLIN-1875
Commit: e9139f0c4af71a85f67c50a9f4ba1c0454523bf0
Parents: dbbbae2
Author: Yang Li 
Authored: Mon Nov 28 07:49:11 2016 +0800
Committer: Yang Li 
Committed: Mon Nov 28 07:49:11 2016 +0800

--
 .../apache/kylin/dict/DictionaryManager.java|   2 +-
 .../apache/kylin/metadata/model/JoinDesc.java   |  11 ++
 .../apache/kylin/metadata/model/JoinsTree.java  | 113 +++
 .../apache/kylin/metadata/model/TblColRef.java  |   4 +
 4 files changed, 129 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/e9139f0c/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
index 820299c..3c64e45 100644
--- a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
+++ b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java
@@ -357,7 +357,7 @@ public class DictionaryManager {
 if (join.isInnerJoin() == false)
 return false;
 
-TableRef table = join.getForeignKeyColumns()[0].getTableRef();
+TableRef table = join.getFKSide();
 join = model.getPKSideJoinMap().get(table);
 }
 return true;

http://git-wip-us.apache.org/repos/asf/kylin/blob/e9139f0c/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
index d3c0745..6489244 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinDesc.java
@@ -110,6 +110,14 @@ public class JoinDesc {
 Preconditions.checkState(tableRef == cols[i].getTableRef());
 }
 
+public TableRef getPKSide() {
+return primaryKeyColumns[0].getTableRef();
+}
+
+public TableRef getFKSide() {
+return foreignKeyColumns[0].getTableRef();
+}
+
 public void sortByFK() {
 Preconditions.checkState(primaryKey.length == foreignKey.length && 
primaryKey.length == primaryKeyColumns.length && foreignKey.length == 
foreignKeyColumns.length);
 boolean cont = true;
@@ -174,6 +182,9 @@ public class JoinDesc {
 
 // equals() without alias
 public boolean matches(JoinDesc other) {
+if (other == null)
+return false;
+
 if (!this.type.equalsIgnoreCase(other.getType()))
 return false;
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/e9139f0c/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
new file mode 100644
index 000..0317a3d
--- /dev/null
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/JoinsTree.java
@@ -0,0 +1,113 @@
+/*
+ * 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.metadata.model;
+
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import com.google.common.base.Preconditions;
+
+public class JoinsTree {
+
+final 

[25/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/core-dictionary/src/main/java/org/apache/kylin/dict/TrieDictionaryBuilder.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/TrieDictionaryBuilder.java
 
b/core-dictionary/src/main/java/org/apache/kylin/dict/TrieDictionaryBuilder.java
index 916c369..598865b 100644
--- 
a/core-dictionary/src/main/java/org/apache/kylin/dict/TrieDictionaryBuilder.java
+++ 
b/core-dictionary/src/main/java/org/apache/kylin/dict/TrieDictionaryBuilder.java
@@ -1,512 +1,512 @@
-/*
- * 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.dict;
-
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.io.PrintStream;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.IdentityHashMap;
-import java.util.LinkedList;
-
-import org.apache.kylin.common.util.BytesUtil;
-
-/**
- * Builds a dictionary using Trie structure. All values are taken in byte[] 
form
- * and organized in a Trie with ordering. Then numeric IDs are assigned in
- * sequence.
- * 
- * @author yangli9
- */
-public class TrieDictionaryBuilder {
-
-private static final int _2GB = 20;
-
-public static class Node {
-public byte[] part;
-public boolean isEndOfValue;
-public ArrayList children;
-
-public int nValuesBeneath; // only present after stats()
-
-Node(byte[] value, boolean isEndOfValue) {
-reset(value, isEndOfValue);
-}
-
-Node(byte[] value, boolean isEndOfValue, ArrayList children) {
-reset(value, isEndOfValue, children);
-}
-
-void reset(byte[] value, boolean isEndOfValue) {
-reset(value, isEndOfValue, new ArrayList());
-}
-
-void reset(byte[] value, boolean isEndOfValue, ArrayList 
children) {
-this.part = value;
-this.isEndOfValue = isEndOfValue;
-this.children = children;
-}
-}
-
-public static interface Visitor {
-void visit(Node n, int level);
-}
-
-// 

-
-private Node root;
-private BytesConverter bytesConverter;
-
-public TrieDictionaryBuilder(BytesConverter bytesConverter) {
-this.root = new Node(new byte[0], false);
-this.bytesConverter = bytesConverter;
-}
-
-public void addValue(T value) {
-addValue(bytesConverter.convertToBytes(value));
-}
-
-// add a converted value (given in byte[] format), use with care, for 
internal only
-void addValue(byte[] value) {
-addValueR(root, value, 0);
-}
-
-private void addValueR(Node node, byte[] value, int start) {
-// match the value part of current node
-int i = 0, j = start;
-int n = node.part.length, nn = value.length;
-int comp = 0;
-for (; i < n && j < nn; i++, j++) {
-comp = BytesUtil.compareByteUnsigned(node.part[i], value[j]);
-if (comp != 0)
-break;
-}
-
-if (j == nn) {
-// if value fully matched within the current node
-if (i == n) {
-// if equals to current node, just mark end of value
-node.isEndOfValue = true;
-} else {
-// otherwise, split the current node into two
-Node c = new Node(BytesUtil.subarray(node.part, i, n), 
node.isEndOfValue, node.children);
-node.reset(BytesUtil.subarray(node.part, 0, i), true);
-node.children.add(c);
-}
-return;
-}
-
-// if partially matched the current, split the current node, add the 
new value, make a 3-way
-if (i < n) {
-Node c1 = new Node(BytesUtil.subarray(node.part, i, n), 
node.isEndOfValue, node.children);
-Node c2 = new Node(BytesUtil.subarray(value, j, nn), true);
-node.reset(BytesUtil.subarray(node.part, 0, i), false);
-if (comp < 0) {
-

[39/50] [abbrv] kylin git commit: minor, fix kylin-tools-log4j.properties location in pom.xml

2016-11-27 Thread liyang
minor, fix kylin-tools-log4j.properties location in pom.xml


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

Branch: refs/heads/KYLIN-1875
Commit: 6afcb2690c0d7eefd50e103e298aff80286776a4
Parents: e1d5b29
Author: Yang Li 
Authored: Thu Nov 24 21:55:19 2016 +0800
Committer: Yang Li 
Committed: Thu Nov 24 21:55:19 2016 +0800

--
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/6afcb269/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 9628c0d..0501d0f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1097,7 +1097,7 @@
 
 
 log4j.configuration
-
file:${project.basedir}/build/conf/kylin-tools-log4j.properties
+
file:${pom.parent.basedir}/build/conf/kylin-tools-log4j.properties
 
 
 
-javaagent:${project.build.testOutputDirectory}/jamm.jar 
${argLine}



[20/50] [abbrv] kylin git commit: KYLIN-2224 fix this issue

2016-11-27 Thread liyang
KYLIN-2224 fix this issue

Signed-off-by: Hongbin Ma 


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

Branch: refs/heads/KYLIN-1875
Commit: 1ec1ffccd787036cbc89d0a549adcbb0469cb1ec
Parents: 53b5a27
Author: Cheng Wang 
Authored: Wed Nov 23 11:19:04 2016 +0800
Committer: Hongbin Ma 
Committed: Wed Nov 23 11:46:35 2016 +0800

--
 .../main/java/org/apache/kylin/cube/RawQueryLastHacker.java  | 5 +++--
 .../kylin/storage/gtrecord/GTCubeStorageQueryBase.java   | 2 +-
 .../apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java | 8 
 3 files changed, 8 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/1ec1ffcc/core-cube/src/main/java/org/apache/kylin/cube/RawQueryLastHacker.java
--
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/RawQueryLastHacker.java 
b/core-cube/src/main/java/org/apache/kylin/cube/RawQueryLastHacker.java
index 50c644e..b0a4823 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/RawQueryLastHacker.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/RawQueryLastHacker.java
@@ -24,6 +24,7 @@ import org.apache.kylin.metadata.model.MeasureDesc;
 import org.apache.kylin.metadata.model.ParameterDesc;
 import org.apache.kylin.metadata.model.TblColRef;
 import org.apache.kylin.metadata.realization.SQLDigest;
+import org.apache.kylin.metadata.tuple.TupleInfo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -31,7 +32,7 @@ public class RawQueryLastHacker {
 
 private static final Logger logger = 
LoggerFactory.getLogger(RawQueryLastHacker.class);
 
-public static void hackNoAggregations(SQLDigest sqlDigest, CubeDesc 
cubeDesc) {
+public static void hackNoAggregations(SQLDigest sqlDigest, CubeDesc 
cubeDesc, TupleInfo tupleInfo) {
 if (!sqlDigest.isRawQuery) {
 return;
 }
@@ -45,7 +46,7 @@ public class RawQueryLastHacker {
 boolean isSelectAll = sqlDigest.allColumns.isEmpty() || 
sqlDigest.allColumns.equals(sqlDigest.filterColumns);
 for (TblColRef col : cubeDesc.listAllColumns()) {
 if (cubeDesc.listDimensionColumnsIncludingDerived().contains(col) 
|| isSelectAll) {
-if (col.getTable().equals(sqlDigest.factTable))
+if (tupleInfo.hasColumn(col))
 sqlDigest.allColumns.add(col);
 }
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/1ec1ffcc/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
--
diff --git 
a/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
 
b/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
index 24dd2fb..9c74cca 100644
--- 
a/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
+++ 
b/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
@@ -77,7 +77,7 @@ public abstract class GTCubeStorageQueryBase implements 
IStorageQuery {
 sqlDigest.includeSubqueryJoinParticipants();
 
 //cope with queries with no aggregations
-RawQueryLastHacker.hackNoAggregations(sqlDigest, cubeDesc);
+RawQueryLastHacker.hackNoAggregations(sqlDigest, cubeDesc, 
returnTupleInfo);
 
 // Customized measure taking effect: e.g. allow custom measures to 
help raw queries
 notifyBeforeStorageQuery(sqlDigest);

http://git-wip-us.apache.org/repos/asf/kylin/blob/1ec1ffcc/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java
--
diff --git 
a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java
 
b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java
index 3c73dc6..9af0faf 100644
--- 
a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java
+++ 
b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java
@@ -46,10 +46,10 @@ import org.apache.kylin.cube.RawQueryLastHacker;
 import org.apache.kylin.cube.cuboid.Cuboid;
 import org.apache.kylin.cube.kv.RowConstants;
 import org.apache.kylin.cube.model.CubeDesc;
+import org.apache.kylin.cube.model.CubeDesc.DeriveInfo;
 import org.apache.kylin.cube.model.HBaseColumnDesc;
 import org.apache.kylin.cube.model.HBaseMappingDesc;
 import 

[15/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some 
useless MR files.

Signed-off-by: Li Yang 


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

Branch: refs/heads/KYLIN-1875
Commit: 2b7fe6106d5363d9993dfd7b7f27c49319ed7d44
Parents: 79cb59c
Author: xiefan46 <958034...@qq.com>
Authored: Thu Nov 17 14:21:38 2016 +0800
Committer: Li Yang 
Committed: Tue Nov 22 18:39:35 2016 +0800

--
 .../kylin/cube/AggregationGroupRuleTest.java|2 +-
 .../validation/rule/DictionaryRuleTest.java |1 +
 .../apache/kylin/dict/DictionaryGenerator.java  |4 +-
 .../apache/kylin/dict/DictionaryManager.java|3 +
 .../dict/NumberDictionaryForestBuilder.java |5 +
 .../dict/TableColumnValueSortedEnumerator.java  |  154 ++
 .../kylin/dict/TrieDictionaryForestBuilder.java |2 +-
 .../apache/kylin/dict/lookup/SnapshotTable.java |2 -
 .../kylin/dict/TrieDictionaryForestTest.java|8 +-
 .../org/apache/kylin/source/ReadableTable.java  |   17 +-
 .../apache/kylin/engine/mr/DFSFileTable.java|   36 +
 .../engine/mr/DFSSingleFileTableReader.java |  218 ++
 .../kylin/engine/mr/JobBuilderSupport.java  |4 +-
 .../apache/kylin/engine/mr/SortedColumn.java|  100 +
 .../kylin/engine/mr/SortedColumnReader.java |  136 ++
 .../engine/mr/steps/CreateDictionaryJob.java|5 +-
 .../mr/steps/FactDistinctColumnPartitioner.java |5 +-
 .../mr/steps/FactDistinctColumnsCombiner.java   |4 +-
 .../engine/mr/steps/FactDistinctColumnsJob.java |2 +-
 .../mr/steps/FactDistinctColumnsMapperBase.java |3 +-
 .../mr/steps/FactDistinctColumnsReducer.java|6 +-
 .../mr/steps/FactDistinctHiveColumnsMapper.java |   22 +-
 .../engine/mr/steps/SelfDefineSortableKey.java  |  128 ++
 .../apache/kylin/engine/mr/steps/TypeFlag.java  |   28 +
 .../mr/steps/UpdateCubeInfoAfterBuildStep.java  |5 +-
 .../fdc2/FactDistinctColumnPartitioner2.java|   47 -
 .../fdc2/FactDistinctColumnsCombiner2.java  |   45 -
 .../mr/steps/fdc2/FactDistinctColumnsJob2.java  |  148 --
 .../fdc2/FactDistinctColumnsMapperBase2.java|  103 -
 .../steps/fdc2/FactDistinctColumnsReducer2.java |  254 ---
 .../fdc2/FactDistinctHiveColumnsMapper2.java|  232 --
 .../mr/steps/fdc2/SelfDefineSortableKey.java|  131 --
 .../kylin/engine/mr/steps/fdc2/TypeFlag.java|   28 -
 .../kylin/engine/mr/SortedColumnReaderTest.java |  312 +++
 .../mr/steps/NumberDictionaryForestTest.java|   17 +-
 .../mr/steps/SelfDefineSortableKeyTest.java |2 -
 .../src/test/resources/multi_file_double/data_0 | 2006 +
 .../src/test/resources/multi_file_double/data_1 | 2093 ++
 .../src/test/resources/multi_file_double/data_2 | 2006 +
 .../src/test/resources/multi_file_double/data_3 | 1947 
 .../src/test/resources/multi_file_double/data_4 | 1948 
 .../resources/multi_file_empty_file/empty.txt   |0
 .../multi_file_empty_file/has_value.txt |2 +
 .../src/test/resources/multi_file_int/data_0| 1987 +
 .../src/test/resources/multi_file_int/data_1| 1989 +
 .../src/test/resources/multi_file_int/data_2| 1998 +
 .../src/test/resources/multi_file_int/data_3| 1996 +
 .../src/test/resources/multi_file_int/data_4| 2030 +
 .../src/test/resources/multi_file_str/data_0| 2029 +
 .../src/test/resources/multi_file_str/data_1| 1990 +
 .../src/test/resources/multi_file_str/data_2| 1992 +
 .../src/test/resources/multi_file_str/data_3| 1948 
 .../src/test/resources/multi_file_str/data_4| 2041 +
 .../org/apache/kylin/source/hive/HiveTable.java |3 +
 54 files changed, 31200 insertions(+), 1024 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/core-cube/src/test/java/org/apache/kylin/cube/AggregationGroupRuleTest.java
--
diff --git 
a/core-cube/src/test/java/org/apache/kylin/cube/AggregationGroupRuleTest.java 
b/core-cube/src/test/java/org/apache/kylin/cube/AggregationGroupRuleTest.java
index 1c43093..1950b02 100644
--- 
a/core-cube/src/test/java/org/apache/kylin/cube/AggregationGroupRuleTest.java
+++ 
b/core-cube/src/test/java/org/apache/kylin/cube/AggregationGroupRuleTest.java
@@ -38,7 +38,7 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
-public class AggregationGroupRuleTest extends LocalFileMetadataTestCase{
+public 

[34/50] [abbrv] kylin git commit: KYLIN-227

2016-11-27 Thread liyang
KYLIN-227


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

Branch: refs/heads/KYLIN-1875
Commit: 798f03ed2eaaddaee5930ff074a022655fec51ff
Parents: 53b5a6d
Author: shaofengshi 
Authored: Fri Nov 11 16:11:55 2016 +0800
Committer: shaofengshi 
Committed: Thu Nov 24 09:11:33 2016 +0800

--
 .../kylin/job/constant/JobStatusEnum.java   |  2 +-
 .../kylin/job/constant/JobStepStatusEnum.java   |  2 +-
 .../kylin/job/execution/AbstractExecutable.java |  5 +++
 .../job/execution/DefaultChainedExecutable.java |  6 
 .../kylin/job/execution/ExecutableManager.java  | 11 +-
 .../kylin/job/execution/ExecutableState.java|  7 
 .../job/impl/threadpool/DefaultScheduler.java   |  6 ++--
 .../apache/kylin/job/ExecutableManagerTest.java |  2 +-
 .../kylin/rest/controller/JobController.java| 22 
 .../apache/kylin/rest/service/CubeService.java  |  2 +-
 .../apache/kylin/rest/service/JobService.java   | 15 
 webapp/app/js/controllers/job.js| 38 +++-
 webapp/app/js/model/jobConfig.js|  1 +
 webapp/app/js/services/jobs.js  |  3 +-
 webapp/app/partials/jobs/jobList.html   | 10 +-
 15 files changed, 122 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/798f03ed/core-job/src/main/java/org/apache/kylin/job/constant/JobStatusEnum.java
--
diff --git 
a/core-job/src/main/java/org/apache/kylin/job/constant/JobStatusEnum.java 
b/core-job/src/main/java/org/apache/kylin/job/constant/JobStatusEnum.java
index a4ef564..4c6ac97 100644
--- a/core-job/src/main/java/org/apache/kylin/job/constant/JobStatusEnum.java
+++ b/core-job/src/main/java/org/apache/kylin/job/constant/JobStatusEnum.java
@@ -20,7 +20,7 @@ package org.apache.kylin.job.constant;
 
 public enum JobStatusEnum {
 
-NEW(0), PENDING(1), RUNNING(2), FINISHED(4), ERROR(8), DISCARDED(16);
+NEW(0), PENDING(1), RUNNING(2), FINISHED(4), ERROR(8), DISCARDED(16), 
STOPPED(32);
 
 private final int code;
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/798f03ed/core-job/src/main/java/org/apache/kylin/job/constant/JobStepStatusEnum.java
--
diff --git 
a/core-job/src/main/java/org/apache/kylin/job/constant/JobStepStatusEnum.java 
b/core-job/src/main/java/org/apache/kylin/job/constant/JobStepStatusEnum.java
index 08ee79a..08cd138 100644
--- 
a/core-job/src/main/java/org/apache/kylin/job/constant/JobStepStatusEnum.java
+++ 
b/core-job/src/main/java/org/apache/kylin/job/constant/JobStepStatusEnum.java
@@ -19,7 +19,7 @@
 package org.apache.kylin.job.constant;
 
 public enum JobStepStatusEnum {
-NEW(0), PENDING(1), RUNNING(2), FINISHED(4), ERROR(8), DISCARDED(16), 
WAITING(32), KILLED(64);
+NEW(0), PENDING(1), RUNNING(2), FINISHED(4), ERROR(8), DISCARDED(16), 
WAITING(32), KILLED(64), STOPPED(128);
 
 private final int code;
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/798f03ed/core-job/src/main/java/org/apache/kylin/job/execution/AbstractExecutable.java
--
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 80a92de..551241b 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
@@ -380,6 +380,11 @@ public abstract class AbstractExecutable implements 
Executable, Idempotent {
 return status == ExecutableState.DISCARDED;
 }
 
+protected final boolean isPaused() {
+final ExecutableState status = getOutput().getState();
+return status == ExecutableState.STOPPED;
+}
+
 protected boolean needRetry() {
 return this.retry <= config.getJobRetry();
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/798f03ed/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 fccab30..253072e 100644
--- 
a/core-job/src/main/java/org/apache/kylin/job/execution/DefaultChainedExecutable.java
+++ 

[41/50] [abbrv] kylin git commit: KYLIN-2195 re-format KylinConfigBase

2016-11-27 Thread liyang
KYLIN-2195 re-format KylinConfigBase


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

Branch: refs/heads/KYLIN-1875
Commit: 89875fae78556d4d5f5099accb70d6572faeb3d4
Parents: 8530ebd
Author: Li Yang 
Authored: Fri Nov 25 14:49:58 2016 +0800
Committer: Li Yang 
Committed: Fri Nov 25 14:49:58 2016 +0800

--
 .../apache/kylin/common/KylinConfigBase.java| 778 ++-
 1 file changed, 411 insertions(+), 367 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/89875fae/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 6131013..8ea03be 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
@@ -142,16 +142,47 @@ abstract public class KylinConfigBase implements 
Serializable {
 this.properties = BCC.check(properties);
 }
 
+private Map convertKeyToInteger(Map map) {
+Map result = Maps.newLinkedHashMap();
+for (Entry entry : map.entrySet()) {
+result.put(Integer.valueOf(entry.getKey()), entry.getValue());
+}
+return result;
+}
+
+public String toString() {
+return getMetadataUrl();
+}
+
+// 

+// ENV
 // 

 
 public boolean isDevEnv() {
 return "DEV".equals(getOptional("kylin.env", "DEV"));
 }
+
+public String getDeployEnv() {
+return getOptional("kylin.env", "DEV");
+}
+
+public String getHdfsWorkingDirectory() {
+String root = getRequired("kylin.env.hdfs-working-dir");
+if (!root.endsWith("/")) {
+root += "/";
+}
+return new 
StringBuffer(root).append(StringUtils.replaceChars(getMetadataUrlPrefix(), ':', 
'-')).append("/").toString();
+}
+
+// 

+// METADATA
+// 

 
 public String getMetadataUrl() {
 return getOptional("kylin.metadata.url");
 }
 
+// for test only
 public void setMetadataUrl(String metadataUrl) {
 setProperty("kylin.metadata.url", metadataUrl);
 }
@@ -169,178 +200,120 @@ abstract public class KylinConfigBase implements 
Serializable {
 }
 }
 
-public String getServerMode() {
-return this.getOptional("kylin.server.mode", "all");
-}
-
-public String getStorageUrl() {
-return getOptional("kylin.storage.url");
-}
-
-public void setStorageUrl(String storageUrl) {
-setProperty("kylin.storage.url", storageUrl);
+public String[] getRealizationProviders() {
+return getOptionalStringArray("kylin.metadata.realization-providers", 
//
+new String[] { "org.apache.kylin.cube.CubeManager", 
"org.apache.kylin.storage.hybrid.HybridManager" });
 }
 
-/**
- * was for route to hive, not used any more
- */
-@Deprecated
-public String getHiveUrl() {
-return getOptional("kylin.source.hive.connection-url", "");
+public String[] getCubeDimensionCustomEncodingFactories() {
+return 
getOptionalStringArray("kylin.metadata.custom-dimension-encodings", new 
String[0]);
 }
 
-/**
- * was for route to hive, not used any more
- */
-@Deprecated
-public String getHiveUser() {
-return getOptional("kylin.source.hive.connection-user", "");
+public Map getCubeCustomMeasureTypes() {
+return getPropertiesByPrefix("kylin.metadata.custom-measure-types.");
 }
+
+// 

+// DICTIONARY & SNAPSHOT
+// 

 
-/**
- * was for route to hive, not used any more
- */
-@Deprecated
-public String getHivePassword() {
-return getOptional("kylin.source.hive.connection-password", "");
+public int getTrieDictionaryForestMaxTrieSizeMB() {
+return 
Integer.parseInt(getOptional("kylin.dictionary.forest-trie-max-mb", 

[44/50] [abbrv] kylin git commit: KYLIN-2220 Enforce same name between Cube & CubeDesc

2016-11-27 Thread liyang
KYLIN-2220 Enforce same name between Cube & CubeDesc

Signed-off-by: Li Yang 


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

Branch: refs/heads/KYLIN-1875
Commit: 25f0819fab211749ac81dff4bbd4812e2be637ed
Parents: ddc003c
Author: kangkaisen 
Authored: Tue Nov 22 21:26:32 2016 +0800
Committer: Yang Li 
Committed: Sat Nov 26 13:02:16 2016 +0800

--
 .../java/org/apache/kylin/cube/CubeManager.java  | 19 +--
 .../kylin/rest/controller/CubeController.java|  2 +-
 .../apache/kylin/rest/service/CubeService.java   |  8 
 3 files changed, 2 insertions(+), 27 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/25f0819f/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
--
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java 
b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
index 9893040..307bb46 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
@@ -617,24 +617,6 @@ public class CubeManager implements IRealizationProvider {
 }
 }
 
-private long calculateStartOffsetForAppendSegment(CubeInstance cube) {
-List existing = cube.getSegments();
-if (existing.isEmpty()) {
-return 0;
-} else {
-return existing.get(existing.size() - 1).getSourceOffsetEnd();
-}
-}
-
-private long calculateStartDateForAppendSegment(CubeInstance cube) {
-List existing = cube.getSegments();
-if (existing.isEmpty()) {
-return cube.getDescriptor().getPartitionDateStart();
-} else {
-return existing.get(existing.size() - 1).getDateRangeEnd();
-}
-}
-
 private void checkBuildingSegment(CubeInstance cube) {
 int maxBuldingSeg = cube.getConfig().getMaxBuildingSegments();
 if (cube.getBuildingSegments().size() >= maxBuldingSeg) {
@@ -923,6 +905,7 @@ public class CubeManager implements IRealizationProvider {
 
 CubeDesc cubeDesc = 
CubeDescManager.getInstance(config).getCubeDesc(cube.getDescName());
 checkNotNull(cubeDesc, "cube descriptor '%s' (for cube '%s') not 
found", cube.getDescName(), cubeName);
+checkState(cubeDesc.getName().equals(cubeName), "cube name '%s' 
must be same as descriptor name '%s', but it is not", cubeName, 
cubeDesc.getName());
 
 if (!cubeDesc.getError().isEmpty()) {
 cube.setStatus(RealizationStatusEnum.DESCBROKEN);

http://git-wip-us.apache.org/repos/asf/kylin/blob/25f0819f/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
--
diff --git 
a/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
 
b/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
index e1aa17a..3846d28 100644
--- 
a/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
+++ 
b/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
@@ -416,7 +416,7 @@ public class CubeController extends BasicController {
 cubeRequest.setMessage("CubeDesc is null.");
 return cubeRequest;
 }
-String name = CubeService.getCubeNameFromDesc(desc.getName());
+String name = desc.getName();
 if (StringUtils.isEmpty(name)) {
 logger.info("Cube name should not be empty.");
 throw new BadRequestException("Cube name should not be empty.");

http://git-wip-us.apache.org/repos/asf/kylin/blob/25f0819f/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
--
diff --git 
a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java 
b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
index 5c59e1a..85c9284 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java
@@ -278,14 +278,6 @@ public class CubeService extends BasicService {
 accessService.clean(cube, true);
 }
 
-public static String getCubeNameFromDesc(String descName) {
-if (descName.toLowerCase().endsWith(DESC_SUFFIX)) {
-return descName.substring(0, 
descName.toLowerCase().indexOf(DESC_SUFFIX));
-} else {
-

[09/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_str/data_1
--
diff --git a/engine-mr/src/test/resources/multi_file_str/data_1 
b/engine-mr/src/test/resources/multi_file_str/data_1
new file mode 100644
index 000..ee43541
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_str/data_1
@@ -0,0 +1,1990 @@
+0005cc94-b007-4f31-90f0-4d80410d5e79
+005057a2-ef79-4b31-8480-8397e0f6e2bb
+007fbfec-dc89-4256-afa9-c52269e7a31e
+00b18cf2-53d0-4be1-80fd-bec6a47b46bc
+00d907e8-a459-4663-8b71-0da459be50e1
+00ef7481-3a29-40cc-b6f5-202a24b44a0c
+018c86b0-279b-40f4-9758-32d0a1a522c3
+01a07ce6-7fd4-4ae2-a430-12a03788199c
+01ae765e-226e-4642-b382-0c6cc2eca798
+01b1e026-a47b-4ff8-85f2-8de89334139e
+01fb060a-ae9b-47b2-831d-4c36b6c93b1e
+021426fa-84d6-4ddc-8974-15d908f5e601
+021dade6-1085-49bd-97bb-e4b223c8425c
+022b895c-a8ce-4a18-ba9d-be103b296771
+022d5709-23fa-464c-ad96-dd2fddf58e68
+025e3a2e-44af-4694-875d-6ca9de45e9a4
+02606751-63fc-417b-93fe-3fd3ec4942f4
+02a259a7-2b35-4dab-9857-964cae1b3630
+02a4fe44-3464-4de5-bdb0-e256fa71a2b7
+02bb8408-39a0-4818-add3-02f915782fb0
+02e36b48-46d8-49ac-9168-8490518f1922
+02e620e8-39ef-4ceb-ad69-d2cfe6d9b4b7
+0305fbd2-7c7b-42d8-9153-66e191a69efe
+0310efc2-5dbe-4586-beeb-d2480d4bbb1f
+031774dd-0b13-4279-b31a-462e6e9442bc
+03248fd7-83b4-4c24-b281-9b6c3811
+036195d3-1ce6-4e59-a8d9-36d0d35f248c
+03a25119-497a-48d5-9f50-b5a87aab84b9
+03af2273-fb4b-42d5-a9b8-b459a2d90c78
+03cdbdba-6923-4335-8cc2-b3b2317a6160
+03f0a4a3-07be-4f7b-867d-82885baefaeb
+03f6e287-f5ae-479c-8a55-56f74afed997
+041ae6d0-9bc7-4342-a440-7ab2a402a0dc
+041ae917-3697-44c1-a78d-a0799bb697e6
+04250b0a-acf7-4117-bab0-1d42b796d90d
+043fe4f6-5cd9-4cf1-9f95-b6b56f310ef9
+0440d813-998e-4e60-9f8f-50becf8066bf
+0443dc38-0193-4a23-9b66-b4cb6cbb555d
+04793483-e5ec-495d-a211-4026d7701b46
+04b56c59-c15d-41de-bea5-b1715b69b3c8
+04bf76e7-23b5-402d-9e0c-740ce8a3387d
+04c0f225-0897-479b-84eb-e3600baaf361
+04fdb9bb-0088-42a3-b4bf-cd91ccea2fe0
+050ddd3b-f8bd-4f5a-a839-182a97367aee
+055a3f59-14f8-4893-88f4-ecad22adc150
+057191c2-3f8b-48ed-b932-9ec2df13849e
+05c3a70d-6185-44d4-be48-307022efb1d5
+0640b40a-e418-4e90-8675-13458f256c20
+0658d229-9b4b-4559-9737-dd90b22f6a63
+06641f20-c6db-449b-8e4e-a4f2d62ca2fe
+0668c755-716a-4921-b05f-f20f60e6818a
+068e231b-d4e6-4785-8d31-f8f276b330bb
+06a4efa2-8217-45c9-9402-9a63f0efbec2
+06e942ab-c053-41a5-8686-237cdde18365
+06f00088-e14a-496e-9510-3d26cf3a5782
+071d0310-1e75-4b91-9d06-ad1ed1c39d46
+07254c89-5eda-424c-bc9b-f44e568f444c
+0731d06d-8c2f-4560-b5ee-9be7b7452ecf
+076b0aa7-c95d-40be-9a15-835b93b171bb
+076ffc77-c433-46ac-8089-cdb7bb08672a
+0789584e-3d3c-448f-9268-0c63f37dff70
+07a771f3-00b1-4c0b-baa8-23ce0dce16ab
+07c8fe67-dce8-4f19-92df-bbcef68de151
+07d4da44-06e0-4289-b422-33717482d0b5
+07efc40a-f27d-4ca6-a86a-fe720ff5246c
+0822873c-cae8-417a-9115-cd42443b74c8
+0849beac-aeb6-4e1e-a3fd-e22a394b2bc8
+08603138-d916-4c56-9979-23ddcdfc7d79
+088c4d06-edd5-4755-8ea7-0e1287b8bff2
+08d6bada-5adc-4a33-acc7-e07ec245343f
+08d82dd5-cf91-405e-8e6c-7cf12ace017e
+09067e02-617b-4ce3-8ac6-77fe43e9f782
+09200ea2-2c20-437b-91d9-ad22656148ac
+09503c81-fb15-45bf-b388-038fa9099879
+09679853-7f41-40e2-8d38-7fe326f7248f
+09de044d-1438-4fd1-a084-fd1d570988df
+0a3138fe-4be2-47d7-b17e-0dcbeea7f453
+0a350c27-eb95-4b4a-ab66-ae65ecefb15e
+0a4296da-bcd2-4b45-bd0c-93b7c9164c52
+0a578961-fe44-489a-a7d2-d68ba68bc8d9
+0a6bf3fa-594f-4658-b93e-316ea5022534
+0a6c416f-7122-4d72-b9d6-3d0669e4009b
+0a7a5b4b-1aa5-4732-a7b8-66ffc84eab4c
+0a8cf4ff-685b-44b8-a78e-16c0aca6db62
+0ab0fe90-fce9-4c9e-90e3-81f165b64e91
+0ac33843-5fca-4df9-86d4-e1dbc4ea92bd
+0af5a7ea-82ac-461c-a122-6f034a01cd95
+0b100b1d-487e-4a58-9f46-7a776b079dda
+0b3e7018-723c-4be0-8839-12d74a42fb46
+0b510dac-8009-4b3b-a8ba-4ef8b746f988
+0b61f652-7cfa-45a7-be3e-ad5eee5bf726
+0b7eb036-cc3d-4df7-b532-436c7366c369
+0b9820ab-e846-4b61-8b97-5def0503c9d2
+0baacd76-d04c-4f78-81a4-3c9e78e242bd
+0bb23b64-9a75-4f32-82dd-87f8c3e7cb6a
+0bc5f734-c638-4815-950d-a4b37d8eea25
+0bd64b0a-868d-4b92-a5a8-7d93aa5159ec
+0bdc03d0-73b5-41ff-80a6-f1c215cc46e5
+0c2d5a38-a98b-4a4a-b8ab-cf058a60fd7d
+0c338748-ac2e-488a-a365-b75685a0461d
+0c3765f0-2259-4987-b797-f88f35ea0873
+0c98b2dc-c5c4-46b5-b350-584d7bf6fa8b
+0cd4d27d-4d95-4d0b-aab8-7e28dcc830df
+0cdec55a-22f3-4aef-bacd-378c742eccf9
+0cf1c496-7d40-4c8e-ab0f-9aabd69e78dd
+0d1295ca-6d5e-4617-8017-c7a6243cc0bd
+0d873bb7-1a0b-42df-82d0-c15201e8d1a3
+0da55227-7a69-4ed0-bd71-67cebe5b4b47
+0dd9c9c5-71ee-4523-bfaa-64f3c82b45c0
+0de68325-19c4-4668-89cb-a21818613e5e
+0e3e8c17-60c6-4dda-8648-b86f881c93ac
+0e6178d5-87de-422e-9ab0-4668c25fd398
+0edb80b3-d3d4-40a8-8d0e-839939aca2e1
+0ee1de00-5e13-4af7-9e7f-4e32f140d774
+0f4efb00-0888-4e30-bd23-f1fa0f87f80b
+0f6f7f5d-64a6-4406-a21a-0071b8313b9e
+0fa10b55-cb5b-4974-b1f9-8ab3a1e7226c
+0fb30e28-cac7-49d1-a649-8d04d6385747
+0fd28d53-6858-4902-8ba7-b00351a8d92a
+0fe86888-df1d-4605-a9da-73882413e983

[06/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_str/data_4
--
diff --git a/engine-mr/src/test/resources/multi_file_str/data_4 
b/engine-mr/src/test/resources/multi_file_str/data_4
new file mode 100644
index 000..7c0afd3
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_str/data_4
@@ -0,0 +1,2041 @@
+003511e3-3c9f-47b8-a4f1-59a982d41780
+00364074-2efe-4dcc-a526-06c03a9bd64e
+003d3973-4b74-43e4-862d-3c93423c9016
+005b851f-6f5e-4bce-b44f-ab901bb19266
+00ae59d3-5f1a-4ffa-a9dd-ace8b1b616b3
+00e1077e-5db6-4739-b728-dcfdebbeac89
+00fd44f7-ef50-48a6-952f-83758e8b73fc
+01412f09-1d12-479d-82a5-a0cc4cd3eb1d
+01439f30-8956-47a6-afdc-1db126990f68
+01573fad-0365-4162-b37f-363f05212724
+0159fef7-4ca4-492f-8595-679dc92c8d96
+01647025-c8a8-4e2f-929f-2a7be01a3d2f
+01a95d04-edfa-4992-abbe-a4effb60608b
+01f38832-7270-4732-9321-7b36ab453241
+01f6e7fe-db14-4caf-b459-114eb059e6ef
+01f95d79-5998-4f22-85ed-ab120baeccc4
+0213b384-5f87-450a-b7b0-7d28875567d3
+021657d7-7ed4-44b4-b310-2bcc030c5f17
+02320923-2831-433d-9936-b35532a74935
+0285c5a8-5391-4147-926d-0e8964613bc9
+02b9a18b-ded9-44f0-ba6d-d3276866b8de
+02c23499-80c0-4821-a60f-ca446640018d
+03196211-662e-40f7-9534-33b4984448e0
+03332ef9-4953-4b34-9d90-bb6418d599c7
+033ca26a-2001-4393-b450-20aedc8b7d73
+03896fe0-7e8b-4901-adb7-2d967bab0c32
+038ede24-4288-437c-ab82-8b3ecd8bf0a0
+03962dbf-26f6-450c-8d84-4506eb00b935
+03a4b0f3-a9ad-4780-93cc-cbb5fb0338bd
+03c3576d-86d7-4267-830f-445dc6cf47aa
+03c9a74a-bcb2-4d4a-8019-6da293cf90b9
+03cf2884-62fa-4ea7-86d2-76bb9a673927
+03dee29f-e388-4576-8943-deb3c3b80c83
+040047b2-c609-4677-8de2-17621ab043d6
+042c1afa-26e5-4d8a-8256-7402db698b2e
+0464ad68-9c3e-4e97-82aa-2e9e722b06f7
+046714c9-01ee-44d7-83d5-07bcea2d7ba2
+048f02ba-1183-4290-8114-bf5abb74324f
+0502e1b7-7cd6-4d8f-be64-9791f01c05a9
+0507561e-8fe2-488c-98e5-319d85005b36
+053ca4ca-f03f-4715-bf3c-d3fd81c90250
+054232b8-aba9-43d7-822e-ccd65ad2d8e2
+054647df-c970-48b0-a73b-7d9d779d6f75
+054e6f2b-e0e4-4d9c-a9a3-b7262b9ca776
+0556b4b5-5081-4c3b-ac4f-a6301aa87121
+05626b77-5944-4389-b398-92b80a4599cb
+059fedcc-024d-436b-9d75-b71a28aa934f
+05a5075a-5b22-4a8e-b0ab-dc496eaa097e
+05c7a17e-5842-4ea3-ae5f-1f5b1a54bd5a
+05e24866-3424-4f4d-b703-409c4dbf8104
+05f77326-e88e-4785-9c7f-c7f9c3df6652
+0625a0df-eea3-4f8b-bba2-4c8d3c5c9351
+062c94fc-3a06-4f89-9818-f61897482570
+06310498-3813-4554-ae61-57bea69db0b1
+0653727a-3fad-4c2f-9b89-a9982854a9c3
+068fbb79-03dd-49cb-92ce-1f65049c4543
+06b2785c-ec04-4f46-87ad-f76e68422ae0
+0710dad8-485e-4c3e-b0fe-2cd569d90507
+071d54d9-f884-4b0c-a8f4-85bc436475e1
+0725acc2-5ae7-4ddb-af1a-90e5c98f33c2
+072ba507-beca-4680-94a2-ceb062cb1890
+0748f60e-0c63-4e99-b804-ab872a09aef7
+0768b6d9-2dd2-41a7-9193-42712a34359b
+078966b8-26cd-4416-80d5-754616122c3c
+07adc055-aace-40c6-a7da-ebac55d46e91
+0811fff3-186f-4637-ae9d-5740fef969c7
+082781e5-fa2e-443a-8ba2-ec789423eaf3
+08327101-0aa3-48ee-b25d-6d787ff144e7
+085310c6-577e-41a2-9214-f63f25fc1fde
+08624ffe-fe03-4e4f-b39a-c9d83b847a3b
+0877cc24-e51f-48b7-969d-43dad21289c7
+0892766e-1c4a-4c80-b211-8967f693eddc
+08cc45ba-12e1-496c-9a72-78c401fe58d4
+08dfa8fc-c109-4322-a933-cb01119ff572
+08e883e1-fdc3-481b-ac4d-68a715b46a5b
+08f7f315-6a9b-4575-b613-593e5f04cd7b
+095436d6-8a5e-4b90-ac87-f2945ac673eb
+096c8285-50ac-4373-a0ee-3c30aac7164e
+09967e6a-343a-4629-bfb5-82413379839b
+09a6886b-a3e0-43d1-b2a4-7d090b171f4d
+0a060fcb-a1bd-40cc-8e5e-99c83287f22b
+0a15d2b3-7c89-4113-a6cc-fbc6e136030e
+0a445c63-85a3-42e0-bcad-aa341e4b0ea1
+0a5bd490-a8ad-4a04-bb36-bc722ff97f6d
+0a6c64fe-6ac2-40dc-857f-90a04474c92b
+0a8d5267-ef87-4223-b003-01ee7f716926
+0a8dfaec-1c57-4baf-aeb9-84c6763c603b
+0a9a149c-3704-4ac5-90de-ce06aaf883ed
+0a9aedb3-e4f1-4ab9-82bf-52f7b3c3d66c
+0aa52441-b644-4ca7-9f6d-cfb314a255ab
+0acffdf7-12bc-41c3-a012-90ecb3306d51
+0b3b9628-ad13-42d3-9f9e-2a45b8280708
+0b65e109-8018-4054-93da-d860f94ba860
+0b9fb904-a1c1-4ca4-af80-30e9e1d6849a
+0ba9bb17-ab1a-451d-8485-fd09aab2ff56
+0bc79581-b054-49b3-a98f-f12170516631
+0bd84756-af77-44e3-ad3d-28190a916fa5
+0c20ec9b-24f7-4436-b7a9-22c88dcbcadb
+0c3edb98-1162-4824-add7-3d3f57e811c2
+0c523875-3b57-4ba2-b3d1-c916c4077f1e
+0c56bb2c-c018-4901-9a3c-0c191cc83d2d
+0c5dba85-62f0-47f2-a2a1-04d075c22fea
+0c8f0ca1-c8c5-4f56-bde5-0980cb6b4663
+0cab8877-0532-43b2-b5ae-9077280e960d
+0cbf8745-20a2-4180-a032-5513f3ae7102
+0d6d435d-fcb2-41c7-adfb-70e8ee2a2ca4
+0d7a5055-3371-42bc-88e7-d0b91b68893c
+0d9d827c-98a4-4c28-913e-30913a2f896c
+0dde2519-541e-45bd-887d-441d7460ed2a
+0ddee6a9-34df-4177-bc06-5127326cb6e9
+0e05c1d8-eb2b-4722-82f9-359f5bd19b37
+0e285454-71a5-40ef-bb5c-bf32a32dc3a4
+0e73e1e5-f753-494f-9d6d-7caef066f029
+0e7e6f43-2c71-428c-8ff9-39a1b90cf0e5
+0e935a16-8784-43f6-b7a1-f59e3cd00f0c
+0eb3fa79-3b93-455d-a25a-d224a9e55f0a
+0eb7bd99-97b8-41c2-9d8b-371a3bf40161
+0ed3a37f-5e6e-450c-82b1-75d6368f8bd3
+0f6eaeda-a895-4e4d-b989-0f556d70c4ec
+0f7a0ccc-d9f1-47f0-9b7a-4760682a0725

[32/50] [abbrv] kylin git commit: minor, fix kylin.sh version

2016-11-27 Thread liyang
minor, fix kylin.sh version


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

Branch: refs/heads/KYLIN-1875
Commit: 83adb8eb8700d388aa042d833e7fea9746282624
Parents: b8e764d
Author: Hongbin Ma 
Authored: Wed Nov 23 18:14:40 2016 +0800
Committer: Hongbin Ma 
Committed: Wed Nov 23 18:14:45 2016 +0800

--
 build/bin/kylin.sh | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/83adb8eb/build/bin/kylin.sh
--
diff --git a/build/bin/kylin.sh b/build/bin/kylin.sh
index b0627ef..d3aa4cb 100644
--- a/build/bin/kylin.sh
+++ b/build/bin/kylin.sh
@@ -151,6 +151,7 @@ then
 
 elif [ "$1" = "version" ]
 then
+retrieveDependency
 exec hbase 
-Dlog4j.configuration=file:${KYLIN_HOME}/conf/kylin-tools-log4j.properties 
org.apache.kylin.common.KylinVersion
 exit 0
 



[02/50] [abbrv] kylin git commit: revert KYLIN-2199 because KYLIN-2191 is not a major fix

2016-11-27 Thread liyang
revert KYLIN-2199 because KYLIN-2191 is not a major fix


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

Branch: refs/heads/KYLIN-1875
Commit: 1c730b91b3c0847873dbbf74106647b663be1942
Parents: 8132cab
Author: Hongbin Ma 
Authored: Tue Nov 22 15:32:31 2016 +0800
Committer: Hongbin Ma 
Committed: Tue Nov 22 15:32:31 2016 +0800

--
 .../gridtable/DimEncodingPreserveOrderTest.java |   4 +-
 .../dimension/DimensionEncodingFactory.java |   4 -
 .../apache/kylin/dimension/IntegerDimEnc.java   |   3 +-
 .../apache/kylin/dimension/IntegerDimEncV2.java | 218 ---
 .../kylin/dimension/IntegerDimEncTest.java  |  16 +-
 5 files changed, 11 insertions(+), 234 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/1c730b91/core-cube/src/test/java/org/apache/kylin/gridtable/DimEncodingPreserveOrderTest.java
--
diff --git 
a/core-cube/src/test/java/org/apache/kylin/gridtable/DimEncodingPreserveOrderTest.java
 
b/core-cube/src/test/java/org/apache/kylin/gridtable/DimEncodingPreserveOrderTest.java
index 7d6af24..1866079 100644
--- 
a/core-cube/src/test/java/org/apache/kylin/gridtable/DimEncodingPreserveOrderTest.java
+++ 
b/core-cube/src/test/java/org/apache/kylin/gridtable/DimEncodingPreserveOrderTest.java
@@ -26,7 +26,7 @@ import java.util.List;
 import org.apache.kylin.common.util.ByteArray;
 import org.apache.kylin.dimension.DimensionEncoding;
 import org.apache.kylin.dimension.FixedLenHexDimEnc;
-import org.apache.kylin.dimension.IntegerDimEncV2;
+import org.apache.kylin.dimension.IntegerDimEnc;
 import org.apache.kylin.dimension.OneMoreByteVLongDimEnc;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -98,7 +98,7 @@ public class DimEncodingPreserveOrderTest {
 @Test
 public void testVLongDimEncPreserveOrder() {
 for (int i = 1; i <= successValue.size(); i++) {
-IntegerDimEncV2 enc = new IntegerDimEncV2(i);
+IntegerDimEnc enc = new IntegerDimEnc(i);
 List encodedValues = Lists.newArrayList();
 for (long value : successValue.get(i - 1)) {
 encodedValues.add(encode(enc, value));

http://git-wip-us.apache.org/repos/asf/kylin/blob/1c730b91/core-metadata/src/main/java/org/apache/kylin/dimension/DimensionEncodingFactory.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/dimension/DimensionEncodingFactory.java
 
b/core-metadata/src/main/java/org/apache/kylin/dimension/DimensionEncodingFactory.java
index 843f4cd..4954ead 100644
--- 
a/core-metadata/src/main/java/org/apache/kylin/dimension/DimensionEncodingFactory.java
+++ 
b/core-metadata/src/main/java/org/apache/kylin/dimension/DimensionEncodingFactory.java
@@ -117,10 +117,6 @@ public abstract class DimensionEncodingFactory {
 map.put(Pair.newPair(IntegerDimEnc.ENCODING_NAME, 
value.getCurrentVersion()), value);
 }
 {
-IntegerDimEncV2.Factory value = new IntegerDimEncV2.Factory();
-map.put(Pair.newPair(IntegerDimEncV2.ENCODING_NAME, 
value.getCurrentVersion()), value);
-}
-{
 FixedLenHexDimEnc.Factory value = new 
FixedLenHexDimEnc.Factory();
 map.put(Pair.newPair(FixedLenHexDimEnc.ENCODING_NAME, 
value.getCurrentVersion()), value);
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/1c730b91/core-metadata/src/main/java/org/apache/kylin/dimension/IntegerDimEnc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/dimension/IntegerDimEnc.java 
b/core-metadata/src/main/java/org/apache/kylin/dimension/IntegerDimEnc.java
index 44d0e73..090dc83 100644
--- a/core-metadata/src/main/java/org/apache/kylin/dimension/IntegerDimEnc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/dimension/IntegerDimEnc.java
@@ -36,7 +36,6 @@ import org.slf4j.LoggerFactory;
  * -2^(8*N-1) is not supported because the slot is reserved for null values.
  * -2^(8*N-1) will be encoded with warn, and its output will be null
  */
-@Deprecated//due to a fatal bug (KYLIN-2191) and the limitation of not able to 
represent -2^(8N-1)
 public class IntegerDimEnc extends DimensionEncoding {
 private static final long serialVersionUID = 1L;
 
@@ -122,7 +121,7 @@ public class IntegerDimEnc extends DimensionEncoding {
 
 //only take useful bytes
 integer = integer & MASK[fixedLen];
-boolean positive = (integer & 

[08/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_str/data_2
--
diff --git a/engine-mr/src/test/resources/multi_file_str/data_2 
b/engine-mr/src/test/resources/multi_file_str/data_2
new file mode 100644
index 000..affa581
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_str/data_2
@@ -0,0 +1,1992 @@
+0045ee27-7fc4-4b1c-9ed6-8902e80692c9
+00565369-b833-4e1f-a8ef-6f825242a4d4
+00795204-5a38-4af5-8375-bba5e4382dc7
+00b25c18-9fd6-4b90-892c-a57ffd5841b3
+01401e6f-8dc0-43a3-99ad-6bc1c678bd21
+015c6973-3f32-4a0a-88f2-1f82a1b9f6a2
+01654b43-2c4b-4af1-96b4-fdd8a2b75536
+016da6e6-f4c2-48c6-adf7-4aaf6a7fd850
+016db1b7-82f8-438c-9aaf-125ed70f7975
+016fda45-f76d-41b2-b3f3-d693f38141e9
+0178b2fc-907e-4867-80fc-a2c840978049
+01bb4af2-f5a8-4d6f-8a69-08a5ea3601f7
+01db1b24-cde1-450e-a979-27940c524631
+02078814-e580-4ae7-b77b-7a320fe28282
+0213ef6b-ba04-4140-b5d5-536bf156c226
+02185e06-c1db-4402-8057-e54a3755cf68
+0228d81b-3798-4110-8448-35efb404e46e
+023a4071-3e92-4918-8f06-f213b9bc3b4e
+025c8eb6-dc5e-47c5-a921-ef231a71c6c3
+028369d7-d3a0-4ec2-b84d-517ea9f1bdcb
+029d97cb-86d1-46fe-ac71-e0774ef20c6e
+02e8e373-4ac8-4dcd-b798-8520a641b080
+02f2775c-fb9e-4694-9a22-2642d6d8244b
+03135972-ec17-447b-8042-fd2eb1ee4260
+033896e7-41e8-44f0-b94e-26a0370d1ee0
+038362fe-1152-4747-a143-dc1557168bae
+0397a221-5c5e-41f6-a972-cf360394d758
+039d1f7d-37f2-4864-8ea4-fb4dee9ef071
+03c6a446-4e75-466d-82b1-1b584ebf50c9
+03fb2a98-60da-429d-9588-a37ddad214ba
+040b9fd9-306a-413d-9924-9aeacfd39afc
+040c3f99-f755-4fcb-b537-15a51d73d29d
+040ce641-8ebc-4364-a8c2-bacabc96443d
+046016f3-6d75-4174-b9f9-5e067aadff7d
+04ad7bb4-650d-4d01-930d-22ebad831bf1
+04d0ed08-3bee-4554-90de-0e8883962c3e
+04e6bcdb-ac32-49ce-a82e-3763aee08b5c
+04e90c02-fe9d-4530-8012-7dcd6147cce6
+05336a1c-c0c5-4d11-be62-95da26541369
+0550854c-43d8-47a8-a9f4-7043de9ed2b4
+05663e89-0efd-47fa-9a78-4804dd47a37b
+056c162c-73b6-4cff-a372-5977c14d79e7
+058a1d60-ce40-4fcd-8de9-e74b4eac1bf4
+058d24aa-aeb0-4ed7-b90f-b4bc6bf637c4
+0615d8e3-d38d-4602-9869-f26601771647
+063d25b6-e8d6-47a0-a5cb-4a85a93d80f3
+06828737-e134-4c27-b9c7-64b238f2144f
+06bbed15-89fb-4ee3-92db-ed099cd66c1b
+06c1db91-42ac-4f5e-8049-024995a2b20c
+06d082af-9435-44f1-a754-56df2e1e0218
+06db6e63-6dc5-4f4b-ab66-edcb7bdeabfa
+06e6568d-cc25-4409-bd55-c999561c2125
+06f0de8b-c447-41e4-aff5-73b36ce2d763
+0765b13d-8d51-4001-84f8-2f466282ec0a
+078db134-2b98-4e82-9964-dbfce9213558
+0790aec1-62a6-422a-918f-a199ba30e616
+07a2bdc8-eb67-4a33-af47-4da629d9967b
+07c03faf-a528-46de-9c53-a54a4fffbb8e
+07c1104d-4b8b-45db-97cb-f309a4257598
+07f9e2db-c32d-43c9-9a94-c1b14986f550
+085eefd2-0fb0-4635-91ae-2e787f24e772
+08875a08-f046-4cac-8b95-d5f124f3949b
+0895db75-9173-4002-b8aa-25e28ca8f082
+08b61437-2781-43f0-b984-8c65599cadb7
+08e63679-4812-4e2f-895d-3f4cfeac0f2b
+08f9526e-294a-41fa-bb4a-b6456df30ffd
+0900817a-a85e-4ae4-a48e-6e6c7d9db3f6
+091350dc-c50f-452d-8994-0c17ab592770
+091689c5-800c-487e-b944-77cb1b52f6ab
+09614ac1-d05d-4b7f-ae85-21c91333b4e9
+096b7528-e16e-4ec1-8547-af6acf881dc4
+09a3011b-8c20-427e-9804-aef8a0e4575f
+09b61041-21e3-4cdf-826a-f50f6073baa0
+09cf53f3-0617-422b-a3b8-37cc604d50d9
+09d32625-87ed-4109-a9f8-d12b11b11f20
+09e36bfb-b527-472a-9947-8810fd0aa78c
+09e53921-215b-418f-b866-bccc4edfe6b9
+09f5c5cd-ec62-4299-8351-b2bf76c7bd4a
+0a198682-6836-4f10-b7c0-46ca620d5103
+0a91da68-234c-46aa-8554-14e386f901fc
+0aa3aa8c-0b2c-4cbc-b53e-e7bff33506e6
+0aae8b44-9689-44f8-bdc4-75cd7d8f863f
+0ab56e1a-8e60-44ae-8130-36970b1c5d4a
+0ad567cd-f733-47a2-b13f-e753c1767cc2
+0ae4451e-89a4-48b4-9de8-83fe5678a79f
+0b03528b-4cb5-4e66-b871-5c200e529d1f
+0b9e6cf7-9d7e-4b98-b061-64d3ad6e075b
+0ba845e9-699f-47a3-9870-395299d2f359
+0bd30618-b404-4c18-9066-840ac2ce4812
+0c39b4e2-f78b-4f31-b6dd-c58505a2aefa
+0c46ef6d-30f6-479d-bf1e-2314e379e843
+0c4a25b9-7ef6-4607-a47f-256e6f30d86c
+0c52a734-8630-4309-a752-f2b1d130d657
+0c588cf9-84df-40c8-896d-c895cfa736d9
+0c5fdb86-88ba-4f89-b042-e7a6d5fff03e
+0cf9aad5-bb4a-461d-b2bd-699ad978d2c7
+0d419616-8a18-45b0-8f9e-ad30e3ba2887
+0d467189-117a-4b98-8515-67f57b3a8f31
+0d91b525-db8c-4bbd-b7a3-4bab45be8c8c
+0e035f76-86cb-45c4-89a8-03325d171df9
+0e0ed498-067c-4818-9bec-b76e4953cb0e
+0e1009a2-f522-4eeb-9356-b8683b4d49d3
+0e335e20-321b-4e41-8763-00c8c6e4930a
+0e909803-a39e-476a-8265-1f56d77d0b53
+0e9c1c91-f818-48d9-a8ad-6956b184b7b6
+0ea7e399-8766-47b8-952b-10f752e50872
+0eaba7b6-5853-4ef8-81c8-9437d75fe837
+0ecbd07a-5230-439e-a690-72feb8f4c2de
+0eebec4e-5a48-4fde-9ee4-af6a469a2c11
+0f04df6b-20be-4cc4-b7d0-65dceb1b56e4
+0f17b161-2218-4404-a681-95c02dea9485
+0f228d7b-5608-4f89-8967-ecfa4e05714c
+0f3f8a3a-bda0-46fc-8945-da18676d8496
+0f7eafc1-2062-4674-95be-286a33f4cf15
+0fbf77ea-3dfe-45ff-b37b-282e4862bc2f
+101c7808-ed59-45cb-90bc-8613ecfc6e31
+1021ddb3-b705-4387-9b5c-6375809b3e0f
+102c775a-8a33-4e39-ba77-41f54b1e6786
+104c0682-c09f-49ec-b71f-2f0731b74e93
+104f5c65-b19b-4283-a0eb-82bbe46a644e

[24/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/core-dictionary/src/main/java/org/apache/kylin/dict/lookup/SnapshotTable.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/lookup/SnapshotTable.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/lookup/SnapshotTable.java
index db1a170..f2edcb4 100644
--- 
a/core-dictionary/src/main/java/org/apache/kylin/dict/lookup/SnapshotTable.java
+++ 
b/core-dictionary/src/main/java/org/apache/kylin/dict/lookup/SnapshotTable.java
@@ -1,285 +1,285 @@
-/*
- * 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.dict.lookup;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.File;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import com.google.common.base.Strings;
-import org.apache.commons.io.IOUtils;
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.kylin.common.persistence.ResourceStore;
-import org.apache.kylin.common.persistence.RootPersistentEntity;
-import org.apache.kylin.common.util.Dictionary;
-import org.apache.kylin.dict.StringBytesConverter;
-import org.apache.kylin.dict.TrieDictionary;
-import org.apache.kylin.dict.TrieDictionaryBuilder;
-import org.apache.kylin.metadata.model.ColumnDesc;
-import org.apache.kylin.metadata.model.TableDesc;
-import org.apache.kylin.source.ReadableTable;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/**
- * @author yangli9
- */
-@SuppressWarnings("serial")
-@JsonAutoDetect(fieldVisibility = Visibility.NONE, getterVisibility = 
Visibility.NONE, isGetterVisibility = Visibility.NONE, setterVisibility = 
Visibility.NONE)
-public class SnapshotTable extends RootPersistentEntity implements 
ReadableTable {
-
-@JsonProperty("tableName")
-private String tableName;
-@JsonProperty("signature")
-private TableSignature signature;
-@JsonProperty("useDictionary")
-private boolean useDictionary;
-
-private ArrayList rowIndices;
-private Dictionary dict;
-
-// default constructor for JSON serialization
-public SnapshotTable() {
-}
-
-SnapshotTable(ReadableTable table, String tableName) throws IOException {
-this.tableName = tableName;
-this.signature = table.getSignature();
-this.useDictionary = true;
-}
-
-public void takeSnapshot(ReadableTable table, TableDesc tableDesc) throws 
IOException {
-this.signature = table.getSignature();
-
-int maxIndex = tableDesc.getMaxColumnIndex();
-
-TrieDictionaryBuilder b = new 
TrieDictionaryBuilder(new StringBytesConverter());
-
-TableReader reader = table.getReader();
-try {
-while (reader.next()) {
-String[] row = reader.getRow();
-if (row.length <= maxIndex) {
-throw new IllegalStateException("Bad hive table row, " + 
tableDesc + " expect " + (maxIndex + 1) + " columns, but got " + 
Arrays.toString(row));
-}
-for (ColumnDesc column : tableDesc.getColumns()) {
-String cell = row[column.getZeroBasedIndex()];
-if (cell != null)
-b.addValue(cell);
-}
-}
-} finally {
-IOUtils.closeQuietly(reader);
-}
-
-this.dict = b.build(0);
-
-ArrayList allRowIndices = new ArrayList();
-reader = table.getReader();
-try {
-while (reader.next()) {
-String[] row = reader.getRow();
-int[] rowIndex = new int[tableDesc.getColumnCount()];
-for (ColumnDesc column : tableDesc.getColumns()) {
-rowIndex[column.getZeroBasedIndex()] = 
dict.getIdFromValue(row[column.getZeroBasedIndex()]);
-}
-allRowIndices.add(rowIndex);
-}
-} finally {
-

[04/50] [abbrv] kylin git commit: int deorecated show better

2016-11-27 Thread liyang
int deorecated show better

Signed-off-by: Hongbin Ma 


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

Branch: refs/heads/KYLIN-1875
Commit: bce9ab822492772c7c2b42421941421dfb27f9f7
Parents: a058049
Author: luguosheng <550175...@qq.com>
Authored: Tue Nov 22 17:12:35 2016 +0800
Committer: Hongbin Ma 
Committed: Tue Nov 22 17:14:04 2016 +0800

--
 webapp/app/js/controllers/cubeEdit.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/bce9ab82/webapp/app/js/controllers/cubeEdit.js
--
diff --git a/webapp/app/js/controllers/cubeEdit.js 
b/webapp/app/js/controllers/cubeEdit.js
index 10f8185..888662d 100755
--- a/webapp/app/js/controllers/cubeEdit.js
+++ b/webapp/app/js/controllers/cubeEdit.js
@@ -49,7 +49,7 @@ KylinApp.controller('CubeEditCtrl', function ($scope, $q, 
$routeParams, $locatio
   var name = value;
   var typeVersion=+encodings[i];
   if(value=="int"){
-name = "int deprecated";
+name = "int (deprecated)";
   }
   if(/\d+/.test(""+typeVersion)&>1){
   for(var s=1;s<=typeVersion;s++){



[33/50] [abbrv] kylin git commit: minor, cleanup kylin_rest_address in kylin.sh

2016-11-27 Thread liyang
minor, cleanup kylin_rest_address in kylin.sh


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

Branch: refs/heads/KYLIN-1875
Commit: 53b5a6d8e2fa854cbf09ea66fc39bdfbd961950f
Parents: 83adb8e
Author: Yang Li 
Authored: Wed Nov 23 22:28:38 2016 +0800
Committer: Yang Li 
Committed: Wed Nov 23 22:28:38 2016 +0800

--
 build/bin/kylin.sh| 10 +-
 .../apache/kylin/common/BackwardCompatibilityConfig.java  |  2 ++
 2 files changed, 3 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/53b5a6d8/build/bin/kylin.sh
--
diff --git a/build/bin/kylin.sh b/build/bin/kylin.sh
index d3aa4cb..fca1e5c 100644
--- a/build/bin/kylin.sh
+++ b/build/bin/kylin.sh
@@ -86,14 +86,7 @@ then
 #additionally add tomcat libs to HBASE_CLASSPATH_PREFIX
 export 
HBASE_CLASSPATH_PREFIX=${tomcat_root}/bin/bootstrap.jar:${tomcat_root}/bin/tomcat-juli.jar:${tomcat_root}/lib/*:${HBASE_CLASSPATH_PREFIX}
 
-if [ -z "$KYLIN_REST_ADDRESS" ]
-then
-kylin_rest_address=`hostname -f`":"`grep "/dev/null 2>&1; nc_result=$?
 if [ $nc_result -eq 0 ]; then
@@ -119,7 +112,6 @@ then
 -Dkylin.hive.dependency=${hive_dependency} \
 -Dkylin.hbase.dependency=${hbase_dependency} \
 -Dkylin.kafka.dependency=${kafka_dependency} \
--Dkylin.rest.address=${kylin_rest_address} \
 -Dspring.profiles.active=${spring_profile} \
 org.apache.hadoop.util.RunJar ${tomcat_root}/bin/bootstrap.jar  
org.apache.catalina.startup.Bootstrap start >> ${KYLIN_HOME}/logs/kylin.out 
2>&1 & echo $! > ${KYLIN_HOME}/pid &
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/53b5a6d8/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
 
b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
index 664d9bb..21df932 100644
--- 
a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
+++ 
b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
@@ -185,6 +185,8 @@ public class BackwardCompatibilityConfig {
 // exclude webapp/app/components
 if (f.getName().equals("components") && 
f.getParentFile().getName().equals("app"))
 return false;
+else if (f.getName().equals("node_modules") && 
f.getParentFile().getName().equals("webapp"))
+return false;
 else if (f.getName().equals("target"))
 return false;
 else



[36/50] [abbrv] kylin git commit: KYLIN-2229 update source-assembly.xml

2016-11-27 Thread liyang
KYLIN-2229 update source-assembly.xml


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

Branch: refs/heads/KYLIN-1875
Commit: af3e4fece65b7f7add39bb016ba03e0e7774ab3e
Parents: 873f903
Author: shaofengshi 
Authored: Thu Nov 24 09:44:22 2016 +0800
Committer: shaofengshi 
Committed: Thu Nov 24 13:38:25 2016 +0800

--
 assembly/src/main/config/assemblies/source-assembly.xml | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/af3e4fec/assembly/src/main/config/assemblies/source-assembly.xml
--
diff --git a/assembly/src/main/config/assemblies/source-assembly.xml 
b/assembly/src/main/config/assemblies/source-assembly.xml
index 23a215b..fad45aa 100644
--- a/assembly/src/main/config/assemblies/source-assembly.xml
+++ b/assembly/src/main/config/assemblies/source-assembly.xml
@@ -92,12 +92,14 @@ limitations under the License.
 
%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?dist(/.*)?]
 
 
-
%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?build(/.*)?]
-
 
%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?lib(/.*)?]
 
 
%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?docs(/.*)?]
 
+
+
+
%regex[(?!((?!${project.build.directory}/)))?engine-spark(/.*)?]
+
 
 
 



[47/50] [abbrv] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
--
diff --git a/examples/sample_cube/template/cube_desc/kylin_sales_cube.json 
b/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
index eb17922..48eef46 100644
--- a/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
+++ b/examples/sample_cube/template/cube_desc/kylin_sales_cube.json
@@ -6,27 +6,32 @@
   "description" : null,
   "null_string" : null,
   "dimensions" : [ {
+"name" : "TRANS_ID",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "TRANS_ID",
+"derived" : null
+  }, {
 "name" : "CAL_DT",
 "table" : "DEFAULT.KYLIN_CAL_DT",
 "column" : "{FK}",
-"derived" : [ "WEEK_BEG_DT" ]
+"derived" : [ "WEEK_BEG_DT", "MONTH_BEG_DT", "YEAR_BEG_DT" ]
   }, {
 "name" : "CATEGORY",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "{FK}",
 "derived" : [ "USER_DEFINED_FIELD1", "USER_DEFINED_FIELD3" ]
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "META_CATEG_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "META_CATEG_NAME",
 "derived" : null
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "CATEG_LVL2_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "CATEG_LVL2_NAME",
 "derived" : null
   }, {
-"name" : "CATEGORY_HIERARCHY",
+"name" : "CATEG_LVL3_NAME",
 "table" : "DEFAULT.KYLIN_CATEGORY_GROUPINGS",
 "column" : "CATEG_LVL3_NAME",
 "derived" : null
@@ -36,14 +41,54 @@
 "column" : "LSTG_FORMAT_NAME",
 "derived" : null
   }, {
-"name" : "USER_ID",
+"name" : "SELLER_ID",
 "table" : "DEFAULT.KYLIN_SALES",
-"column" : "USER_ID",
+"column" : "SELLER_ID",
 "derived" : null
   }, {
-"name" : "REGION",
+"name" : "BUYER_ID",
 "table" : "DEFAULT.KYLIN_SALES",
-"column" : "REGION",
+"column" : "BUYER_ID",
+"derived" : null
+  }, {
+"name" : "ACCOUNT_BUYER_LEVEL",
+"table" : "BUYER_ACCOUNT",
+"column" : "ACCOUNT_BUYER_LEVEL",
+"derived" : null
+  }, {
+"name" : "ACCOUNT_SELLER_LEVEL",
+"table" : "SELLER_ACCOUNT",
+"column" : "ACCOUNT_SELLER_LEVEL",
+"derived" : null
+  }, {
+"name" : "BUYER_COUNTRY",
+"table" : "BUYER_ACCOUNT",
+"column" : "ACCOUNT_COUNTRY",
+"derived" : null
+  }, {
+"name" : "SELLER_COUNTRY",
+"table" : "SELLER_ACCOUNT",
+"column" : "ACCOUNT_COUNTRY",
+"derived" : null
+  }, {
+"name" : "BUYER_COUNTRY_NAME",
+"table" : "BUYER_COUNTRY",
+"column" : "NAME",
+"derived" : null
+  }, {
+"name" : "SELLER_COUNTRY_NAME",
+"table" : "SELLER_COUNTRY",
+"column" : "NAME",
+"derived" : null
+  }, {
+"name" : "OPS_USER_ID",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "OPS_USER_ID",
+"derived" : null
+  }, {
+"name" : "OPS_REGION",
+"table" : "DEFAULT.KYLIN_SALES",
+"column" : "OPS_REGION",
 "derived" : null
   } ],
   "measures" : [ {
@@ -56,8 +101,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "GMV_MIN",
 "function" : {
@@ -68,8 +112,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "GMV_MAX",
 "function" : {
@@ -80,8 +123,7 @@
 "next_parameter" : null
   },
   "returntype" : "decimal(19,4)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "TRANS_CNT",
 "function" : {
@@ -92,8 +134,7 @@
 "next_parameter" : null
   },
   "returntype" : "bigint"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "SELLER_CNT_HLL",
 "function" : {
@@ -104,20 +145,7 @@
 "next_parameter" : null
   },
   "returntype" : "hllc(10)"
-},
-"dependent_measure_ref" : null
-  }, {
-"name" : "SELLER_FORMAT_CNT",
-"function" : {
-  "expression" : "COUNT_DISTINCT",
-  "parameter" : {
-"type" : "column",
-"value" : "LSTG_FORMAT_NAME",
-"next_parameter" : null
-  },
-  "returntype" : "hllc(10)"
-},
-"dependent_measure_ref" : null
+}
   }, {
 "name" : "TOP_SELLER",
 "function" : {
@@ -132,13 +160,21 @@
 }
   },
   "returntype" : "topn(100)"
-},
-"dependent_measure_ref" : null
+}
   } ],
   "rowkey" : {
 "rowkey_columns" : [ {
+  "column" : "BUYER_ID",
+  "encoding" : "integer:4"
+}, {
+  "column" : "SELLER_ID",
+  "encoding" : "integer:4"
+}, {
+  "column" : "TRANS_ID",
+  "encoding" : "integer:4"
+}, {
   "column" : "PART_DT",
-  "encoding" : "dict"
+  "encoding" : "date"
 }, {
   "column" : "LEAF_CATEG_ID",
   "encoding" : 

[26/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/core-cube/src/main/java/org/apache/kylin/cube/model/validation/rule/StreamingCubeRule.java
--
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/model/validation/rule/StreamingCubeRule.java
 
b/core-cube/src/main/java/org/apache/kylin/cube/model/validation/rule/StreamingCubeRule.java
index db331d5..fb0db8c 100644
--- 
a/core-cube/src/main/java/org/apache/kylin/cube/model/validation/rule/StreamingCubeRule.java
+++ 
b/core-cube/src/main/java/org/apache/kylin/cube/model/validation/rule/StreamingCubeRule.java
@@ -1,79 +1,79 @@
-/*
- * 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.cube.model.validation.rule;
-
-import org.apache.kylin.cube.model.CubeDesc;
-import org.apache.kylin.cube.model.DimensionDesc;
-import org.apache.kylin.cube.model.validation.IValidatorRule;
-import org.apache.kylin.cube.model.validation.ResultLevel;
-import org.apache.kylin.cube.model.validation.ValidateContext;
-import org.apache.kylin.metadata.model.DataModelDesc;
-import org.apache.kylin.metadata.model.ISourceAware;
-
-import org.apache.kylin.metadata.model.TblColRef;
-
-/**
- *
- */
-public class StreamingCubeRule implements IValidatorRule {
-
-/*
- * (non-Javadoc)
- * 
- * @see
- * 
org.apache.kylin.metadata.validation.IValidatorRule#validate(java.lang.Object
- * , org.apache.kylin.metadata.validation.ValidateContext)
- */
-@Override
-public void validate(CubeDesc cube, ValidateContext context) {
-DataModelDesc model = cube.getModel();
-
-if (model.getRootFactTable().getTableDesc().getSourceType() != 
ISourceAware.ID_STREAMING) {
-return;
-}
-
-if (model.getLookupTables().size() > 0) {
-context.addResult(ResultLevel.ERROR, "Streaming Cube doesn't 
support star-schema so far; only one fact table is allowed.");
-return;
-}
-
-if (model.getPartitionDesc() == null || 
model.getPartitionDesc().getPartitionDateColumn() == null) {
-context.addResult(ResultLevel.ERROR, "Must define a partition 
column.");
-return;
-}
-
-final TblColRef partitionCol = 
model.getPartitionDesc().getPartitionDateColumnRef();
-boolean found = false;
-for (DimensionDesc dimensionDesc : cube.getDimensions()) {
-for (TblColRef dimCol : dimensionDesc.getColumnRefs()) {
-if (dimCol.equals(partitionCol)) {
-found = true;
-break;
-}
-}
-}
-
-if (found == false) {
-context.addResult(ResultLevel.ERROR, "Partition column '" + 
partitionCol + "' isn't in dimension list.");
-return;
-}
-
-}
-
-}
+/*
+ * 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.cube.model.validation.rule;
+
+import org.apache.kylin.cube.model.CubeDesc;
+import org.apache.kylin.cube.model.DimensionDesc;
+import org.apache.kylin.cube.model.validation.IValidatorRule;
+import org.apache.kylin.cube.model.validation.ResultLevel;
+import org.apache.kylin.cube.model.validation.ValidateContext;
+import org.apache.kylin.metadata.model.DataModelDesc;
+import org.apache.kylin.metadata.model.ISourceAware;
+
+import org.apache.kylin.metadata.model.TblColRef;
+
+/**
+ *
+ */
+public class 

[07/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_str/data_3
--
diff --git a/engine-mr/src/test/resources/multi_file_str/data_3 
b/engine-mr/src/test/resources/multi_file_str/data_3
new file mode 100644
index 000..f8195c6
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_str/data_3
@@ -0,0 +1,1948 @@
+0096b54c-a8ba-4c45-b579-14d6dbe135dd
+00980ae3-dbcc-45a2-b003-6f761a99d32d
+0125a3fe-53a4-413f-9c79-1a221e5821ca
+0125d522-8c77-4dfc-8b48-2e3e693955c7
+0125f5c9-fd20-41c8-bf8b-24929664ce4e
+0133fa28-78cc-4b70-a63c-51cf77e0fe70
+0165b916-74fd-4d5a-a26e-56828bde147b
+016d1cfb-129b-4788-893e-a124034ebdfb
+02237af5-4665-48b7-ad55-25db423a3d81
+02318922-1d3e-49fd-9d1c-12b9764ae9f7
+0232a118-7b48-4b0b-8e16-0dfd0633e236
+02576c08-1082-47f4-9efb-0dcd12698d93
+027768b7-7775-4ae5-9ec5-9a68d601f615
+029329b5-44b5-4127-bb39-c7903b5a9804
+02af5639-679c-4694-81d1-a8d61617246c
+02ca7081-41b4-4ea7-9fc4-a921542bb829
+02e23288-21ef-4c3a-8370-83a3735b523d
+02e72bcc-48b5-4c52-8fa4-22d026290b48
+02f266bc-bb2d-476d-b8c2-69efa25de39d
+032825c3-3660-4b1d-8b61-64afa8a5a0ce
+03287e77-ccd7-43cb-a81e-5146905e558d
+032b09d7-c50a-48a7-bc02-ff98794f1303
+0338e66e-1f09-4da3-8846-2995b90ed4f2
+034677fa-5dd5-4a2d-a25a-e3130dff3ae0
+03926636-7251-488e-811d-670aaabe0b15
+039cc454-99f8-4081-9e04-58142af8b791
+03ccf53c-851b-4eb6-96dd-ee32a4349ce7
+03cdf1ae-947d-4dac-80a5-542bf633de3c
+03ece7f8-912d-4b7c-9fb8-d8bce8b3c03e
+03ef4a93-7ecb-411f-bf28-91eb4f4d5390
+04270d3d-cc3e-40ef-a95a-32ee4b60080f
+04682d83-3f08-4daa-8f4b-4377439d7e67
+04836cef-a499-45e9-b4db-e5cbe6a47360
+0499503b-7ffc-4d2f-91c6-083f0437ce25
+04aa3c7a-4d78-46ad-abbd-3a39d5aa1fd7
+04d64d9b-d56b-44f8-9165-c67c95b269b4
+04db6ade-4ddb-40ed-a64c-086b69afb54d
+04e4e1df-06d7-4830-a6ca-b5aa8bcc3bae
+04fa63c4-26a3-41c4-bec9-80af3e3f9054
+05122c37-3ab2-4995-9879-0dc60a847acd
+0523a8a8-49c1-477a-9bb8-84604a4585e1
+05460f94-1a47-4857-9935-c6dade2772f9
+057cc7c2-c290-4d74-ad1b-4c088a52f9f0
+05910d98-139c-475c-bff3-deec71f149e0
+05960493-10c8-4cbc-8e33-1d26b4094db9
+05b0669a-77c2-4d94-bf47-03de9d8b2753
+05bc4a47-caa2-4c33-a767-dfe919db0922
+05cc3e00-2d7a-4dc2-aad2-748a3f873e3f
+060c973d-53b2-40ee-9a56-ae3c213584cd
+0612b50c-e374-4735-8860-acdfe633c575
+06167be2-490f-440a-b56d-b67c8a3cfb4c
+061b7f3e-d1e1-481a-85c3-e2925eb33299
+065288c8-9f18-46d7-8574-268f5faa2153
+065a5e40-d5c2-4a0d-bd17-f2813f3fae41
+06b50675-1c2f-445d-a150-59216dafda8b
+06c11a51-82eb-4b3e-9e5b-6513380a992c
+06c9051d-800c-4aea-8215-4ed50dd2134c
+072ed7d6-edd7-4f9d-bda5-741faa78eb14
+077367d1-9503-4c05-ac4e-4ca6d625dd76
+07a3605b-42ad-4713-ad68-66d82791d913
+07aa0f29-332f-4d8e-bf16-464b13d0823b
+07fd8163-fcbc-49bb-8e36-c67ada2f7995
+08051883-1810-4139-be4b-c35243ff97c7
+08053d2e-2097-4211-9b94-3815d69935d8
+08085995-1ca5-4bab-8e48-1d85d4fc7997
+080d85cd-505d-4041-96a4-929fdb6e67f6
+087fd627-9ce4-4b85-9c44-e07aab81806c
+0899d820-1d47-4d4e-94b8-9a09feaaa9f4
+08abd59e-e720-4ea0-81a4-c40b4d98cc2e
+08ce11e7-ea27-4df0-90f0-d8dc429b7b06
+08e6b700-d15c-4f92-a9dd-2930135af5e4
+0905ff6b-a93d-45d0-999f-369cbb601d90
+090fcffb-842b-4c5d-a119-3af601b121a8
+0917adbf-036a-471f-947d-a3ea53c9f5c9
+093849cb-654e-4cfe-ad5e-d6407d597e98
+0946b9c7-7adf-4587-b514-ced7816d6530
+09677dc3-75c9-4349-92d5-6d29a77ef923
+098ba031-8626-4ebe-9abf-0817d0282a6a
+0995a065-7917-4f0e-b28b-0ddfde40b7b8
+09a708c9-28a5-48dc-9b0c-0abe233b24d4
+09dfbd16-ed86-4463-9317-ddd2f7bff51e
+09f3cd27-b43d-476e-a2d0-8ae3e52e85ba
+09f7c9c6-6b17-460b-a3b9-598017533c08
+0a13e299-faa4-443c-b091-9664d7e9987d
+0a349398-b03d-43df-83ee-cd4817cd55fd
+0a4edb8c-acd4-43aa-961f-15fee1b7eaaa
+0aae781d-c933-4f21-9b28-ee4e1a067010
+0b1aece5-6f38-429a-9364-177d330ebeca
+0b5fed21-ce2c-4d9e-96a3-e1ba98cf05d6
+0b6f398e-187a-432f-845e-b6492f4d5786
+0b9e17e7-3e27-4050-ab69-b3c43b1d1e21
+0c10c194-cedf-48d9-b657-578a588894f3
+0c13bfe1-7696-4581-8a31-b8d26af3ef0c
+0c418c78-4164-423d-ad3e-52d0d12f4e51
+0c8bcc53-304c-47af-a508-64304085d2d3
+0cb9ce1d-b7d1-47de-8b7d-ae5db873fe01
+0ce24a01-3e71-4313-8db8-93b3a0154861
+0cfbe1c7-f421-4bdd-bfec-7e911734b120
+0d49500e-d916-4acb-94f4-39f24631ba32
+0d56c741-99fe-46c3-ac08-94d4ea181bea
+0d99bc6e-de2f-42d6-ae2b-94a513653c18
+0d9c1820-fec9-4417-bef8-05dfe93e6ace
+0db6ce11-13f8-4115-bf53-a427ab9873b5
+0dba3aa5-8cbf-4e5b-a2f7-a89a64e2a0e9
+0dc6e590-1032-4595-a4fc-03e39f124061
+0e1c80dd-329b-49e9-bf59-cc8c088bd1ad
+0e3cea58-74d6-4924-ac8d-aa05ad28098d
+0e671f4d-2b9a-411f-94c5-26af38be1abd
+0e76d428-b0f5-4cea-ad19-41f87bbdafe1
+0e97a938-c8e4-4ae7-8c44-b2c9144642d3
+0eb3e881-951a-490c-922d-0f58b1180467
+0edf9bce-c6ee-4c28-bb11-dd2731dd4090
+0eff50b6-21dc-42db-a760-52ed81a53883
+0f197e9e-c1be-4892-821b-0466ea21b1f6
+0f203bf6-e0d2-4b96-a10c-bd60639d6e44
+0f43abde-8225-4f8f-a617-4c3a08d794f3
+0f9b0c36-fa01-41c8-86aa-fb7bd09a58b4
+0fcd9c32-8c07-4000-a007-42931b799d70
+0fe2fe4e-59c7-42b7-96b1-c9dd9dc9e74f
+10121383-3843-4f29-9ac3-63d51855d297

[22/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/source-hive/src/test/java/org/apache/kylin/source/hive/HiveCmdBuilderTest.java
--
diff --git 
a/source-hive/src/test/java/org/apache/kylin/source/hive/HiveCmdBuilderTest.java
 
b/source-hive/src/test/java/org/apache/kylin/source/hive/HiveCmdBuilderTest.java
index da0c082..0eb02b4 100644
--- 
a/source-hive/src/test/java/org/apache/kylin/source/hive/HiveCmdBuilderTest.java
+++ 
b/source-hive/src/test/java/org/apache/kylin/source/hive/HiveCmdBuilderTest.java
@@ -40,13 +40,13 @@ public class HiveCmdBuilderTest {
 
 @After
 public void after() throws Exception {
-System.clearProperty("kylin.hive.client");
-System.clearProperty("kylin.hive.beeline.params");
+System.clearProperty("kylin.source.hive.client");
+System.clearProperty("kylin.source.hive.beeline-params");
 }
 
 @Test
 public void testHiveCLI() {
-System.setProperty("kylin.hive.client", "cli");
+System.setProperty("kylin.source.hive.client", "cli");
 
 HiveCmdBuilder hiveCmdBuilder = new HiveCmdBuilder();
 hiveCmdBuilder.addStatement("USE default;");
@@ -59,8 +59,8 @@ public class HiveCmdBuilderTest {
 @Test
 public void testBeeline() throws IOException {
 String lineSeparator = java.security.AccessController.doPrivileged(new 
sun.security.action.GetPropertyAction("line.separator"));
-System.setProperty("kylin.hive.client", "beeline");
-System.setProperty("kylin.hive.beeline.params", "-u jdbc_url");
+System.setProperty("kylin.source.hive.client", "beeline");
+System.setProperty("kylin.source.hive.beeline-params", "-u jdbc_url");
 
 HiveCmdBuilder hiveCmdBuilder = new HiveCmdBuilder();
 hiveCmdBuilder.addStatement("USE default;");

http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/source-kafka/src/main/java/org/apache/kylin/source/kafka/hadoop/KafkaFlatTableJob.java
--
diff --git 
a/source-kafka/src/main/java/org/apache/kylin/source/kafka/hadoop/KafkaFlatTableJob.java
 
b/source-kafka/src/main/java/org/apache/kylin/source/kafka/hadoop/KafkaFlatTableJob.java
index 3033bfd..f4d54c5 100644
--- 
a/source-kafka/src/main/java/org/apache/kylin/source/kafka/hadoop/KafkaFlatTableJob.java
+++ 
b/source-kafka/src/main/java/org/apache/kylin/source/kafka/hadoop/KafkaFlatTableJob.java
@@ -1,164 +1,164 @@
-/*
- * 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.source.kafka.hadoop;
-
-import org.apache.kylin.job.engine.JobEngineConfig;
-import org.apache.kylin.source.kafka.util.KafkaClient;
-import org.apache.commons.cli.Options;
-import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.Text;
-import org.apache.hadoop.mapreduce.Job;
-import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
-import org.apache.hadoop.mapreduce.lib.output.SequenceFileOutputFormat;
-import org.apache.hadoop.util.ToolRunner;
-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.engine.mr.common.AbstractHadoopJob;
-import org.apache.kylin.engine.mr.common.BatchConstants;
-import org.apache.kylin.source.kafka.KafkaConfigManager;
-import org.apache.kylin.source.kafka.config.KafkaConfig;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.util.Collections;
-import java.util.Map;
-
-/**
- * Run a Hadoop Job to process the stream data in kafka;
- * Modified from the kafka-hadoop-loader in 
https://github.com/amient/kafka-hadoop-loader
- */
-public class KafkaFlatTableJob extends AbstractHadoopJob {
-protected static final Logger logger = 
LoggerFactory.getLogger(KafkaFlatTableJob.class);
-
-public static final String CONFIG_KAFKA_PARITION_MIN = 
"kafka.partition.min";
-public static final String CONFIG_KAFKA_PARITION_MAX = 
"kafka.partition.max";
-public static final String CONFIG_KAFKA_PARITION_START = 
"kafka.partition.start.";
-public static 

[01/50] [abbrv] kylin git commit: encoding add filter by column type

2016-11-27 Thread liyang
Repository: kylin
Updated Branches:
  refs/heads/KYLIN-1875 cfa3d0d43 -> dbbbae227


encoding add filter by column type

Signed-off-by: Hongbin Ma 


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

Branch: refs/heads/KYLIN-1875
Commit: 8132cab31fc084cf6b83ab29884e6821d86bf249
Parents: 12221a3
Author: luguosheng <550175...@qq.com>
Authored: Sat Nov 19 16:49:41 2016 +0800
Committer: Hongbin Ma 
Committed: Tue Nov 22 14:00:12 2016 +0800

--
 webapp/app/js/controllers/cubeEdit.js | 51 +++---
 webapp/app/js/controllers/cubeMeasures.js | 33 +
 webapp/app/js/utils/utils.js  | 21 ---
 3 files changed, 70 insertions(+), 35 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/8132cab3/webapp/app/js/controllers/cubeEdit.js
--
diff --git a/webapp/app/js/controllers/cubeEdit.js 
b/webapp/app/js/controllers/cubeEdit.js
index a663d6f..9e2a3c9 100755
--- a/webapp/app/js/controllers/cubeEdit.js
+++ b/webapp/app/js/controllers/cubeEdit.js
@@ -77,33 +77,40 @@ KylinApp.controller('CubeEditCtrl', function ($scope, $q, 
$routeParams, $locatio
   },function(e){
 $scope.store.supportedEncoding = $scope.cubeConfig.encodings;
   })
-
+  $scope.createFilter=function(type){
+ if(type.indexOf("varchar")<=0){
+   return ['fixed_length_hex'];
+ }else if(type!="date"){
+   return ['date'];
+ }else if(type!="time"&!="datetime"&!="timestamp"){
+   return ['time'];
+ }else{
+   return [];
+ }
+  }
   $scope.getEncodings =function (name){
-var type = TableModel.columnNameTypeMap[name]||'';
-var encodings =[];
-for(var k=0;k<$scope.store.supportedEncoding.length;k++){
-  encodings.push($scope.store.supportedEncoding[k]);
-}
+var filterName=name;
+var type = TableModel.columnNameTypeMap[filterName]||'';
+var encodings =$scope.store.supportedEncoding,filterEncoding;
+var filerList=$scope.createFilter(type);
 if($scope.isEdit){
-  for(var s=0;s<$scope.cubeMetaFrame.rowkey.rowkey_columns.length;s++){
-if(name==$scope.cubeMetaFrame.rowkey.rowkey_columns[s].column){
-  var 
version=$scope.cubeMetaFrame.rowkey.rowkey_columns[s].encoding_version;
-  
encodings=VdmUtil.changeObjectListValueByFilter(encodings,'value',$scope.cubeMetaFrame.rowkey.rowkey_columns[s].encoding.replace(/:\d+/,"")+(version?"[v"+version+"]":"[v1]"),'suggest',true)
+  if($scope.cubeMetaFrame.rowkey.rowkey_columns&){
+for(var s=0;s<$scope.cubeMetaFrame.rowkey.rowkey_columns.length;s++){
+  if(filterName==$scope.cubeMetaFrame.rowkey.rowkey_columns[s].column){
+var 
version=$scope.cubeMetaFrame.rowkey.rowkey_columns[s].encoding_version;
+
filterEncoding=VdmUtil.getFilterObjectListByOrFilterVal(encodings,'value',$scope.cubeMetaFrame.rowkey.rowkey_columns[s].encoding.replace(/:\d+/,"")+(version?"[v"+version+"]":"[v1]"),'suggest',true)
+  }
 }
+  }else{
+
filterEncoding=VdmUtil.getFilterObjectListByOrFilterVal(encodings,'suggest',true);
   }
+}else{
+  
filterEncoding=VdmUtil.getFilterObjectListByOrFilterVal(encodings,'suggest',true);
 }
-//if(type.indexOf("varchar")!==-1){
-//
filterEncodings=VdmUtil.getObjectListByFilterVal(encodings,'baseValue',['fixed_length_hex','fixed_length'],'suggest',true);
-//}
-//else if(type=="date"){
-//filterEncodings = VdmUtil.getObjectListByFilterVal(encodings, 
'baseValue', 'date','suggest',true);
-//}else if(type=="time"||type=="datetime"||type=="timestamp"){
-//filterEncodings = VdmUtil.getObjectListByFilterVal(encodings, 
'baseValue', 'time','suggest',true);
-//}else{
-encodings=VdmUtil.getObjectListByFilterVal(encodings, '', 
'','suggest',true);
-//}
-
-return encodings;
+for(var f=0;f

[49/50] [abbrv] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
--
diff --git a/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv 
b/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
new file mode 100644
index 000..253afbf
--- /dev/null
+++ b/examples/sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv
@@ -0,0 +1,1 @@
+1000,1,4,FR,N/A
+1001,0,1,DE,N/A
+1002,0,1,IT,N/A
+1003,4,2,DE,N/A
+1004,2,3,JP,N/A
+1005,0,1,CN,N/A
+1006,2,3,JP,N/A
+1007,0,2,GB,N/A
+1008,5,3,US,N/A
+1009,1,3,US,N/A
+1010,1,1,IT,N/A
+1011,2,4,FR,N/A
+1012,3,1,CN,N/A
+1013,1,1,FR,N/A
+1014,5,3,CN,N/A
+1015,3,5,IT,N/A
+1016,4,5,JP,N/A
+1017,3,4,US,N/A
+1018,0,5,CN,N/A
+1019,4,4,GB,N/A
+1020,4,4,IT,N/A
+1021,1,2,FR,N/A
+1022,2,2,DE,N/A
+1023,0,1,GB,N/A
+1024,3,4,IT,N/A
+1025,4,4,JP,N/A
+1026,5,4,IT,N/A
+1027,2,4,FR,N/A
+1028,2,2,GB,N/A
+1029,1,1,GB,N/A
+1030,5,5,CN,N/A
+1031,4,2,CN,N/A
+1032,1,3,CN,N/A
+1033,2,1,JP,N/A
+1034,2,1,JP,N/A
+1035,4,2,US,N/A
+1036,5,4,DE,N/A
+1037,2,4,DE,N/A
+1038,1,3,US,N/A
+1039,3,5,US,N/A
+1040,2,3,GB,N/A
+1041,1,5,IT,N/A
+1042,5,5,CN,N/A
+1043,5,1,IT,N/A
+1044,3,4,IT,N/A
+1045,1,3,US,N/A
+1046,3,3,JP,N/A
+1047,2,2,FR,N/A
+1048,5,4,JP,N/A
+1049,3,1,JP,N/A
+1050,3,5,JP,N/A
+1051,5,1,US,N/A
+1052,3,5,DE,N/A
+1053,1,3,JP,N/A
+1054,5,1,GB,N/A
+1055,2,1,GB,N/A
+1056,2,3,CN,N/A
+1057,1,5,US,N/A
+1058,2,2,CN,N/A
+1059,2,4,FR,N/A
+1060,0,3,FR,N/A
+1061,0,5,FR,N/A
+1062,1,1,US,N/A
+1063,4,5,DE,N/A
+1064,2,5,GB,N/A
+1065,0,3,GB,N/A
+1066,1,1,IT,N/A
+1067,0,2,GB,N/A
+1068,4,1,IT,N/A
+1069,0,4,FR,N/A
+1070,3,4,CN,N/A
+1071,3,5,GB,N/A
+1072,4,3,CN,N/A
+1073,0,4,IT,N/A
+1074,5,3,GB,N/A
+1075,0,4,JP,N/A
+1076,2,5,JP,N/A
+1077,0,3,CN,N/A
+1078,4,3,GB,N/A
+1079,4,5,US,N/A
+1080,4,2,JP,N/A
+1081,5,2,CN,N/A
+1082,4,1,JP,N/A
+1083,0,4,GB,N/A
+1084,1,4,DE,N/A
+1085,4,4,FR,N/A
+1086,2,5,JP,N/A
+1087,0,1,IT,N/A
+1088,0,2,FR,N/A
+1089,3,2,DE,N/A
+1090,5,2,IT,N/A
+1091,0,3,GB,N/A
+1092,1,4,DE,N/A
+1093,2,1,IT,N/A
+1094,4,3,JP,N/A
+1095,1,1,DE,N/A
+1096,0,5,JP,N/A
+1097,3,3,CN,N/A
+1098,5,3,JP,N/A
+1099,3,1,GB,N/A
+1100,5,1,CN,N/A
+1101,2,3,JP,N/A
+1102,5,1,IT,N/A
+1103,5,2,GB,N/A
+1104,3,5,GB,N/A
+1105,3,1,DE,N/A
+1106,3,5,GB,N/A
+1107,5,3,DE,N/A
+1108,4,1,CN,N/A
+1109,4,3,GB,N/A
+1110,4,1,FR,N/A
+1111,3,5,FR,N/A
+1112,1,1,GB,N/A
+1113,5,4,FR,N/A
+1114,2,2,DE,N/A
+1115,4,3,GB,N/A
+1116,0,3,FR,N/A
+1117,1,4,CN,N/A
+1118,4,4,IT,N/A
+1119,0,2,CN,N/A
+1120,5,2,DE,N/A
+1121,0,2,GB,N/A
+1122,4,3,CN,N/A
+1123,1,4,FR,N/A
+1124,0,2,CN,N/A
+1125,4,5,US,N/A
+1126,0,4,GB,N/A
+1127,4,3,CN,N/A
+1128,4,3,GB,N/A
+1129,1,4,JP,N/A
+1130,2,2,JP,N/A
+1131,0,3,IT,N/A
+1132,4,1,GB,N/A
+1133,1,5,US,N/A
+1134,3,3,DE,N/A
+1135,3,2,IT,N/A
+1136,2,2,JP,N/A
+1137,0,3,CN,N/A
+1138,3,1,FR,N/A
+1139,2,3,FR,N/A
+1140,3,1,IT,N/A
+1141,0,3,US,N/A
+1142,3,4,FR,N/A
+1143,4,5,DE,N/A
+1144,3,3,JP,N/A
+1145,5,5,DE,N/A
+1146,2,5,FR,N/A
+1147,0,5,IT,N/A
+1148,2,5,US,N/A
+1149,0,3,CN,N/A
+1150,2,2,GB,N/A
+1151,5,5,CN,N/A
+1152,2,2,IT,N/A
+1153,3,2,FR,N/A
+1154,5,4,FR,N/A
+1155,3,5,FR,N/A
+1156,5,2,GB,N/A
+1157,1,2,IT,N/A
+1158,3,3,JP,N/A
+1159,5,1,IT,N/A
+1160,3,4,CN,N/A
+1161,2,5,IT,N/A
+1162,4,5,CN,N/A
+1163,3,5,FR,N/A
+1164,1,2,FR,N/A
+1165,0,3,GB,N/A
+1166,5,4,CN,N/A
+1167,4,5,IT,N/A
+1168,3,2,IT,N/A
+1169,3,2,DE,N/A
+1170,2,2,DE,N/A
+1171,3,1,IT,N/A
+1172,3,1,IT,N/A
+1173,3,5,CN,N/A
+1174,5,2,US,N/A
+1175,2,3,FR,N/A
+1176,5,5,JP,N/A
+1177,1,4,DE,N/A
+1178,4,5,GB,N/A
+1179,5,3,FR,N/A
+1180,2,3,GB,N/A
+1181,0,3,IT,N/A
+1182,3,2,JP,N/A
+1183,5,5,IT,N/A
+1184,4,1,IT,N/A
+1185,3,2,IT,N/A
+1186,3,2,CN,N/A
+1187,2,5,IT,N/A
+1188,3,2,JP,N/A
+1189,4,4,IT,N/A
+1190,4,3,GB,N/A
+1191,3,4,JP,N/A
+1192,2,2,FR,N/A
+1193,5,1,FR,N/A
+1194,5,2,US,N/A
+1195,2,5,FR,N/A
+1196,1,2,FR,N/A
+1197,5,3,FR,N/A
+1198,1,4,GB,N/A
+1199,1,3,FR,N/A
+1200,4,5,IT,N/A
+1201,3,1,GB,N/A
+1202,0,3,GB,N/A
+1203,4,3,DE,N/A
+1204,4,2,GB,N/A
+1205,4,2,DE,N/A
+1206,5,2,GB,N/A
+1207,1,5,DE,N/A
+1208,4,5,GB,N/A
+1209,0,3,FR,N/A
+1210,1,5,FR,N/A
+1211,3,2,DE,N/A
+1212,5,1,JP,N/A
+1213,0,4,CN,N/A
+1214,3,1,JP,N/A
+1215,5,1,CN,N/A
+1216,4,2,FR,N/A

[29/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
KYLIN-2195 All code changes, ready for test


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

Branch: refs/heads/KYLIN-1875
Commit: 826f23f14f60ba068b8594ba312c14e66c4807f2
Parents: 1ec1ffc
Author: Li Yang 
Authored: Wed Nov 23 11:49:20 2016 +0800
Committer: Li Yang 
Committed: Wed Nov 23 17:08:29 2016 +0800

--
 build/bin/check-env.sh  |2 +-
 build/bin/find-hive-dependency.sh   |4 +-
 build/bin/sample.sh |8 +-
 build/conf/kylin.properties |   94 +-
 .../common/BackwardCompatibilityConfig.java |   21 +-
 .../apache/kylin/common/KylinConfigBase.java|  272 ++---
 .../common/persistence/JsonSerializer.java  |   94 +-
 .../kylin/common/persistence/Serializer.java|   70 +-
 .../common/persistence/StorageException.java|   76 +-
 .../kylin/common/restclient/RestClient.java |  222 ++--
 .../org/apache/kylin/common/util/Array.java |  164 +--
 .../org/apache/kylin/common/util/ByteArray.java |  492 -
 .../kylin/common/util/BytesSerializer.java  |   70 +-
 .../apache/kylin/common/util/BytesSplitter.java |  250 ++---
 .../kylin/common/util/CliCommandExecutor.java   |  298 ++---
 .../apache/kylin/common/util/MailService.java   |2 +-
 .../apache/kylin/common/util/ShardingHash.java  |  134 +--
 .../kylin-backward-compatibility.properties |  358 +++---
 .../apache/kylin/common/KylinConfigTest.java|2 +-
 .../kylin/common/util/MailServiceTest.java  |2 +-
 .../cube/common/FuzzyValueCombination.java  |  260 ++---
 .../org/apache/kylin/cube/cuboid/CuboidCLI.java |  286 ++---
 .../org/apache/kylin/cube/kv/RowConstants.java  |   94 +-
 .../apache/kylin/cube/kv/RowKeyColumnIO.java|  126 +--
 .../apache/kylin/cube/kv/RowKeyColumnOrder.java |  216 ++--
 .../org/apache/kylin/cube/model/CubeDesc.java   |2 +-
 .../apache/kylin/cube/model/RowKeyColDesc.java  |  322 +++---
 .../kylin/cube/model/v1_4_0/RowKeyColDesc.java  |  184 ++--
 .../cube/model/validation/IValidatorRule.java   |   54 +-
 .../cube/model/validation/ResultLevel.java  |   76 +-
 .../cube/model/validation/ValidateContext.java  |  200 ++--
 .../validation/rule/AggregationGroupRule.java   |  400 +++
 .../model/validation/rule/FunctionRule.java |  404 +++
 .../model/validation/rule/RowKeyAttrRule.java   |  110 +-
 .../validation/rule/StreamingCubeRule.java  |  158 +--
 .../kylin/cube/AggregationGroupRuleTest.java|  244 ++---
 .../org/apache/kylin/cube/CubeDescTest.java |6 +-
 .../apache/kylin/cube/CubeManagerCacheTest.java |  156 +--
 .../apache/kylin/cube/RowKeyAttrRuleTest.java   |  120 +--
 .../metadata/measure/MeasureCodecTest.java  |  182 ++--
 .../kylin/dict/DictionaryInfoSerializer.java|  160 +--
 .../kylin/dict/TrieDictionaryBuilder.java   | 1020 +-
 .../kylin/dict/lookup/LookupStringTable.java|  220 ++--
 .../apache/kylin/dict/lookup/LookupTable.java   |  356 +++---
 .../kylin/dict/lookup/SnapshotManager.java  |  370 +++
 .../apache/kylin/dict/lookup/SnapshotTable.java |  570 +-
 .../dict/lookup/SnapshotTableSerializer.java|  158 +--
 .../kylin/dict/AppendTrieDictionaryTest.java|2 +-
 .../impl/threadpool/DistributedScheduler.java   |6 +-
 .../kylin/metadata/MetadataConstants.java   |  104 +-
 .../kylin/metadata/cachesync/Broadcaster.java   |2 +-
 .../kylin/metadata/model/JoinTableDesc.java |  124 +--
 .../org/apache/kylin/metadata/tuple/ITuple.java |   86 +-
 .../apache/kylin/storage/StorageContext.java|2 +-
 .../translate/DerivedFilterTranslator.java  |  400 +++
 .../translate/FuzzyValueCombination.java|  264 ++---
 .../apache/kylin/engine/mr/DFSFileTable.java|  198 ++--
 .../kylin/engine/mr/DFSFileTableReader.java |  504 -
 .../engine/mr/steps/FactDistinctColumnsJob.java |  318 +++---
 .../apache/kylin/engine/mr/TableReaderTest.java |   92 +-
 .../test_case_data/localmeta/kylin.properties   |   52 +-
 .../test_case_data/localmeta/kylin_job_conf.xml |  134 +--
 examples/test_case_data/sandbox/hive-site.xml   |6 +-
 .../test_case_data/sandbox/kylin.properties |   64 +-
 .../test_case_data/sandbox/kylin_job_conf.xml   |  156 +--
 .../sandbox/kylin_job_conf_inmem.xml|  182 ++--
 .../resources/org-apache-kylin-jdbc.properties  |   54 +-
 .../kylin/job/BaseTestDistributedScheduler.java |4 +-
 .../kylin/provision/BuildCubeWithEngine.java|2 +-
 .../apache/kylin/query/ITKylinQueryTest.java|4 +-
 kylin-it/src/test/resources/logging.properties  |   44 +-
 .../aggregate/DimCountDistinctAggFuncTest.java  |4 

[14/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/fdc2/FactDistinctColumnsReducer2.java
--
diff --git 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/fdc2/FactDistinctColumnsReducer2.java
 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/fdc2/FactDistinctColumnsReducer2.java
deleted file mode 100644
index b5aeef6..000
--- 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/fdc2/FactDistinctColumnsReducer2.java
+++ /dev/null
@@ -1,254 +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.engine.mr.steps.fdc2;
-
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import org.apache.commons.io.IOUtils;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FSDataOutputStream;
-import org.apache.hadoop.fs.FileSystem;
-import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.NullWritable;
-import org.apache.hadoop.io.Text;
-import org.apache.kylin.common.KylinConfig;
-import org.apache.kylin.common.util.ByteArray;
-import org.apache.kylin.common.util.Bytes;
-import org.apache.kylin.cube.CubeInstance;
-import org.apache.kylin.cube.CubeManager;
-import org.apache.kylin.cube.model.CubeDesc;
-import org.apache.kylin.engine.mr.KylinReducer;
-import org.apache.kylin.engine.mr.common.AbstractHadoopJob;
-import org.apache.kylin.engine.mr.common.BatchConstants;
-import org.apache.kylin.engine.mr.common.CubeStatsWriter;
-import org.apache.kylin.measure.hllc.HyperLogLogPlusCounter;
-import org.apache.kylin.metadata.model.TblColRef;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-/**
- */
-public class FactDistinctColumnsReducer2 extends 
KylinReducer {
-
-private List columnList;
-private String statisticsOutput = null;
-private List baseCuboidRowCountInMappers;
-protected Map cuboidHLLMap = null;
-protected long baseCuboidId;
-protected CubeDesc cubeDesc;
-private long totalRowsBeforeMerge = 0;
-private int samplingPercentage;
-private List colValues;
-private TblColRef col = null;
-private boolean isStatistics = false;
-private boolean isPartitionCol = false;
-private KylinConfig cubeConfig;
-protected static final Logger logger = 
LoggerFactory.getLogger(FactDistinctColumnsReducer2.class);
-
-@Override
-protected void setup(Context context) throws IOException {
-super.bindCurrentConfiguration(context.getConfiguration());
-
-Configuration conf = context.getConfiguration();
-KylinConfig config = AbstractHadoopJob.loadKylinPropsAndMetadata();
-String cubeName = conf.get(BatchConstants.CFG_CUBE_NAME);
-CubeInstance cube = CubeManager.getInstance(config).getCube(cubeName);
-cubeConfig = cube.getConfig();
-cubeDesc = cube.getDescriptor();
-columnList = 
CubeManager.getInstance(config).getAllDictColumnsOnFact(cubeDesc);
-
-boolean collectStatistics = 
Boolean.parseBoolean(conf.get(BatchConstants.CFG_STATISTICS_ENABLED));
-int numberOfTasks = context.getNumReduceTasks();
-int taskId = context.getTaskAttemptID().getTaskID().getId();
-
-if (collectStatistics && (taskId == numberOfTasks - 1)) {
-// hll
-isStatistics = true;
-statisticsOutput = conf.get(BatchConstants.CFG_STATISTICS_OUTPUT);
-baseCuboidRowCountInMappers = Lists.newArrayList();
-cuboidHLLMap = Maps.newHashMap();
-samplingPercentage = 
Integer.parseInt(context.getConfiguration().get(BatchConstants.CFG_STATISTICS_SAMPLING_PERCENT));
-} else if (collectStatistics && (taskId == numberOfTasks - 2)) {
-// partition col
-isStatistics = false;
-isPartitionCol = true;
-col = 

[45/50] [abbrv] kylin git commit: KYLIN-2217 add saveDictionary() on CubeManager & DictionaryManager

2016-11-27 Thread liyang
KYLIN-2217 add saveDictionary() on CubeManager & DictionaryManager


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

Branch: refs/heads/KYLIN-1875
Commit: ff2d79c4e032ef243e584730738e5ba2d12ed5c0
Parents: 25f0819
Author: Li Yang 
Authored: Thu Nov 24 17:24:57 2016 +0800
Committer: Yang Li 
Committed: Sat Nov 26 13:02:17 2016 +0800

--
 .../java/org/apache/kylin/cube/CubeManager.java | 29 ++---
 .../kylin/cube/cli/DictionaryGeneratorCLI.java  | 34 +-
 .../org/apache/kylin/cube/util/CubingUtils.java |  2 +-
 .../org/apache/kylin/dict/DictionaryInfo.java   |  5 ++
 .../apache/kylin/dict/DictionaryManager.java| 65 +---
 .../engine/mr/steps/MergeCuboidMapperTest.java  |  2 +-
 .../kylin/cube/ITDictionaryManagerTest.java |  6 +-
 7 files changed, 93 insertions(+), 50 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/ff2d79c4/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
--
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java 
b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
index 307bb46..ea8ff81 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
@@ -48,7 +48,6 @@ import org.apache.kylin.cube.model.DictionaryDesc;
 import org.apache.kylin.cube.model.DimensionDesc;
 import org.apache.kylin.dict.DictionaryInfo;
 import org.apache.kylin.dict.DictionaryManager;
-import org.apache.kylin.dict.DistinctColumnValuesProvider;
 import org.apache.kylin.dict.lookup.LookupStringTable;
 import org.apache.kylin.dict.lookup.SnapshotManager;
 import org.apache.kylin.dict.lookup.SnapshotTable;
@@ -214,25 +213,39 @@ public class CubeManager implements IRealizationProvider {
 return result;
 }
 
-public DictionaryInfo buildDictionary(CubeSegment cubeSeg, TblColRef col, 
DistinctColumnValuesProvider factTableValueProvider) throws IOException {
+public DictionaryInfo buildDictionary(CubeSegment cubeSeg, TblColRef col, 
ReadableTable inpTable) throws IOException {
 CubeDesc cubeDesc = cubeSeg.getCubeDesc();
 if (!cubeDesc.getAllColumnsNeedDictionaryBuilt().contains(col))
 return null;
 
-DictionaryManager dictMgr = getDictionaryManager();
 String builderClass = cubeDesc.getDictionaryBuilderClass(col);
-DictionaryInfo dictInfo = dictMgr.buildDictionary(cubeDesc.getModel(), 
col, factTableValueProvider, builderClass);
+DictionaryInfo dictInfo = 
getDictionaryManager().buildDictionary(cubeDesc.getModel(), col, inpTable, 
builderClass);
 
+saveDictionaryInfo(cubeSeg, col, dictInfo);
+return dictInfo;
+}
+
+public DictionaryInfo saveDictionary(CubeSegment cubeSeg, TblColRef col, 
ReadableTable inpTable, Dictionary dict) throws IOException {
+CubeDesc cubeDesc = cubeSeg.getCubeDesc();
+if (!cubeDesc.getAllColumnsNeedDictionaryBuilt().contains(col))
+return null;
+
+DictionaryInfo dictInfo = 
getDictionaryManager().saveDictionary(cubeDesc.getModel(), col, inpTable, dict);
+
+saveDictionaryInfo(cubeSeg, col, dictInfo);
+return dictInfo;
+}
+
+private void saveDictionaryInfo(CubeSegment cubeSeg, TblColRef col, 
DictionaryInfo dictInfo) throws IOException {
 if (dictInfo != null) {
 Dictionary dict = dictInfo.getDictionaryObject();
 cubeSeg.putDictResPath(col, dictInfo.getResourcePath());
 cubeSeg.getRowkeyStats().add(new Object[] { col.getName(), 
dict.getSize(), dict.getSizeOfId() });
 
-CubeUpdate cubeBuilder = new CubeUpdate(cubeSeg.getCubeInstance());
-cubeBuilder.setToUpdateSegs(cubeSeg);
-updateCube(cubeBuilder);
+CubeUpdate update = new CubeUpdate(cubeSeg.getCubeInstance());
+update.setToUpdateSegs(cubeSeg);
+updateCube(update);
 }
-return dictInfo;
 }
 
 /**

http://git-wip-us.apache.org/repos/asf/kylin/blob/ff2d79c4/core-cube/src/main/java/org/apache/kylin/cube/cli/DictionaryGeneratorCLI.java
--
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/cli/DictionaryGeneratorCLI.java 
b/core-cube/src/main/java/org/apache/kylin/cube/cli/DictionaryGeneratorCLI.java
index 89e2e9b..a6aeb96 100644
--- 
a/core-cube/src/main/java/org/apache/kylin/cube/cli/DictionaryGeneratorCLI.java
+++ 

[12/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_double/data_3
--
diff --git a/engine-mr/src/test/resources/multi_file_double/data_3 
b/engine-mr/src/test/resources/multi_file_double/data_3
new file mode 100644
index 000..816bd32
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_double/data_3
@@ -0,0 +1,1947 @@
+0.52
+2.08
+4.16
+12.993
+15.071
+19.2399988
+23.384
+23.9199984
+26.5199982
+27.039998
+28.079998
+28.58
+29.639998
+31.178
+34.836
+36.406
+37.440001
+42.120004
+43.680005
+45.760006
+46.2800065
+47.8400074
+49.920009
+52.52001
+56.680013
+62.400016
+63.960017
+66.560016
+74.88001
+77.480008
+79.040006
+81.640004
+89.439998
+93.55
+94.119995
+95.159994
+96.13
+98.279992
+102.439988
+109.719983
+110.239982
+111.799981
+118.039976
+118.559976
+119.079976
+121.679974
+125.83997
+127.919969
+131.559975
+132.599977
+141.439994
+143.519998
+146.120003
+147.680006
+149.24001
+150.800013
+155.480022
+158.600028
+159.12003
+162.240035
+164.84004
+166.400043
+167.960046
+169.48
+174.200059
+176.280063
+182.74
+189.80009
+191.360092
+193.960097
+198.120106
+205.40012
+207.480124
+208.520126
+211.12013
+212.160133
+214.760138
+222.560154
+223.600156
+225.68016
+231.40017
+232.440173
+234.520177
+235.56018
+245.4402
+253.240214
+256.880216
+261.0402
+263.120194
+264.16019
+265.200186
+267.80018
+268.320176
+268.840174
+273.00016
+274.040156
+279.24014
+279.760136
+281.84013
+282.360126
+282.880125
+283.92012
+284.96012
+289.1201
+293.28009
+295.36008
+296.920075
+298.48007
+299.520066
+305.240046
+307.84004
+308.360035
+316.680006
+319.75
+320.83999
+324.8
+325.519975
+328.119966
+328.639965
+329.15996
+337.3
+340.59992
+348.919894
+350.999886
+351.519884
+352.03988
+359.31986
+362.439846
+365.03984
+365.559835
+367.63983
+368.159826
+369.19982
+370.75982
+371.279815
+372.31981
+372.83981
+374.9198
+380.119784
+383.239774
+383.75977
+384.27977
+384.79977
+386.87976
+388.959754
+399.879715
+400.399714
+401.43971
+402.479706
+404.5597
+405.079697
+407.67969
+408.199686
+410.799677
+413.39967
+414.439664
+423.79963
+425.879624
+432.6396
+436.27959
+439.399577
+440.439573
+442.519566
+445.119557
+447.19955
+450.31954
+452.39953
+452.91953
+457.079515
+459.679506
+462.279497
+465.919484
+466.95948
+469.039473
+474.759453
+475.79945
+476.839446
+477.359444
+478.39944
+479.959435
+484.11942
+485.679415
+486.71941
+489.3194
+490.3594
+491.919393
+492.43939
+493.47939
+496.599377
+499.719366
+502.839355
+503.359353
+503.87935
+504.39935
+504.91935
+507.51934
+510.63933
+525.71928
+527.79927
+531.43926
+535.59924
+542.35922
+544.95921
+549.63919
+551.71918
+552.23918
+554.31918
+555.87917
+556.91917
+558.47916
+560.03916
+560.55915
+569.91912
+573.03911
+582.39908
+584.47907
+584.99907
+586.03906
+586.55906
+588.11906
+589.67905
+590.71905
+597.99902
+600.07902
+605.799
+610.47898
+610.99898
+613.07897
+619.31895
+619.83895
+621.39894
+624.51893
+627.11892
+629.19891
+631.27891
+631.7989
+634.91889

[10/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_str/data_0
--
diff --git a/engine-mr/src/test/resources/multi_file_str/data_0 
b/engine-mr/src/test/resources/multi_file_str/data_0
new file mode 100644
index 000..89dd2b3
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_str/data_0
@@ -0,0 +1,2029 @@
+0018bb26-1649-404d-a8b9-c79a505ed162
+001eb1f5-96f4-4031-92d3-8ecee8286c31
+00464de2-6452-4b42-80c8-7fa9e2e25dab
+0080cefc-f819-4679-84be-9a1ec3c254ca
+008472d0-dbb0-4a9e-9bbe-a285698f5996
+009a99e8-415e-4a73-a352-4acab798cf80
+00defa41-59cd-4079-a0c4-3bf88fb4d2f7
+0113c6c8-396a-402e-86e6-2cdcb6623be8
+0121d713-0519-4576-9cb6-e58f26d036af
+0141bd03-3548-4578-8850-f96f6f4ec27a
+01461b14-85ef-4283-8ff8-fc670c6d8e85
+01501d16-ff3c-4fef-a17a-66eaef23878c
+01524b01-7839-4022-b04e-74b1928f8fef
+0153828e-2028-4dd2-9ff3-7465ecebaac0
+01582c51-a738-4129-be8a-b82d7d6999c2
+01687978-951a-4fea-93a9-990bdaf378ef
+0190c832-0f82-4993-8235-6343774d2367
+01a066cb-160c-43d8-88d4-b1f447239040
+01c462fa-5ef0-4ecf-9e2c-fa356f3b83dd
+01eedbe6-b246-49e4-8761-86b3b1dea82c
+01f0bb43-620f-43f7-b07e-a032eca9d133
+022bc52b-0f8e-4b02-ab04-79012965ec3e
+022dd8e1-19e0-4c3d-b9f8-23ce0485af8a
+02379ebb-6d16-427c-a4bc-4f7707913ea1
+029b270d-9454-42fe-a7a3-f0c127b89fe9
+02a3f086-dfc3-4c35-827b-ff11f48c068e
+02d6d848-f3e1-4ad5-a7d5-4874e963c016
+0308f18d-d796-4745-bf10-46a23be3087b
+037c7649-393b-4150-a922-fa6b3488509e
+039bc304-4ef4-4480-a347-6f863e6c5d23
+039efd7f-ec8f-4716-bfc0-b254d6e5e88f
+03b52c5a-8bb6-4561-ab4d-7d491f8f4838
+03d69ddc-1eb3-4038-8c0c-51eb731db079
+04017bfd-32ad-4040-81aa-aa47206bb94f
+042119f5-10f4-4e8d-9626-871b33f063f4
+0428bca6-368d-4d58-babb-306179b2248a
+045ea515-b9d4-4738-8422-7c2ea163b328
+0467c216-7639-4c1d-a0a9-39f9a10dff6f
+048a183c-a958-47bf-aa45-25336aa5674d
+04fc427a-0b86-447c-96e7-8ddd1cc7569e
+050e5141-d731-417f-9793-469ed3a38d39
+051ab944-932d-4837-b2a4-363ad0c26e3c
+0528565e-7fd0-4dff-b8a9-66ade9691a8d
+05329edc-f1ad-43de-b01a-49a4db1f2d27
+058259f2-d7c1-4c54-8ec4-978677d71aa7
+059a0b69-8c64-4598-8dd2-dc72e3ef1d21
+05af50a4-9ff1-4673-9b10-db82732ae512
+05ca0b95-b68a-4076-b14b-de38694ac4d7
+05d28038-94ec-4950-b251-7b28aff6d73c
+05f3d13d-be28-4351-ba0f-28d7bf87710b
+05f607b9-cc8f-45e7-a7e6-7a8d93a94960
+05fc5cfe-5c0d-46b3-b448-1a7c2be69a33
+06471838--45b8-af74-508742d12ecd
+0667a812-bc2e-4a00-845d-64a85bb81503
+0681052c-e3a8-45ae-8f96-f8efcd9891cf
+06c59613-09f9-4bff-8bca-0e9e2962ea3e
+0719f720-20f5-4a22-8c03-888b03734b1e
+071c0fd1-1be3-46bc-8117-a5d4292ffb02
+07857916-cbff-4122-9c4c-da5d7c906c59
+07bca0a0-7405-4c75-98bc-a04dbdce261c
+07fe55a6-0071-4d03-b141-d4333d5695eb
+081b029d-8023-4825-805e-c9bfdad93ce4
+083fa003-02e9-4e5e-83f1-d7768ffbb539
+0851fcc1-919f-472a-ae79-209bc64371e6
+085233ed-547e-478f-99a4-41b2472b983f
+0877cca8-e95b-4e7f-bdfd-c3e8742f8140
+089f14fd-64b4-42a8-9fe1-603b3e3c8093
+090b9228-57c1-4f2d-b3ab-8d4a624c6571
+091cf088-6947-4929-b0da-5f4b401bad13
+092832d1-d672-43e8-9a67-6d46423a94f7
+0929094e-42f7-487f-8b2e-2e175e76ee6f
+0946e299-7a4d-402c-9c55-e6638782a23b
+09e1f414-5172-4d02-a8a5-86b12ccc5857
+09f6ffb4-a27a-4707-97b8-9364c495fd2c
+0a0483d4-11e1-43e8-8633-9ac9987e712a
+0a4c6743-0a3f-4cf3-ac50-48ec806f8800
+0a667611-f3aa-4c42-a9a4-388f746abc78
+0a7e409d-63ba-43dd-9651-a8809e625102
+0ab2b943-e09f-4b7a-aa6b-e319b9a4b8a8
+0ae2cead-abb0-4b86-97e3-e43d1dd454b3
+0af4329c-94c1-4a3a-b560-2f964883a88d
+0b226411-bb53-4c7a-92fa-1e2d3c7010d9
+0b296ac4-a698-4db8-9d46-5222c157e9fc
+0b685786-3b26-46ce-9444-a2ed74eab290
+0c19d519-086d-4c6f-9002-b81cad3996dd
+0c1b9859-17dd-4eb6-9dcb-162fba753b94
+0c3d7db2-5636-40d1-b5ed-d61ee557c99b
+0c471a75-6aec-4d7e-b728-b3f12596ebd2
+0c601fb1-5fdb-4986-a418-c515b64d6512
+0c6cbddd-c614-4e85-85b7-e9076dc2275f
+0c8d46f1-4c53-4ad6-ae5f-6183aa4123ec
+0c90f498-281b-4f04-b797-bfacd3f65ea1
+0c98e617-1b53-4402-a3ba-1392ac919113
+0cb95a98-f6b6-4ac9-bacf-3a3238b51e92
+0cda3414-38b1-49c8-9421-071ff259a388
+0ce90e93-4cb6-4d78-b919-fca7b2789534
+0cff1d3d-357c-4b69-877f-61051511915e
+0d0d5580-a0c1-4769-bd02-d7344216fbb6
+0d15b496-fb0b-4bdc-a808-03e567a8e8b3
+0d22693e-c76e-486b-9e95-9349a3553397
+0d6940fd-04d3-4464-9f13-6e89b0a0319b
+0d7d420c-8fa5-4efc-a146-1e9413ccd460
+0db484e9-d117-4450-8b5b-879b94587ac2
+0dc3e086-529d-4289-ad3c-4fa469940290
+0ded4753-81f4-458e-a661-a664165b0fd4
+0e0624ed-f8fa-4db8-b61d-d43cb0acd1ed
+0e26c5d0-b5ae-4304-9c9a-2b25df16c3d5
+0e49a979-46bc-4674-93b7-78ed98e582c1
+0e7af5c9-0c89-42af-b8a7-924897590277
+0e8f53bd-19c7-4fb2-a361-37f3fc47a5a2
+0eaeeb80-7c82-41f1-8a4c-62c77921ad50
+0f28de8f-a5c1-494e-a78e-06ae076ed87d
+0f384c24-19b0-4cc0-add2-670891da674f
+0f4a19ac-7d34-45da-b59a-11418bc96495
+0f4e9e96-601e-4e98-a0cc-71e20f95fc44
+0fdc6899-06da-4dda-ad00-bb12aa8fcc3c
+0ff80635-4ae8-47c0-8802-d3203239c5b2
+10035ab5-e72c-45fc-9a0c-609f89dbda9c
+10194e1f-2d29-4106-8b61-187721c543a9
+10316ab9-17bd-4005-8de2-de7315353a8f

[37/50] [abbrv] kylin git commit: KYLIN-2202 code review

2016-11-27 Thread liyang
KYLIN-2202 code review


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

Branch: refs/heads/KYLIN-1875
Commit: 827205f17b61d1e1ac9d6af580e04583c1079003
Parents: af3e4fe
Author: Li Yang 
Authored: Thu Nov 24 14:52:33 2016 +0800
Committer: Li Yang 
Committed: Thu Nov 24 15:18:19 2016 +0800

--
 .../validation/rule/DictionaryRuleTest.java |   1 -
 .../apache/kylin/dict/DictionaryGenerator.java  |   7 +-
 .../apache/kylin/dict/DictionaryManager.java|   4 -
 .../dict/NumberDictionaryForestBuilder.java |   4 -
 .../kylin/dict/TrieDictionaryForestBuilder.java |   3 +-
 .../apache/kylin/engine/mr/DFSFileTable.java|  35 ---
 .../engine/mr/DFSSingleFileTableReader.java | 218 ---
 .../apache/kylin/engine/mr/SortedColumn.java| 100 -
 .../kylin/engine/mr/SortedColumnDFSFile.java| 125 +++
 .../engine/mr/SortedColumnDFSFileReader.java| 136 
 .../kylin/engine/mr/SortedColumnReader.java | 136 
 .../engine/mr/steps/CreateDictionaryJob.java|   6 +-
 .../mr/steps/FactDistinctColumnsReducer.java|   3 -
 .../mr/steps/FactDistinctHiveColumnsMapper.java |  12 +-
 .../engine/mr/steps/SelfDefineSortableKey.java  |  25 ++-
 .../apache/kylin/engine/mr/steps/TypeFlag.java  |  28 ---
 .../mr/steps/UpdateCubeInfoAfterBuildStep.java  |   4 +-
 .../kylin/engine/mr/SortedColumnReaderTest.java | 167 +++---
 .../mr/steps/NumberDictionaryForestTest.java|   1 +
 .../mr/steps/SelfDefineSortableKeyTest.java |  93 
 .../kylin/source/hive/HiveTableReader.java  |   3 -
 21 files changed, 412 insertions(+), 699 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/827205f1/core-cube/src/test/java/org/apache/kylin/cube/model/validation/rule/DictionaryRuleTest.java
--
diff --git 
a/core-cube/src/test/java/org/apache/kylin/cube/model/validation/rule/DictionaryRuleTest.java
 
b/core-cube/src/test/java/org/apache/kylin/cube/model/validation/rule/DictionaryRuleTest.java
index 8bd4c88..9b37507 100644
--- 
a/core-cube/src/test/java/org/apache/kylin/cube/model/validation/rule/DictionaryRuleTest.java
+++ 
b/core-cube/src/test/java/org/apache/kylin/cube/model/validation/rule/DictionaryRuleTest.java
@@ -34,7 +34,6 @@ import org.apache.kylin.cube.model.validation.ValidateContext;
 import org.apache.kylin.dict.GlobalDictionaryBuilder;
 import org.junit.After;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 
 /**

http://git-wip-us.apache.org/repos/asf/kylin/blob/827205f1/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryGenerator.java
--
diff --git 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryGenerator.java 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryGenerator.java
index 20a57ba..810a392 100644
--- 
a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryGenerator.java
+++ 
b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryGenerator.java
@@ -135,8 +135,7 @@ public class DictionaryGenerator {
 private static class StringDictBuilder implements IDictionaryBuilder {
 @Override
 public Dictionary build(DictionaryInfo dictInfo, 
IDictionaryValueEnumerator valueEnumerator, int baseId, int nSamples, 
ArrayList returnSamples) throws IOException {
-int maxTrieSizeInMB = 
TrieDictionaryForestBuilder.getMaxTrieSizeInMB();
-TrieDictionaryForestBuilder builder = new 
TrieDictionaryForestBuilder(new StringBytesConverter(), baseId, 
maxTrieSizeInMB);
+TrieDictionaryForestBuilder builder = new 
TrieDictionaryForestBuilder(new StringBytesConverter(), baseId);
 String value;
 while (valueEnumerator.moveNext()) {
 value = valueEnumerator.current();
@@ -153,9 +152,7 @@ public class DictionaryGenerator {
 private static class NumberDictBuilder implements IDictionaryBuilder {
 @Override
 public Dictionary build(DictionaryInfo dictInfo, 
IDictionaryValueEnumerator valueEnumerator, int baseId, int nSamples, 
ArrayList returnSamples) throws IOException {
-
-int maxTrieSizeInMB = 
TrieDictionaryForestBuilder.getMaxTrieSizeInMB();
-NumberDictionaryForestBuilder builder = new 
NumberDictionaryForestBuilder(baseId, maxTrieSizeInMB);
+NumberDictionaryForestBuilder builder = new 
NumberDictionaryForestBuilder(baseId);
 String value;
 while (valueEnumerator.moveNext()) 

[31/50] [abbrv] kylin git commit: KYLIN-2227 rename kylin-log4j.properties to kylin-tools-log4j.properties and move it to global conf folder

2016-11-27 Thread liyang
KYLIN-2227 rename kylin-log4j.properties to kylin-tools-log4j.properties and 
move it to global conf folder


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

Branch: refs/heads/KYLIN-1875
Commit: b8e764d434ab12b9fb7b902ac8dea0d6b792dec5
Parents: 3e4e82f
Author: Hongbin Ma 
Authored: Wed Nov 23 17:46:04 2016 +0800
Committer: Hongbin Ma 
Committed: Wed Nov 23 18:14:45 2016 +0800

--
 build/bin/kylin.sh  |  4 +--
 build/conf/kylin-tools-log4j.properties | 36 
 .../src/main/resources/kylin-log4j.properties   | 28 ---
 .../gridtable/AggregationCacheSpillTest.java|  1 -
 kylin-it/pom.xml|  6 ++--
 pom.xml |  2 +-
 .../java/org/apache/kylin/rest/DebugTomcat.java |  2 +-
 7 files changed, 43 insertions(+), 36 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/b8e764d4/build/bin/kylin.sh
--
diff --git a/build/bin/kylin.sh b/build/bin/kylin.sh
index fff6227..b0627ef 100644
--- a/build/bin/kylin.sh
+++ b/build/bin/kylin.sh
@@ -151,7 +151,7 @@ then
 
 elif [ "$1" = "version" ]
 then
-exec hbase -Dlog4j.configuration=kylin-log4j.properties 
org.apache.kylin.common.KylinVersion
+exec hbase 
-Dlog4j.configuration=file:${KYLIN_HOME}/conf/kylin-tools-log4j.properties 
org.apache.kylin.common.KylinVersion
 exit 0
 
 elif [ "$1" = "diag" ]
@@ -170,7 +170,7 @@ then
 then source ${dir}/setenv-tool.sh
 fi
 
-exec hbase ${KYLIN_EXTRA_START_OPTS} 
-Dkylin.hive.dependency=${hive_dependency} 
-Dkylin.hbase.dependency=${hbase_dependency} 
-Dlog4j.configuration=kylin-log4j.properties "$@"
+exec hbase ${KYLIN_EXTRA_START_OPTS} 
-Dkylin.hive.dependency=${hive_dependency} 
-Dkylin.hbase.dependency=${hbase_dependency} 
-Dlog4j.configuration=file:${KYLIN_HOME}/conf/kylin-tools-log4j.properties "$@"
 
 else
 quit "Usage: 'kylin.sh [-v] start' or 'kylin.sh [-v] stop'"

http://git-wip-us.apache.org/repos/asf/kylin/blob/b8e764d4/build/conf/kylin-tools-log4j.properties
--
diff --git a/build/conf/kylin-tools-log4j.properties 
b/build/conf/kylin-tools-log4j.properties
new file mode 100644
index 000..0ba7d2e
--- /dev/null
+++ b/build/conf/kylin-tools-log4j.properties
@@ -0,0 +1,36 @@
+#
+# 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.
+#
+
+
+# the kylin-tools-log4j.properties is mainly for configuring log properties on 
kylin tools, including:
+#   1. tools launched by kylin.sh script, e.g. DeployCoprocessorCLI
+#   2. DebugTomcat
+#   3. others
+# 
+# It's called kylin-tools-log4j.properties so that it won't distract users 
from the other more important log4j config file: kylin-server-log4j.properties  
+# enable this by -Dlog4j.configuration=kylin-tools-log4j.properties
+
+log4j.rootLogger=INFO,stdout
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{ISO8601} %-5p [%t %c{1}:%L]: 
%m%n
+
+#log4j.logger.org.apache.hadoop=ERROR
+log4j.logger.org.apache.kylin=DEBUG
+log4j.logger.org.springframework=WARN

http://git-wip-us.apache.org/repos/asf/kylin/blob/b8e764d4/core-common/src/main/resources/kylin-log4j.properties
--
diff --git a/core-common/src/main/resources/kylin-log4j.properties 
b/core-common/src/main/resources/kylin-log4j.properties
deleted file mode 100644
index e7201b3..000
--- a/core-common/src/main/resources/kylin-log4j.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file 

[50/50] [abbrv] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 
'kylin_default_instance'


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

Branch: refs/heads/KYLIN-1875
Commit: dbbbae227edd943eb454a42d59d11a042a0655e9
Parents: 5edffa5
Author: Yang Li 
Authored: Sun Nov 27 18:26:33 2016 +0800
Committer: Yang Li 
Committed: Sun Nov 27 18:26:33 2016 +0800

--
 build/conf/kylin.properties | 2 +-
 .../apache/kylin/common/KylinConfigBase.java|11 +-
 .../kylin/metadata/model/DataModelDesc.java | 3 +
 .../kylin/metadata/model/MeasureDesc.java   | 5 +
 .../realization/IRealizationConstants.java  | 2 +-
 examples/sample_cube/create_sample_tables.sql   |21 +-
 .../sample_cube/data/DEFAULT.KYLIN_ACCOUNT.csv  | 1 +
 .../sample_cube/data/DEFAULT.KYLIN_SALES.csv| 2 -
 .../template/cube_desc/kylin_sales_cube.json|   157 +-
 .../template/model_desc/kylin_sales_model.json  |50 +-
 .../template/table/DEFAULT.KYLIN_ACCOUNT.json   |28 +
 .../template/table/DEFAULT.KYLIN_SALES.json |12 +-
 .../test_case_data/sandbox/kylin.properties | 2 +-
 .../apache/kylin/query/relnode/OLAPJoinRel.java |25 +-
 .../kylin/rest/security/AclHBaseStorage.java| 1 -
 .../rest/security/RealAclHBaseStorage.java  | 5 +-
 .../apache/kylin/rest/service/QueryService.java | 6 +-
 .../kylin/storage/hbase/HBaseResourceStore.java | 2 +-
 .../storage/hbase/util/StorageCleanupJob.java   | 2 +-
 .../apache/kylin/tool/StorageCleanupJob.java| 2 +-
 20 files changed, 20246 insertions(+), 10090 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/build/conf/kylin.properties
--
diff --git a/build/conf/kylin.properties b/build/conf/kylin.properties
index 1409394..131a725 100644
--- a/build/conf/kylin.properties
+++ b/build/conf/kylin.properties
@@ -18,7 +18,7 @@
 ### METADATA | ENV ###
 
 # The metadata store in hbase
-kylin.metadata.url=kylin_metadata@hbase
+kylin.metadata.url=kylin_default_instance@hbase
 
 # Working folder in HDFS, make sure user has the right access to the hdfs 
directory
 kylin.env.hdfs-working-dir=/kylin

http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/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 aa5e6e1..7dcc771 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
@@ -188,13 +188,12 @@ abstract public class KylinConfigBase implements 
Serializable {
 }
 
 public String getMetadataUrlPrefix() {
-String hbaseMetadataUrl = getMetadataUrl();
-String defaultPrefix = "kylin_metadata";
+String metadataUrl = getMetadataUrl();
+String defaultPrefix = "kylin_default_instance";
 
-if 
(org.apache.commons.lang3.StringUtils.containsIgnoreCase(hbaseMetadataUrl, 
"@hbase")) {
-int cut = hbaseMetadataUrl.indexOf('@');
-String tmp = cut < 0 ? defaultPrefix : 
hbaseMetadataUrl.substring(0, cut);
-return tmp;
+if (metadataUrl.endsWith("@hbase")) {
+int cut = metadataUrl.lastIndexOf('@');
+return metadataUrl.substring(0, cut);
 } else {
 return defaultPrefix;
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
--
diff --git 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
index c2de5d6..ff92def 100644
--- 
a/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
+++ 
b/core-metadata/src/main/java/org/apache/kylin/metadata/model/DataModelDesc.java
@@ -378,6 +378,9 @@ public class DataModelDesc extends RootPersistentEntity {
 for (int i = 0; i < pks.length; i++) {
 TblColRef col = dimTable.getColumn(pks[i]);
 if (col == null) {
+col = findColumn(pks[i]);
+}
+if (col == null || col.getTableRef().equals(dimTable) == 
false) {
   

[27/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/core-cube/src/main/java/org/apache/kylin/cube/kv/RowKeyColumnIO.java
--
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/kv/RowKeyColumnIO.java 
b/core-cube/src/main/java/org/apache/kylin/cube/kv/RowKeyColumnIO.java
index b3facd2..fbb93db 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/kv/RowKeyColumnIO.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/kv/RowKeyColumnIO.java
@@ -1,63 +1,63 @@
-/*
- * 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.cube.kv;
-
-import org.apache.kylin.common.util.Dictionary;
-import org.apache.kylin.dimension.DictionaryDimEnc;
-import org.apache.kylin.dimension.DimensionEncoding;
-import org.apache.kylin.dimension.IDimensionEncodingMap;
-import org.apache.kylin.metadata.model.TblColRef;
-
-/**
- * Read/Write column values from/into bytes
- *
- * @author yangli9
- */
-public class RowKeyColumnIO {
-
-//private static final Logger logger = 
LoggerFactory.getLogger(RowKeyColumnIO.class);
-
-private final IDimensionEncodingMap dimEncMap;
-
-public RowKeyColumnIO(IDimensionEncodingMap dimEncMap) {
-this.dimEncMap = dimEncMap;
-}
-
-public int getColumnLength(TblColRef col) {
-return dimEncMap.get(col).getLengthOfEncoding();
-}
-
-public Dictionary getDictionary(TblColRef col) {
-return dimEncMap.getDictionary(col);
-}
-
-public void writeColumn(TblColRef col, String value, int roundingFlag, 
byte defaultValue, byte[] output, int outputOffset) {
-DimensionEncoding dimEnc = dimEncMap.get(col);
-if (dimEnc instanceof DictionaryDimEnc)
-dimEnc = ((DictionaryDimEnc) dimEnc).copy(roundingFlag, 
defaultValue);
-
-dimEnc.encode(value, output, outputOffset);
-}
-
-public String readColumnString(TblColRef col, byte[] bytes, int offset, 
int length) {
-DimensionEncoding dimEnc = dimEncMap.get(col);
-return dimEnc.decode(bytes, offset, length);
-}
-
-}
+/*
+ * 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.cube.kv;
+
+import org.apache.kylin.common.util.Dictionary;
+import org.apache.kylin.dimension.DictionaryDimEnc;
+import org.apache.kylin.dimension.DimensionEncoding;
+import org.apache.kylin.dimension.IDimensionEncodingMap;
+import org.apache.kylin.metadata.model.TblColRef;
+
+/**
+ * Read/Write column values from/into bytes
+ *
+ * @author yangli9
+ */
+public class RowKeyColumnIO {
+
+//private static final Logger logger = 
LoggerFactory.getLogger(RowKeyColumnIO.class);
+
+private final IDimensionEncodingMap dimEncMap;
+
+public RowKeyColumnIO(IDimensionEncodingMap dimEncMap) {
+this.dimEncMap = dimEncMap;
+}
+
+public int getColumnLength(TblColRef col) {
+return dimEncMap.get(col).getLengthOfEncoding();
+}
+
+public Dictionary getDictionary(TblColRef col) {
+return dimEncMap.getDictionary(col);
+}
+
+public void writeColumn(TblColRef col, String value, int roundingFlag, 
byte defaultValue, byte[] output, int outputOffset) {
+DimensionEncoding dimEnc = dimEncMap.get(col);
+if (dimEnc instanceof DictionaryDimEnc)
+dimEnc = ((DictionaryDimEnc) dimEnc).copy(roundingFlag, 
defaultValue);
+
+dimEnc.encode(value, output, outputOffset);
+}
+
+public 

[16/50] [abbrv] kylin git commit: float data format func bug

2016-11-27 Thread liyang
float data format func bug

Signed-off-by: shaofengshi 


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

Branch: refs/heads/KYLIN-1875
Commit: c8dfa13e633517bbfde7125ce286429f643e5af6
Parents: 2b7fe61
Author: luguosheng <550175...@qq.com>
Authored: Tue Nov 22 18:50:52 2016 +0800
Committer: shaofengshi 
Committed: Tue Nov 22 21:43:54 2016 +0800

--
 webapp/app/js/utils/utils.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/c8dfa13e/webapp/app/js/utils/utils.js
--
diff --git a/webapp/app/js/utils/utils.js b/webapp/app/js/utils/utils.js
index aabcad5..9da6196 100644
--- a/webapp/app/js/utils/utils.js
+++ b/webapp/app/js/utils/utils.js
@@ -67,7 +67,7 @@ KylinApp.factory('VdmUtil', function ($modal, $timeout, 
$location, $anchorScroll
 
 SCToFloat:function(data){
   var resultValue = "";
-  if (data.indexOf('E') != -1){
+  if (data&('E') != -1){
 var regExp = new RegExp('^((\\d+.?\\d+)[Ee]{1}(\\d+))$', 'ig');
 var result = regExp.exec(data);
 var power = "";



[19/50] [abbrv] kylin git commit: KYLIN-2195 Move backward-compatibility properties to common resources

2016-11-27 Thread liyang
KYLIN-2195 Move backward-compatibility properties to common resources


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

Branch: refs/heads/KYLIN-1875
Commit: 53b5a2752bfb282445572e2dbabe6cee93cf404c
Parents: 747337a
Author: Yang Li 
Authored: Wed Nov 23 08:23:02 2016 +0800
Committer: Yang Li 
Committed: Wed Nov 23 08:23:22 2016 +0800

--
 .../common/BackwardCompatibilityConfig.java | 128 ++---
 .../kylin-backward-compatibility.properties | 186 +++
 .../apache/kylin/common/KylinConfigTest.java|  15 +-
 .../kylin-backward-compatibility.properties | 186 ---
 4 files changed, 291 insertions(+), 224 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/53b5a275/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
 
b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
index 93c834e..0239af0 100644
--- 
a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
+++ 
b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java
@@ -18,13 +18,15 @@
 
 package org.apache.kylin.common;
 
+import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.PrintWriter;
 import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Properties;
-import java.util.Set;
+import java.util.Stack;
 
 import org.apache.commons.io.IOUtils;
 import org.slf4j.Logger;
@@ -35,23 +37,29 @@ import com.google.common.collect.Maps;
 public class BackwardCompatibilityConfig {
 
 private static final Logger logger = 
LoggerFactory.getLogger(BackwardCompatibilityConfig.class);
-
+
+private static final String KYLIN_BACKWARD_COMPATIBILITY = 
"kylin-backward-compatibility";
+
 private final Map old2new = Maps.newConcurrentMap();
-
+private final Map old2newPrefix = Maps.newConcurrentMap();
+
 public BackwardCompatibilityConfig() {
-InputStream is = 
Thread.currentThread().getContextClassLoader().getResourceAsStream("kylin-backward-compatibility.properties");
-init(is);
+ClassLoader loader = Thread.currentThread().getContextClassLoader();
+init(loader.getResourceAsStream(KYLIN_BACKWARD_COMPATIBILITY + 
".properties"));
+for (int i = 0; i < 10; i++) {
+init(loader.getResourceAsStream(KYLIN_BACKWARD_COMPATIBILITY + (i) 
+ ".properties"));
+}
 }
-
+
 // for test
 BackwardCompatibilityConfig(InputStream is) {
 init(is);
 }
-
+
 private void init(InputStream is) {
 if (is == null)
 return;
-
+
 Properties props = new Properties();
 try {
 props.load(is);
@@ -60,50 +68,116 @@ public class BackwardCompatibilityConfig {
 } finally {
 IOUtils.closeQuietly(is);
 }
-
+
 for (Entry kv : props.entrySet()) {
-old2new.put((String) kv.getKey(), (String) kv.getValue());
+String key = (String) kv.getKey();
+String value = (String) kv.getValue();
+if (value.endsWith("."))
+old2newPrefix.put(key, value);
+else
+old2new.put(key, value);
 }
 }
-
+
 public String check(String key) {
 String newKey = old2new.get(key);
 if (newKey != null) {
 logger.warn("Config '{}' is deprecated, use '{}' instead", key, 
newKey);
 return newKey;
-} else {
-return key;
 }
+
+for (String oldPrefix : old2newPrefix.keySet()) {
+if (key.startsWith(oldPrefix)) {
+String newPrefix = old2newPrefix.get(oldPrefix);
+newKey = newPrefix + key.substring(oldPrefix.length() + 1);
+logger.warn("Config '{}' is deprecated, use '{}' instead", 
key, newKey);
+return newKey;
+}
+}
+
+return key;
 }
-
+
 public Map check(Map props) {
-if (containsOldKey(props.keySet()) == false)
-return props;
-
 LinkedHashMap result = new LinkedHashMap<>();
 for (Entry kv : props.entrySet()) {
 result.put(check(kv.getKey()), kv.getValue());
 

[28/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/core-common/src/main/java/org/apache/kylin/common/util/ByteArray.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/util/ByteArray.java 
b/core-common/src/main/java/org/apache/kylin/common/util/ByteArray.java
index db02f34..db9fc80 100644
--- a/core-common/src/main/java/org/apache/kylin/common/util/ByteArray.java
+++ b/core-common/src/main/java/org/apache/kylin/common/util/ByteArray.java
@@ -1,246 +1,246 @@
-/*
- * 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.common.util;
-
-import java.io.Serializable;
-import java.nio.ByteBuffer;
-
-/**
- * @author yangli9
- */
-public class ByteArray implements Comparable, Serializable {
-
-private static final long serialVersionUID = 1L;
-
-public static final ByteArray EMPTY = new ImmutableByteArray();
-
-public static ByteArray allocate(int length) {
-return new ByteArray(new byte[length]);
-}
-
-public static ByteArray copyOf(byte[] array, int offset, int length) {
-byte[] space = new byte[length];
-System.arraycopy(array, offset, space, 0, length);
-return new ByteArray(space, 0, length);
-}
-
-// 

-
-private byte[] data;
-private int offset;
-private int length;
-
-public ByteArray() {
-this(null, 0, 0);
-}
-
-public ByteArray(int capacity) {
-this(new byte[capacity], 0, capacity);
-}
-
-public ByteArray(byte[] data) {
-this(data, 0, data == null ? 0 : data.length);
-}
-
-public ByteArray(byte[] data, int offset, int length) {
-this.data = data;
-this.offset = offset;
-this.length = length;
-}
-
-public byte[] array() {
-return data;
-}
-
-public int offset() {
-return offset;
-}
-
-public int length() {
-return length;
-}
-
-public void set(byte[] array) {
-set(array, 0, array.length);
-}
-
-public void set(byte[] array, int offset, int length) {
-this.data = array;
-this.offset = offset;
-this.length = length;
-}
-
-public void set(ByteArray o) {
-set(o.data, o.offset, o.length);
-}
-
-public void set(int offset, int length) {
-this.offset = offset;
-this.length = length;
-}
-
-public void setLength(int length) {
-this.length = length;
-}
-
-public ByteArray copy() {
-ByteArray copy;
-if (data != null) {
-copy = new ByteArray(length);
-} else {
-copy = new ByteArray(null);
-}
-copy.copyFrom(this);
-return copy;
-}
-
-//notice this will have a length header
-public void exportData(ByteBuffer out) {
-BytesUtil.writeByteArray(this.data, this.offset, this.length, out);
-}
-
-public static ByteArray importData(ByteBuffer in) {
-byte[] bytes = BytesUtil.readByteArray(in);
-return new ByteArray(bytes);
-}
-
-public void copyFrom(ByteArray other) {
-if (other.data != null) {
-System.arraycopy(other.array(), other.offset, data, offset, 
other.length);
-}
-this.length = other.length;
-}
-
-public ByteBuffer asBuffer() {
-if (data == null)
-return null;
-else if (offset == 0 && length == data.length)
-return ByteBuffer.wrap(data);
-else
-return ByteBuffer.wrap(data, offset, length).slice();
-}
-
-public byte[] toBytes() {
-return Bytes.copy(this.array(), this.offset(), this.length());
-}
-
-@Override
-public int hashCode() {
-if (data == null) {
-return 0;
-} else {
-if (length <= Bytes.SIZEOF_LONG && length > 0) {
-// to avoid hash collision of byte arrays those are converted 
from nearby integers/longs, which is the case for kylin dictionary
-long value = BytesUtil.readLong(data, offset, length);
-return (int) (value ^ (value 

[35/50] [abbrv] kylin git commit: minor, refactor AggregationGroup.calculateCuboidCombination()

2016-11-27 Thread liyang
minor, refactor AggregationGroup.calculateCuboidCombination()


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

Branch: refs/heads/KYLIN-1875
Commit: 873f903f3d95afa2cec5e1d6d3027f1b62f3ec54
Parents: 798f03e
Author: Li Yang 
Authored: Thu Nov 24 13:00:42 2016 +0800
Committer: Li Yang 
Committed: Thu Nov 24 13:00:42 2016 +0800

--
 .../common/util/LocalFileMetadataTestCase.java  |  4 +-
 .../kylin/cube/model/AggregationGroup.java  | 88 ++
 .../validation/rule/AggregationGroupRule.java   | 12 +--
 .../kylin/cube/AggregationGroupRuleTest.java|  3 -
 .../org/apache/kylin/cube/CubeDescTest.java | 97 +---
 .../kylin/cube/cuboid/CuboidSchedulerTest.java  |  5 +-
 6 files changed, 141 insertions(+), 68 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/873f903f/core-common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
--
diff --git 
a/core-common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
 
b/core-common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
index d351041..26e1e86 100644
--- 
a/core-common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
+++ 
b/core-common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
@@ -46,7 +46,7 @@ public class LocalFileMetadataTestCase extends 
AbstractKylinTestCase {
 public static void staticCreateTestMetadata(String testDataFolder) {
 KylinConfig.destroyInstance();
 
-String tempTestMetadataUrl = "../examples/test_metadata";
+String tempTestMetadataUrl = LOCALMETA_TEMP_DATA;
 try {
 FileUtils.deleteDirectory(new File(tempTestMetadataUrl));
 FileUtils.copyDirectory(new File(testDataFolder), new 
File(tempTestMetadataUrl));
@@ -61,7 +61,7 @@ public class LocalFileMetadataTestCase extends 
AbstractKylinTestCase {
 }
 
 public static void cleanAfterClass() {
-String tempTestMetadataUrl = "../examples/test_metadata";
+String tempTestMetadataUrl = LOCALMETA_TEMP_DATA;
 try {
 FileUtils.deleteDirectory(new File(tempTestMetadataUrl));
 } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/kylin/blob/873f903f/core-cube/src/main/java/org/apache/kylin/cube/model/AggregationGroup.java
--
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/model/AggregationGroup.java 
b/core-cube/src/main/java/org/apache/kylin/cube/model/AggregationGroup.java
index ab63c00..12c0574 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/model/AggregationGroup.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/model/AggregationGroup.java
@@ -19,9 +19,12 @@
 package org.apache.kylin.cube.model;
 
 import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
+import java.util.TreeSet;
 
-import org.apache.kylin.common.util.StringUtil;
 import org.apache.kylin.cube.cuboid.Cuboid;
 import org.apache.kylin.metadata.model.TblColRef;
 
@@ -34,9 +37,9 @@ import com.google.common.collect.Lists;
 @JsonAutoDetect(fieldVisibility = Visibility.NONE, getterVisibility = 
Visibility.NONE, isGetterVisibility = Visibility.NONE, setterVisibility = 
Visibility.NONE)
 public class AggregationGroup {
 public static class HierarchyMask {
-public long fullMask;// 0111
-public long[] allMasks;// 0100,0110,0111
-public long[] dims;// 0100,0010,0001
+public long fullMask; // 0111
+public long[] allMasks; // 0100,0110,0111
+public long[] dims; // 0100,0010,0001
 }
 
 @JsonProperty("includes")
@@ -64,7 +67,7 @@ public class AggregationGroup {
 throw new IllegalStateException("AggregationGroup incomplete");
 }
 
-columnNamesToUpperCase();
+normalizeColumnNames();
 
 buildPartialCubeFullMask(rowKeyDesc);
 buildMandatoryColumnMask(rowKeyDesc);
@@ -76,19 +79,41 @@ public class AggregationGroup {
 
 }
 
-private void columnNamesToUpperCase() {
-StringUtil.toUpperCaseArray(includes, includes);
-StringUtil.toUpperCaseArray(selectRule.mandatory_dims, 
selectRule.mandatory_dims);
-if (selectRule.hierarchy_dims != null) {
-for (String[] cols : selectRule.hierarchy_dims) {
-StringUtil.toUpperCaseArray(cols, 

[23/50] [abbrv] kylin git commit: KYLIN-2195 All code changes, ready for test

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/826f23f1/engine-mr/src/main/java/org/apache/kylin/engine/mr/DFSFileTableReader.java
--
diff --git 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/DFSFileTableReader.java 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/DFSFileTableReader.java
index 173c908..67fedbd 100644
--- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/DFSFileTableReader.java
+++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/DFSFileTableReader.java
@@ -1,252 +1,252 @@
-/*
- * 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.engine.mr;
-
-import java.io.BufferedReader;
-import java.io.Closeable;
-import java.io.EOFException;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.apache.commons.io.IOUtils;
-import org.apache.commons.lang.StringEscapeUtils;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FSDataInputStream;
-import org.apache.hadoop.fs.FileStatus;
-import org.apache.hadoop.fs.FileSystem;
-import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.SequenceFile;
-import org.apache.hadoop.io.SequenceFile.Reader;
-import org.apache.hadoop.io.Text;
-import org.apache.hadoop.io.Writable;
-import org.apache.hadoop.util.ReflectionUtils;
-import org.apache.kylin.common.util.Bytes;
-import org.apache.kylin.common.util.StringSplitter;
-import org.apache.kylin.source.ReadableTable.TableReader;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Tables are typically CSV or SEQ file.
- * 
- * @author yangli9
- */
-public class DFSFileTableReader implements TableReader {
-
-private static final Logger logger = 
LoggerFactory.getLogger(DFSFileTableReader.class);
-private static final char CSV_QUOTE = '"';
-private static final String[] DETECT_DELIMS = new String[] { "\177", "|", 
"\t", "," };
-
-private String filePath;
-private String delim;
-private List readerList;
-
-private String curLine;
-private String[] curColumns;
-private int expectedColumnNumber = -1; // helps delimiter detection
-
-public DFSFileTableReader(String filePath, int expectedColumnNumber) 
throws IOException {
-this(filePath, DFSFileTable.DELIM_AUTO, expectedColumnNumber);
-}
-
-public DFSFileTableReader(String filePath, String delim, int 
expectedColumnNumber) throws IOException {
-filePath = HadoopUtil.fixWindowsPath(filePath);
-this.filePath = filePath;
-this.delim = delim;
-this.expectedColumnNumber = expectedColumnNumber;
-this.readerList = new ArrayList();
-
-FileSystem fs = HadoopUtil.getFileSystem(filePath);
-
-ArrayList allFiles = new ArrayList<>();
-FileStatus status = fs.getFileStatus(new Path(filePath));
-if (status.isFile()) {
-allFiles.add(status);
-} else {
-FileStatus[] listStatus = fs.listStatus(new Path(filePath));
-allFiles.addAll(Arrays.asList(listStatus));
-}
-
-try {
-for (FileStatus f : allFiles) {
-RowReader rowReader = new 
SeqRowReader(HadoopUtil.getCurrentConfiguration(), fs, f.getPath().toString());
-this.readerList.add(rowReader);
-}
-} catch (IOException e) {
-if (isExceptionSayingNotSeqFile(e) == false)
-throw e;
-
-this.readerList = new ArrayList();
-for (FileStatus f : allFiles) {
-RowReader rowReader = new CsvRowReader(fs, 
f.getPath().toString());
-this.readerList.add(rowReader);
-}
-}
-}
-
-private boolean isExceptionSayingNotSeqFile(IOException e) {
-if (e.getMessage() != null && e.getMessage().contains("not a 
SequenceFile"))
-return true;
-
-if (e instanceof EOFException) // in case the file is very very small
-return true;
-
-return false;
-}
-
-@Override
-public boolean next() throws IOException {
-int curReaderIndex = -1;
-

[43/50] [abbrv] kylin git commit: add 1.6.1 to SIGNATURE_INCOMPATIBLE_REVISIONS

2016-11-27 Thread liyang
add 1.6.1 to SIGNATURE_INCOMPATIBLE_REVISIONS


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

Branch: refs/heads/KYLIN-1875
Commit: ddc003c860cd4566e4995aa160f89a8d4b93934f
Parents: d367bf5
Author: shaofengshi 
Authored: Fri Nov 25 18:08:36 2016 +0800
Committer: shaofengshi 
Committed: Fri Nov 25 18:08:36 2016 +0800

--
 core-common/src/main/java/org/apache/kylin/common/KylinVersion.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/ddc003c8/core-common/src/main/java/org/apache/kylin/common/KylinVersion.java
--
diff --git 
a/core-common/src/main/java/org/apache/kylin/common/KylinVersion.java 
b/core-common/src/main/java/org/apache/kylin/common/KylinVersion.java
index b7c3804..622c6af 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinVersion.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinVersion.java
@@ -86,6 +86,7 @@ public class KylinVersion {
  */
 static {
 SIGNATURE_INCOMPATIBLE_REVISIONS.add(new KylinVersion("1.5.1"));
+SIGNATURE_INCOMPATIBLE_REVISIONS.add(new KylinVersion("1.6.1"));
 }
 
 /**



[05/50] [abbrv] kylin git commit: KYLIN-2195 prepare name mapping

2016-11-27 Thread liyang
KYLIN-2195 prepare name mapping


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

Branch: refs/heads/KYLIN-1875
Commit: 79cb59cfda2caa9b4a623d2e425c6b3d99ea50db
Parents: bce9ab8
Author: Li Yang 
Authored: Tue Nov 22 18:36:20 2016 +0800
Committer: Li Yang 
Committed: Tue Nov 22 18:36:32 2016 +0800

--
 .../apache/kylin/common/KylinConfigBase.java|   8 -
 .../kylin-backward-compatibility.properties | 187 ++-
 2 files changed, 186 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/79cb59cf/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 3252245..a84ed62 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
@@ -785,14 +785,6 @@ abstract public class KylinConfigBase implements 
Serializable {
 return Integer.parseInt(getOptional("kylin.enable.scheduler", "0"));
 }
 
-public String getZookeeperAddress() {
-return this.getOptional("kylin.zookeeper.address");
-}
-
-public String getRestAddress() {
-return this.getOptional("kylin.rest.address", "localhost:7070");
-}
-
 private Map convertKeyToInteger(Map map) {
 Map result = Maps.newLinkedHashMap();
 for (Entry entry : map.entrySet()) {

http://git-wip-us.apache.org/repos/asf/kylin/blob/79cb59cf/examples/test_case_data/localmeta/kylin-backward-compatibility.properties
--
diff --git 
a/examples/test_case_data/localmeta/kylin-backward-compatibility.properties 
b/examples/test_case_data/localmeta/kylin-backward-compatibility.properties
index 67aef7a..30395df 100644
--- a/examples/test_case_data/localmeta/kylin-backward-compatibility.properties
+++ b/examples/test_case_data/localmeta/kylin-backward-compatibility.properties
@@ -1 +1,186 @@
-kylin.test.bcc.old.key=kylin.test.bcc.new.key
\ No newline at end of file
+
+### TEST ###
+
+kylin.test.bcc.old.key=kylin.test.bcc.new.key
+
+
+### ENV ###
+
+deploy.env=kylin.env
+kylin.hdfs.working.dir=kylin.env.hdfs-working-dir
+
+
+### METADATA ###
+
+kylin.metadata.url=kylin.metadata.url
+kylin.realization.providers=kylin.metadata.realization-providers
+kylin.cube.dimension.customEncodingFactories=kylin.metadata.custom-dimension-encodings
+kylin.cube.measure.customMeasureType.=kylin.metadata.custom-measure-type.
+
+
+### Dictionary ###
+
+kylin.table.snapshot.max_mb=kylin.snapshot.max-mb
+kylin.snapshot.cache.max.entry=kylin.snapshot.max-cache-entry
+kylin.dictionary.forest.trie.size.max_mb=kylin.dictionary.forest-trie-max-mb
+kylin.dict.cache.max.entry=kylin.dictionary.max-cache-entry
+kylin.dict.growing.enabled=kylin.dictionary.growing-enabled
+kylin.dict.append.entry.size=kylin.dictionary.append-entry-size
+kylin.dict.append.cache.size=kylin.dictionary.append-cache-size
+
+
+### CUBE ###
+
+kylin.job.cuboid.size.ratio=kylin.cube.size-estimate-ratio
+kylin.job.cuboid.size.memhungry.ratio=kylin.cube.size-estimate-memhungry-ratio
+kylin.cube.algorithm=kylin.cube.algorithm
+kylin.cube.algorithm.auto.threshold=kylin.cube.algorithm.layer-or-inmem-threshold
+kylin.cube.algorithm.auto.mapper.limit=kylin.cube.algorithm.inmem-split-limit
+kylin.cube.aggrgroup.max.size=kylin.cube.aggrgroup.max-size
+kylin.cube.aggrgroup.max.combination=kylin.cube.aggrgroup.max-combination
+kylin.cube.aggrgroup.isMandatoryOnlyValid=kylin.cube.aggrgroup.is-mandatory-only-valid
+kylin.cube.building.segment.max=kylin.cube.max-building-segments
+
+
+### JOB ###
+
+kylin.job.log.dir=kylin.job.log-dir
+kylin.job.remote.cli.working.dir=kylin.job.remote-cli-working-dir
+kylin.job.allow.empty.segment=kylin.job.allow-empty-segment
+kylin.job.concurrent.max.limit=kylin.job.max-concurrent-jobs
+kylin.job.cubing.inmem.sampling.percent=kylin.job.sampling-percentage
+kylin.job.cubing.inmem.sampling.hll.precision=kylin.job.sampling-hll-precision
+kylin.job.dependency.filterlist=kylin.job.dependency-filter-list
+kylin.job.retry=kylin.job.retry
+kylin.job.controller.lock=kylin.job.lock
+kylin.scheduler.=kylin.job.scheduler.provider.
+kylin.enable.scheduler=kylin.job.scheduler.default
+
+mail.enabled=kylin.job.notification.enabled
+mail.host=kylin.job.notification.mail-host

[21/50] [abbrv] kylin git commit: KYLIN-2195 Rename spring/security related properties

2016-11-27 Thread liyang
KYLIN-2195 Rename spring/security related properties


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

Branch: refs/heads/KYLIN-1875
Commit: 2cca348c608aa8674572ee6bee53fbf48e40e4df
Parents: 826f23f
Author: Li Yang 
Authored: Wed Nov 23 11:55:48 2016 +0800
Committer: Li Yang 
Committed: Wed Nov 23 17:08:29 2016 +0800

--
 build/conf/kylin.properties | 179 ---
 .../common/BackwardCompatibilityConfig.java |  13 +-
 .../org/apache/kylin/common/KylinConfig.java|   6 +-
 .../apache/kylin/common/KylinConfigBase.java|  14 +-
 .../org/apache/kylin/common/KylinConfigExt.java |   4 +-
 .../kylin-backward-compatibility.properties |  37 +++-
 .../apache/kylin/common/KylinConfigTest.java|  18 +-
 .../test_case_data/localmeta/kylin.properties   |  34 ++--
 examples/test_case_data/sandbox/hive-site.xml   |   6 +-
 .../test_case_data/sandbox/kylin.properties |  13 +-
 server/src/main/resources/kylinSecurity.xml |  46 ++---
 webapp/app/js/controllers/cubes.js  |   2 +-
 webapp/app/js/services/kylinProperties.js   |   8 +-
 13 files changed, 193 insertions(+), 187 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/build/conf/kylin.properties
--
diff --git a/build/conf/kylin.properties b/build/conf/kylin.properties
index 7cdc1c5..1409394 100644
--- a/build/conf/kylin.properties
+++ b/build/conf/kylin.properties
@@ -15,21 +15,32 @@
 # limitations under the License.
 #
 
-### SERVICE ###
+### METADATA | ENV ###
+
+# The metadata store in hbase
+kylin.metadata.url=kylin_metadata@hbase
+
+# Working folder in HDFS, make sure user has the right access to the hdfs 
directory
+kylin.env.hdfs-working-dir=/kylin
+
+# DEV|QA|PROD. DEV will turn on some dev features, QA and PROD has no 
difference in terms of functions.
+kylin.env=QA
+
+
+### SERVER | WEB ###
 
 # Kylin server mode, valid value [all, query, job]
 kyin.server.mode=all
 
-# Optional information for the owner of kylin platform, it can be your team's 
email
-# Currently it will be attached to each kylin's htable attribute
-kylin.storage.hbase.owner-tag=who...@kylin.apache.org
-
 # List of web servers in use, this enables one web server instance to sync up 
with other servers.
 kylin.server.cluster-servers=localhost:7070
 
 # Display timezone on UI,format like[GMT+N or GMT-N]
 kylin.web.timezone=GMT+8
 
+kylin.web.cross-domain-enabled=true
+
+
 ### SOURCE ###
 
 # Hive client, valid value [cli, beeline]
@@ -40,16 +51,17 @@ kylin.source.hive.client=cli
 
 kylin.source.hive.keep-flat-table=false
 
-### STORAGE ###
+# Hive database name for putting the intermediate flat tables
+kylin.source.hive.database-for-flat-table=default
 
-# The metadata store in hbase
-kylin.metadata.url=kylin_metadata@hbase
+# Whether redistribute the intermediate flat table before building
+kylin.source.hive.redistribute-flat-table=true
 
-# The storage for final cube file in hbase
-kylin.storage.url=hbase
 
-# Working folder in HDFS, make sure user has the right access to the hdfs 
directory
-kylin.env.hdfs-working-dir=/kylin
+### STORAGE ###
+
+# The storage for cube is hbase
+kylin.storage.url=hbase
 
 # Compression codec for htable, valid value [none, snappy, lzo, gzip, lz4]
 kylin.storage.hbase.compression-codec=none
@@ -68,72 +80,67 @@ kylin.storage.hbase.hfile-size-gb=2
 kylin.storage.hbase.min-region-count=1
 kylin.storage.hbase.max-region-count=500
 
-### JOB ###
-
-# max job retry on error, default 0: no retry
-kylin.job.retry=0
+# Optional information for the owner of kylin platform, it can be your team's 
email
+# Currently it will be attached to each kylin's htable attribute
+kylin.storage.hbase.owner-tag=who...@kylin.apache.org
 
-# If true, job engine will not assume that hadoop CLI reside on the same 
server as it self
-# you will have to specify kylin.job.remote-cli-hostname, 
kylin.job.remote-cli-username and kylin.job.remote-cli-password
-# It should not be set to "true" unless you're NOT running Kylin.sh on a 
hadoop client machine 
-# (Thus kylin instance has to ssh to another real hadoop client machine to 
execute hbase,hive,hadoop commands)
-kylin.job.use-remote-cli=false
+kylin.storage.hbase.coprocessor-mem-gb=3
 
-# Only necessary when kylin.job.use-remote-cli=true
-kylin.job.remote-cli-hostname=
-kylin.job.remote-cli-port=22
+# The default coprocessor timeout is (hbase.rpc.timeout * 0.9) / 1000 seconds,
+# You can set it to a smaller value. 0 means use default.
+# kylin.storage.hbase.coprocessor-timeout-seconds=0
 
-# Only 

[13/50] [abbrv] kylin git commit: KYLIN-2202 fix the conflict between KYLIN-1851 and KYLIN-2202. Remove some useless MR files.

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/2b7fe610/engine-mr/src/test/resources/multi_file_double/data_1
--
diff --git a/engine-mr/src/test/resources/multi_file_double/data_1 
b/engine-mr/src/test/resources/multi_file_double/data_1
new file mode 100644
index 000..f3c6d42
--- /dev/null
+++ b/engine-mr/src/test/resources/multi_file_double/data_1
@@ -0,0 +1,2093 @@
+1.56
+9.356
+13.512
+14.032
+17.67
+19.7599987
+20.786
+22.3599985
+34.31
+35.36
+39.5200024
+45.240006
+52.1
+57.200013
+61.3600156
+62.9200165
+65.520017
+67.080015
+67.600015
+70.720013
+71.240012
+75.920009
+83.720003
+84.240002
+90.479998
+91.519997
+97.759992
+98.71
+105.039986
+108.159984
+109.199983
+111.279982
+112.319981
+112.83998
+114.399979
+115.959978
+116.479978
+121.159974
+122.719973
+124.799971
+125.319971
+127.39997
+130.519973
+133.119978
+133.63998
+134.67998
+137.799987
+138.83999
+140.919993
+141.959995
+144.04
+145.08
+146.640004
+147.160005
+148.27
+148.720008
+151.320014
+152.360016
+154.44002
+156.520024
+157.040025
+160.680032
+162.760036
+165.880042
+167.440045
+168.480047
+169.52005
+171.600053
+172.120054
+173.160057
+174.72006
+177.320065
+180.960072
+182.520075
+183.040076
+187.200084
+187.720085
+188.760087
+189.280088
+190.32009
+192.920095
+195.0001
+200.72011
+203.320116
+205.92012
+208.000125
+210.08013
+210.60013
+211.640132
+212.680134
+215.80014
+216.320141
+216.840142
+217.360143
+219.440148
+221.520152
+228.280165
+230.36017
+231.920172
+233.480175
+234.000176
+235.040178
+237.640183
+238.680185
+240.240188
+241.800192
+242.320193
+243.360195
+245.9602
+248.560205
+249.080206
+250.64021
+251.68021
+257.400214
+257.92021
+258.96021
+265.720185
+267.28018
+275.08015
+283.40012
+288.080106
+288.600105
+290.6801
+292.24009
+294.320085
+299.7
+303.160054
+310.44003
+312.2
+313.04002
+321.87999
+323.43998
+324.47998
+332.79995
+333.839946
+334.87994
+335.91994
+336.43994
+342.15992
+343.71991
+347.3599
+352.55988
+353.07988
+354.639874
+355.67987
+356.719866
+359.839855
+363.47984
+363.99984
+370.23982
+373.35981
+374.399804
+375.9598
+381.15978
+381.67978
+382.19978
+387.91976
+388.439755
+389.47975
+390.51975
+392.07974
+394.679734
+395.71973
+397.279724
+398.31972
+398.83972
+404.0397
+407.15969
+409.75968
+414.95966
+417.039655
+418.07965
+418.59965
+420.159644
+426.91962
+430.03961
+430.55961
+435.75959
+436.799586
+437.83958
+438.87958
+439.919575
+441.47957
+445.639555
+455.51952
+456.559517
+458.11951
+458.63951
+460.199504
+465.399486
+469.55947
+473.719457
+483.59942
+486.199413
+487.75941
+488.799404
+491.399395
+496.07938
+497.639373
+498.67937
+505.439346
+509.59933
+511.679324
+512.19932
+518.9593
+521.03929
+521.55929
+525.19928
+526.75927
+528.31927
+536.11924
+539.75923
+548.5992
+550.67919
+559.51916
+562.11915
+563.67914
+565.75914
+567.31913
+567.83913
+570.43912
+573.55911
+574.5991
+575.1191
+576.6791
+583.95907
+587.59906
+588.63906
+593.83904
+597.47902
+601.11901
+601.63901
+604.759
+606.83899
+607.87899
+609.43898
+616.71896

[17/50] [abbrv] kylin git commit: KYLIN-2196: enable tomcat parallel class loader

2016-11-27 Thread liyang
KYLIN-2196: enable tomcat parallel class loader

Signed-off-by: shaofengshi 


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

Branch: refs/heads/KYLIN-1875
Commit: 657aa31b29b1b22d96c7ef121276ffa60ba9ea5d
Parents: c8dfa13
Author: Yiming Liu 
Authored: Wed Nov 16 13:06:56 2016 +0800
Committer: shaofengshi 
Committed: Tue Nov 22 22:41:11 2016 +0800

--
 .../java/org/apache/kylin/ext/CustomizedWebappClassloader.java | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/657aa31b/tomcat-ext/src/main/java/org/apache/kylin/ext/CustomizedWebappClassloader.java
--
diff --git 
a/tomcat-ext/src/main/java/org/apache/kylin/ext/CustomizedWebappClassloader.java
 
b/tomcat-ext/src/main/java/org/apache/kylin/ext/CustomizedWebappClassloader.java
index d97d583..5116849 100644
--- 
a/tomcat-ext/src/main/java/org/apache/kylin/ext/CustomizedWebappClassloader.java
+++ 
b/tomcat-ext/src/main/java/org/apache/kylin/ext/CustomizedWebappClassloader.java
@@ -18,14 +18,14 @@
 
 package org.apache.kylin.ext;
 
-import org.apache.catalina.loader.WebappClassLoader;
+import org.apache.catalina.loader.ParallelWebappClassLoader;
 
 /**
- * simple extension to standard WebappClassLoader
+ * simple extension to standard ParallelWebappClassLoader
  * the only difference is that CustomizedWebappClassloader is able to delegate 
more packages
  * to parent classloaders
  */
-public class CustomizedWebappClassloader extends WebappClassLoader {
+public class CustomizedWebappClassloader extends ParallelWebappClassLoader {
 /**
  * Set of package names which are not allowed to be loaded from a webapp
  * class loader without delegating first.



[48/50] [abbrv] kylin git commit: KYLIN-1875 A good snowflake sample data, and rename 'kylin_metadata' to 'kylin_default_instance'

2016-11-27 Thread liyang
http://git-wip-us.apache.org/repos/asf/kylin/blob/dbbbae22/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
--
diff --git a/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv 
b/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
index d8158ec..7349b37 100644
--- a/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
+++ b/examples/sample_cube/data/DEFAULT.KYLIN_SALES.csv
@@ -1,1 +1,1 @@
-0,2012-12-14,Others,88750,0,11,36.2828,0,1349,US,JP,ANALYST,Beijing
-1,2012-08-28,Others,175750,0,13,23.8563,0,1927,JP,JP,ANALYST,Beijing
-2,2012-02-16,ABIN,148324,15,13,88.3418,0,1005,DE,FR,ADMIN,Shanghai
-3,2013-10-19,FP-non GTC,37831,0,13,47.3015,0,1209,UK,UK,ANALYST,Beijing
-4,2012-10-22,Others,140746,100,11,83.454,0,1154,JP,CN,ADMIN,Shanghai
-5,2013-01-25,FP-GTC,16509,0,-99,22.9896,0,1372,DE,UK,ADMIN,Shanghai
-6,2013-04-04,Others,963,0,13,88.5907,0,1648,US,JP,MODELER,Hongkong
-7,2012-04-11,Others,15687,0,15,88.194,0,1866,US,UK,ADMIN,Shanghai
-8,2013-01-19,ABIN,60606,3,13,77.9727,0,1936,FR,CN,MODELER,Hongkong
-9,2012-04-30,FP-non GTC,106246,0,14,52.295,0,1047,CN,FR,MODELER,Hongkong
-10,2013-02-03,Auction,45333,0,16,56.3584,0,1470,UK,JP,MODELER,Hongkong
-11,2012-09-02,FP-GTC,25147,0,-99,15.3553,0,1203,US,UK,ANALYST,Beijing
-12,2013-07-30,Others,24760,0,16,25.077,0,1382,CN,JP,ADMIN,Shanghai
-13,2012-04-17,Auction,31519,0,16,72.7384,0,1069,CN,JP,ADMIN,Shanghai
-14,2013-04-30,FP-GTC,51582,0,15,75.82,0,1085,CN,DE,ANALYST,Beijing
-15,2013-03-23,FP-GTC,16509,0,15,8.6653,0,1559,US,FR,MODELER,Hongkong
-16,2013-04-01,ABIN,175750,3,16,64.2802,0,1507,JP,CN,MODELER,Hongkong
-17,2013-07-12,ABIN,50677,0,-99,24.5987,0,1938,UK,FR,ADMIN,Shanghai
-18,2012-04-23,FP-GTC,45333,0,5,72.6553,0,1863,CN,CN,MODELER,Hongkong
-19,2012-12-19,ABIN,3838,0,12,87.4142,0,1612,DE,JP,ADMIN,Shanghai
-20,2012-08-15,FP-GTC,62179,0,16,67.4238,0,1839,JP,US,MODELER,Hongkong
-21,2013-08-22,Auction,1357,0,5,18.36,0,1303,CN,JP,ANALYST,Beijing
-22,2013-08-23,ABIN,31519,0,5,67.6344,0,1877,FR,JP,ANALYST,Beijing
-23,2013-09-12,FP-GTC,223,0,14,71.7898,0,1848,US,CN,MODELER,Hongkong
-24,2012-03-14,FP-GTC,132939,0,15,26.1496,0,1815,JP,DE,MODELER,Hongkong
-25,2013-07-13,Others,67703,3,16,83.9661,0,1858,CN,CN,MODELER,Hongkong
-26,2013-12-15,FP-non GTC,100847,0,5,34.3451,0,1387,CN,CN,ADMIN,Shanghai
-27,2012-08-30,Auction,62179,0,11,21.0496,0,1393,JP,FR,ANALYST,Beijing
-28,2013-01-10,FP-GTC,48027,0,13,23.4142,0,1757,FR,FR,MODELER,Hongkong
-29,2013-01-25,ABIN,145970,0,5,26.7842,0,1402,DE,CN,ANALYST,Beijing
-30,2012-07-05,Auction,48027,0,-99,46.732,0,1972,DE,UK,MODELER,Hongkong
-31,2012-11-07,FP-GTC,20213,0,-99,19.727,0,1873,UK,CN,ANALYST,Beijing
-32,2013-06-20,ABIN,100847,0,5,76.2783,0,1409,CN,DE,ADMIN,Shanghai
-33,2012-10-08,ABIN,26262,0,5,48.7447,0,1029,CN,FR,ADMIN,Shanghai
-34,2013-04-30,ABIN,87118,0,15,63.2187,0,1529,FR,DE,ANALYST,Beijing
-35,2013-04-24,FP-non GTC,20213,0,16,39.5057,0,1329,JP,FR,ANALYST,Beijing
-36,2012-05-13,Others,164261,0,13,84.1246,0,1688,CN,GB,ADMIN,Shanghai
-37,2013-08-02,ABIN,31519,0,5,37.1504,0,1905,FR,DE,MODELER,Hongkong
-38,2012-04-03,Auction,164261,0,11,92.0974,0,1341,CN,UK,ADMIN,Shanghai
-39,2012-09-02,FP-GTC,31519,0,14,87.7829,0,1460,DE,UK,ANALYST,Beijing
-40,2013-10-05,ABIN,13987,0,16,74.0719,0,1381,CN,UK,MODELER,Hongkong
-41,2012-01-13,FP-GTC,48027,0,15,71.2637,0,1915,UK,CN,ADMIN,Shanghai
-42,2013-03-01,Others,13836,0,14,16.7288,0,1953,CN,UK,ADMIN,Shanghai
-43,2012-09-12,FP-non GTC,16509,0,5,12.2933,0,1277,FR,CN,MODELER,Hongkong
-44,2012-02-07,Auction,45333,0,5,64.977,0,1040,FR,JP,MODELER,Hongkong
-45,2013-12-14,FP-non GTC,158798,0,16,72.4413,0,1500,DE,CN,MODELER,Hongkong
-46,2013-10-13,Auction,31519,0,5,79.3053,0,1816,CN,JP,MODELER,Hongkong
-47,2012-06-11,ABIN,4943,0,5,11.6942,0,1696,US,UK,ANALYST,Beijing
-48,2012-10-18,ABIN,80053,0,-99,54.0933,0,1604,FR,JP,MODELER,Hongkong
-49,2012-11-03,Auction,20886,0,5,9.8258,0,1764,US,CN,MODELER,Hongkong
-50,2012-01-15,Auction,44079,0,14,13.0371,0,1343,CN,US,MODELER,Hongkong
-51,2012-07-03,FP-GTC,159184,0,-99,92.5314,0,1724,CN,GB,ADMIN,Shanghai
-52,2012-02-16,FP-GTC,314,0,13,49.1825,0,1334,JP,CN,ADMIN,Shanghai
-53,2012-06-17,FP-non GTC,31387,3,12,0.6677,0,1603,JP,JP,ANALYST,Beijing
-54,2012-07-15,FP-non GTC,32876,0,-99,50.9634,0,1248,CN,UK,ANALYST,Beijing
-55,2012-07-24,FP-GTC,150265,15,16,57.5645,0,1653,CN,CN,ADMIN,Shanghai
-56,2012-10-06,Auction,145970,0,5,44.3091,0,1082,JP,DE,ADMIN,Shanghai
-57,2013-06-14,ABIN,80053,0,5,20.2388,0,1632,JP,UK,MODELER,Hongkong
-58,2013-10-10,FP-non GTC,15868,0,11,28.629,0,1523,US,FR,MODELER,Hongkong
-59,2012-09-30,ABIN,31673,0,12,75.8658,0,1719,CN,FR,ADMIN,Shanghai
-60,2012-04-02,FP-GTC,63861,0,5,25.8748,0,1311,JP,FR,ANALYST,Beijing

[30/50] [abbrv] kylin git commit: KYLIN-2132 Fix missing type check of BIGINT; Add follow-up fix of KYLIN-2121

2016-11-27 Thread liyang
KYLIN-2132 Fix missing type check of BIGINT; Add follow-up fix of KYLIN-2121

Signed-off-by: lidongsjtu 


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

Branch: refs/heads/KYLIN-1875
Commit: 3e4e82f06e1e6f7343d87259d912db3abc8c5a96
Parents: 2cca348
Author: Yifan Zhang 
Authored: Wed Nov 23 15:51:02 2016 +0800
Committer: lidongsjtu 
Committed: Wed Nov 23 17:13:35 2016 +0800

--
 odbc/Driver/KO_DTYPE.CPP | 1 +
 odbc/Driver/KO_FETCH.CPP | 9 +
 2 files changed, 6 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/kylin/blob/3e4e82f0/odbc/Driver/KO_DTYPE.CPP
--
diff --git a/odbc/Driver/KO_DTYPE.CPP b/odbc/Driver/KO_DTYPE.CPP
index 851fe70..dc2f3ff 100644
--- a/odbc/Driver/KO_DTYPE.CPP
+++ b/odbc/Driver/KO_DTYPE.CPP
@@ -82,6 +82,7 @@ eGoodBad _SQLCheckDataType ( Word pDataType )
 case SQL_TYPE_TIMESTAMP :
 case SQL_BIT :
 case SQL_DEFAULT :
+case SQL_BIGINT :
 case SQL_C_SBIGINT :
 case SQL_C_UBIGINT :
 case SQL_C_TINYINT :

http://git-wip-us.apache.org/repos/asf/kylin/blob/3e4e82f0/odbc/Driver/KO_FETCH.CPP
--
diff --git a/odbc/Driver/KO_FETCH.CPP b/odbc/Driver/KO_FETCH.CPP
index 2153f97..07780cf 100644
--- a/odbc/Driver/KO_FETCH.CPP
+++ b/odbc/Driver/KO_FETCH.CPP
@@ -696,12 +696,13 @@ RETCODE SQL_API SQLPutData ( SQLHSTMT pStmt,
 
 RETCODE SQL_API SQLMoreResults ( HSTMT pStmt )
 {
-__ODBCLOG ( _ODBCLogMsg ( LogLevel_DEBUG, "SQLMoreResults called" ) );
-
 pODBCStmt odbcStmt = ( pODBCStmt )pStmt;
-
+
+__ODBCLOG ( _ODBCLogMsg ( LogLevel_DEBUG, "SQLMoreResults called, stmt 
handle %d with start-row %d and end-row %d, next handle is %d", 
+(long) odbcStmt, odbcStmt->CurRowsetStartRowPos, 
odbcStmt->CurRowsetEndRowPos, (long) odbcStmt -> Next) );
+
 // check if stmt been released already
-if ( ! odbcStmt -> Prepared )
+if (( ! odbcStmt -> Prepared) || ( ! odbcStmt -> Next ))
 {
return SQL_NO_DATA;
 }