You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by qh...@apache.org on 2015/05/18 13:19:42 UTC
[2/2] incubator-kylin git commit: optimize log
optimize log
Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/83680be1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/83680be1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/83680be1
Branch: refs/heads/0.8.0
Commit: 83680be1038620c2ea6bac0da1c4bd749873f734
Parents: 8b31638
Author: qianhao.zhou <qi...@ebay.com>
Authored: Fri May 15 13:01:20 2015 +0800
Committer: qianhao.zhou <qi...@ebay.com>
Committed: Mon May 18 19:19:03 2015 +0800
----------------------------------------------------------------------
.../apache/kylin/metadata/serializer/BigDecimalSerializer.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/83680be1/metadata/src/main/java/org/apache/kylin/metadata/serializer/BigDecimalSerializer.java
----------------------------------------------------------------------
diff --git a/metadata/src/main/java/org/apache/kylin/metadata/serializer/BigDecimalSerializer.java b/metadata/src/main/java/org/apache/kylin/metadata/serializer/BigDecimalSerializer.java
index cf146fb..af67112 100644
--- a/metadata/src/main/java/org/apache/kylin/metadata/serializer/BigDecimalSerializer.java
+++ b/metadata/src/main/java/org/apache/kylin/metadata/serializer/BigDecimalSerializer.java
@@ -38,6 +38,7 @@ public class BigDecimalSerializer extends DataTypeSerializer<BigDecimal> {
final DataType type;
final int maxLength;
+ int counter = 0;
public BigDecimalSerializer(DataType type) {
this.type = type;
@@ -48,7 +49,9 @@ public class BigDecimalSerializer extends DataTypeSerializer<BigDecimal> {
@Override
public void serialize(BigDecimal value, ByteBuffer out) {
if (value.scale() > type.getScale()) {
- logger.warn("value's scale has exceeded the " + type.getScale() +", cut it off, to ensure encoded value do not exceed maxLength " + maxLength);
+ if (counter % 10000 == 0) {
+ logger.warn("value's scale has exceeded the " + type.getScale() + ", cut it off, to ensure encoded value do not exceed maxLength " + maxLength + " times:" + (counter++));
+ }
value = value.setScale(type.getScale(), BigDecimal.ROUND_HALF_EVEN);
}
byte[] bytes = value.unscaledValue().toByteArray();