Repository: kylin
Updated Branches:
  refs/heads/master 07d892124 -> 8822e78af


KYLIN-2181 fail cube which uses fixedlength for integer/number


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

Branch: refs/heads/master
Commit: 8822e78af041dbcd00f89c5e3ef65a712d394d76
Parents: 8ed3fbc
Author: Hongbin Ma <mahong...@apache.org>
Authored: Mon Nov 14 18:27:21 2016 +0800
Committer: Hongbin Ma <mahong...@apache.org>
Committed: Mon Nov 14 18:27:25 2016 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/cube/model/RowKeyColDesc.java    | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/8822e78a/core-cube/src/main/java/org/apache/kylin/cube/model/RowKeyColDesc.java
----------------------------------------------------------------------
diff --git 
a/core-cube/src/main/java/org/apache/kylin/cube/model/RowKeyColDesc.java 
b/core-cube/src/main/java/org/apache/kylin/cube/model/RowKeyColDesc.java
index 9e2cb48..6192d76 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/model/RowKeyColDesc.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/model/RowKeyColDesc.java
@@ -23,6 +23,7 @@ import org.apache.kylin.dimension.DateDimEnc;
 import org.apache.kylin.dimension.DictionaryDimEnc;
 import org.apache.kylin.dimension.DimensionEncoding;
 import org.apache.kylin.dimension.DimensionEncodingFactory;
+import org.apache.kylin.dimension.FixedLenDimEnc;
 import org.apache.kylin.dimension.TimeDimEnc;
 import org.apache.kylin.metadata.datatype.DataType;
 import org.apache.kylin.metadata.model.TblColRef;
@@ -61,7 +62,7 @@ public class RowKeyColDesc {
         column = column.toUpperCase();
         bitIndex = index;
         colRef = cubeDesc.getModel().findColumn(column);
-        Preconditions.checkArgument(colRef != null, "Cannot find rowkey column 
%s in cube %s", column,  cubeDesc);
+        Preconditions.checkArgument(colRef != null, "Cannot find rowkey column 
%s in cube %s", column, cubeDesc);
 
         Preconditions.checkState(StringUtils.isNotEmpty(this.encoding));
         Object[] encodingConf = 
DimensionEncoding.parseEncodingConf(this.encoding);
@@ -86,6 +87,8 @@ public class RowKeyColDesc {
             throw new IllegalArgumentException(colRef + " type is " + type + " 
and cannot apply date encoding");
         if (TimeDimEnc.ENCODING_NAME.equals(encodingName) && 
type.isTimeFamily() == false)
             throw new IllegalArgumentException(colRef + " type is " + type + " 
and cannot apply time encoding");
+        if (encodingName.startsWith(FixedLenDimEnc.ENCODING_NAME) && 
(type.isIntegerFamily() || type.isNumberFamily()))
+            throw new IllegalArgumentException(colRef + " type is " + type + " 
and cannot apply fixed_length encoding");
     }
 
     public String getEncoding() {

Reply via email to