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();