You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ma...@apache.org on 2016/12/04 13:44:11 UTC
[1/3] kylin git commit: minor: normalize scientific decimal values
Repository: kylin
Updated Branches:
refs/heads/master eb686a942 -> 00a4c5064
minor: normalize scientific decimal values
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/fe9efa86
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/fe9efa86
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/fe9efa86
Branch: refs/heads/master
Commit: fe9efa86cd34da31ec41dc176140ee4ee2f49fed
Parents: eb686a9
Author: Hongbin Ma <ma...@apache.org>
Authored: Sun Dec 4 21:26:18 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Sun Dec 4 21:26:18 2016 +0800
----------------------------------------------------------------------
.../java/org/apache/kylin/metadata/tuple/Tuple.java | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/fe9efa86/core-metadata/src/main/java/org/apache/kylin/metadata/tuple/Tuple.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/tuple/Tuple.java b/core-metadata/src/main/java/org/apache/kylin/metadata/tuple/Tuple.java
index 721a719..d51ae9e 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/tuple/Tuple.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/tuple/Tuple.java
@@ -115,6 +115,8 @@ public class Tuple implements ITuple {
// BigDecimal during cube build for best precision
if ("double".equals(dataType) && fieldValue instanceof BigDecimal) {
fieldValue = ((BigDecimal) fieldValue).doubleValue();
+ } else if ("decimal".equals(dataType) && fieldValue instanceof BigDecimal) {
+ fieldValue = normalizeDecimal((BigDecimal) fieldValue);
} else if ("integer".equals(dataType) && fieldValue instanceof Number) {
fieldValue = ((Number) fieldValue).intValue();
} else if ("smallint".equals(dataType) && fieldValue instanceof Number) {
@@ -145,6 +147,14 @@ public class Tuple implements ITuple {
return o;
}
+ private static BigDecimal normalizeDecimal(BigDecimal input) {
+ if (input.scale() < 0) {
+ return input.setScale(0);
+ } else {
+ return input;
+ }
+ }
+
public boolean hasColumn(TblColRef column) {
return info.hasColumn(column);
}
@@ -199,7 +209,7 @@ public class Tuple implements ITuple {
case "double":
return Double.valueOf(strValue);
case "decimal":
- return new BigDecimal(strValue);
+ return normalizeDecimal(new BigDecimal(strValue));
case "float":
return Float.valueOf(strValue);
case "boolean":
[2/3] kylin git commit: minor, refine MassInTupleFilter
Posted by ma...@apache.org.
minor, refine MassInTupleFilter
Signed-off-by: Hongbin Ma <ma...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/a03eec88
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/a03eec88
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/a03eec88
Branch: refs/heads/master
Commit: a03eec88f3b4e60d1f1d6bd2fd5922a97aec23f5
Parents: fe9efa8
Author: Roger Shi <ro...@hotmail.com>
Authored: Sun Dec 4 16:28:47 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Sun Dec 4 21:28:17 2016 +0800
----------------------------------------------------------------------
.../metadata/filter/UDF/MassInTupleFilter.java | 34 +++++++++++++++++---
1 file changed, 30 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/a03eec88/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
index 29c5550..e4e311e 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
@@ -19,6 +19,7 @@
package org.apache.kylin.metadata.filter.UDF;
import java.nio.ByteBuffer;
+import java.util.ArrayList;
import java.util.Collection;
import org.apache.kylin.common.KylinConfig;
@@ -40,7 +41,6 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
public class MassInTupleFilter extends FunctionTupleFilter {
-
public static final Logger logger = LoggerFactory.getLogger(MassInTupleFilter.class);
public static MassInValueProviderFactory VALUE_PROVIDER_FACTORY = null;
@@ -56,6 +56,16 @@ public class MassInTupleFilter extends FunctionTupleFilter {
super(Lists.<TupleFilter> newArrayList(), TupleFilter.FilterOperatorEnum.MASSIN);
}
+ public MassInTupleFilter(MassInTupleFilter filter) {
+ super(new ArrayList<TupleFilter>(filter.children), filter.operator);
+ this.valueProvider = filter.getValueProvider();
+ this.column = filter.getColumn();
+ this.filterTableName = filter.getFilterTableName();
+ this.filterTableResourceIdentifier = filter.getFilterTableResourceIdentifier();
+ this.filterTableType = filter.getFilterTableType();
+ this.reverse = filter.isReverse();
+ }
+
@Override
public boolean evaluate(IEvaluatableTuple tuple, IFilterCodeSystem<?> cs) {
Preconditions.checkNotNull(tuple);
@@ -132,6 +142,7 @@ public class MassInTupleFilter extends FunctionTupleFilter {
BytesUtil.writeUTFString(filterTableName, buffer);
BytesUtil.writeUTFString(filterTableResourceIdentifier, buffer);
BytesUtil.writeUTFString(filterTableType.toString(), buffer);
+ BytesUtil.writeUTFString(String.valueOf(reverse), buffer);
}
@Override
@@ -139,6 +150,7 @@ public class MassInTupleFilter extends FunctionTupleFilter {
filterTableName = BytesUtil.readUTFString(buffer);
filterTableResourceIdentifier = BytesUtil.readUTFString(buffer);
filterTableType = Functions.FilterTableType.valueOf(BytesUtil.readUTFString(buffer));
+ reverse = Boolean.valueOf(BytesUtil.readUTFString(buffer));
}
public static boolean containsMassInTupleFilter(TupleFilter filter) {
@@ -166,8 +178,22 @@ public class MassInTupleFilter extends FunctionTupleFilter {
@Override
protected Object clone() throws CloneNotSupportedException {
- MassInTupleFilter result = new MassInTupleFilter();
- result.setReverse(this.isReverse());
- return result;
+ return new MassInTupleFilter(this);
+ }
+
+ public MassInValueProvider getValueProvider() {
+ return valueProvider;
+ }
+
+ public String getFilterTableName() {
+ return filterTableName;
+ }
+
+ public String getFilterTableResourceIdentifier() {
+ return filterTableResourceIdentifier;
+ }
+
+ public Functions.FilterTableType getFilterTableType() {
+ return filterTableType;
}
}
[3/3] kylin git commit: minor,
change isReverse visibility in BuiltInFunctionTupleFilter.java
Posted by ma...@apache.org.
minor, change isReverse visibility in BuiltInFunctionTupleFilter.java
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/00a4c506
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/00a4c506
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/00a4c506
Branch: refs/heads/master
Commit: 00a4c5064bfe894bb8c106a214277d4d1d0f3c70
Parents: a03eec8
Author: Hongbin Ma <ma...@apache.org>
Authored: Sun Dec 4 21:41:07 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Sun Dec 4 21:41:07 2016 +0800
----------------------------------------------------------------------
.../apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/00a4c506/core-metadata/src/main/java/org/apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java
index f6e687b..b678394 100755
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/BuiltInFunctionTupleFilter.java
@@ -47,7 +47,7 @@ public class BuiltInFunctionTupleFilter extends FunctionTupleFilter {
protected Method method;
protected List<Serializable> methodParams;
protected boolean isValidFunc = false;
- private boolean isReversed = false;
+ protected boolean isReversed = false;
public BuiltInFunctionTupleFilter(String name) {
this(name, null);