KYLIN-3150 PercentileCounter maxlength is too small
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/91ed19bc Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/91ed19bc Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/91ed19bc Branch: refs/heads/sync Commit: 91ed19bc4bf03979d2765d588a5232c76f953d00 Parents: ca8428d Author: yiming.xu <100650...@qq.com> Authored: Tue Jan 2 21:02:47 2018 +0800 Committer: Li Yang <liy...@apache.org> Committed: Fri Jan 26 17:30:06 2018 +0800 ---------------------------------------------------------------------- .../kylin/measure/percentile/PercentileCounter.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/91ed19bc/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileCounter.java ---------------------------------------------------------------------- diff --git a/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileCounter.java b/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileCounter.java index 2b5903c..33433dc 100644 --- a/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileCounter.java +++ b/core-metadata/src/main/java/org/apache/kylin/measure/percentile/PercentileCounter.java @@ -106,8 +106,16 @@ public class PercentileCounter implements Serializable { } public int maxLength() { - // 10KB for max length - return 10 * 1024; + switch ((int) compression) { + case 100: + return 16 * 1024; + case 1000: + return 128 * 1024; + case 10000: + return 1024 * 1024; + default: + return 16 * 1024; + } } public int peekLength(ByteBuffer in) {