You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2017/10/17 14:31:49 UTC

kylin git commit: KYLIN-2944 HLLCSerializer, RawSerializer, PercentileSerializer returns shared object in serialize

Repository: kylin
Updated Branches:
  refs/heads/2.2.x 2c9007796 -> d25ac5d00


KYLIN-2944 HLLCSerializer, RawSerializer, PercentileSerializer returns shared object in serialize


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

Branch: refs/heads/2.2.x
Commit: d25ac5d00bc70f5e9d62f7ebcc6dd547ce0d846d
Parents: 2c90077
Author: shaofengshi <sh...@apache.org>
Authored: Tue Oct 17 22:30:42 2017 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Tue Oct 17 22:30:42 2017 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java   | 2 +-
 .../org/apache/kylin/measure/percentile/PercentileSerializer.java | 2 +-
 .../src/main/java/org/apache/kylin/measure/raw/RawSerializer.java | 3 +--
 3 files changed, 3 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/d25ac5d0/core-metadata/src/main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java b/core-metadata/src/main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java
index df0cfaf..ddf8281 100644
--- a/core-metadata/src/main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java
+++ b/core-metadata/src/main/java/org/apache/kylin/measure/hllc/HLLCSerializer.java
@@ -56,7 +56,7 @@ public class HLLCSerializer extends DataTypeSerializer<HLLCounter> {
 
     @Override
     public HLLCounter deserialize(ByteBuffer in) {
-        HLLCounter hllc = current();
+        HLLCounter hllc = new HLLCounter(precision);
         try {
             hllc.readRegisters(in);
         } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/kylin/blob/d25ac5d0/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileSerializer.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileSerializer.java b/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileSerializer.java
index d7e4204..35230a2 100644
--- a/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileSerializer.java
+++ b/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileSerializer.java
@@ -68,7 +68,7 @@ public class PercentileSerializer extends DataTypeSerializer<PercentileCounter>
 
     @Override
     public PercentileCounter deserialize(ByteBuffer in) {
-        PercentileCounter counter = current();
+        PercentileCounter counter = new PercentileCounter(compression);
         counter.readRegisters(in);
         return counter;
     }

http://git-wip-us.apache.org/repos/asf/kylin/blob/d25ac5d0/core-metadata/src/main/java/org/apache/kylin/measure/raw/RawSerializer.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/measure/raw/RawSerializer.java b/core-metadata/src/main/java/org/apache/kylin/measure/raw/RawSerializer.java
index 68a0273..ea3f376 100644
--- a/core-metadata/src/main/java/org/apache/kylin/measure/raw/RawSerializer.java
+++ b/core-metadata/src/main/java/org/apache/kylin/measure/raw/RawSerializer.java
@@ -90,8 +90,7 @@ public class RawSerializer extends DataTypeSerializer<List<ByteArray>> {
 
     @Override
     public List<ByteArray> deserialize(ByteBuffer in) {
-        List<ByteArray> values = current();
-        values.clear();
+        List<ByteArray> values = new ArrayList<>();
         int size = BytesUtil.readVInt(in);
         if (size >= 0) {
             for (int i = 0; i < size; i++) {