From d9428d27fa1de540fbe35a519a0d8a27bee896fa Mon Sep 17 00:00:00 2001 From: gaodayue Date: Tue, 28 Aug 2018 18:45:57 +0800 Subject: [PATCH] RowBasedKeySerde should use empty dictionary in constructor --- .../query/groupby/epinephelinae/RowBasedGrouperHelper.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/processing/src/main/java/io/druid/query/groupby/epinephelinae/RowBasedGrouperHelper.java b/processing/src/main/java/io/druid/query/groupby/epinephelinae/RowBasedGrouperHelper.java index 2ae1dde0e97f..3acd2fd705ae 100644 --- a/processing/src/main/java/io/druid/query/groupby/epinephelinae/RowBasedGrouperHelper.java +++ b/processing/src/main/java/io/druid/query/groupby/epinephelinae/RowBasedGrouperHelper.java @@ -912,7 +912,6 @@ static long estimateStringKeySize(@Nullable String key) private static class RowBasedKeySerde implements Grouper.KeySerde { - private static final int DICTIONARY_INITIAL_CAPACITY = 10000; private static final int UNKNOWN_DICTIONARY_ID = -1; private final boolean includeTimestamp; @@ -958,9 +957,9 @@ private static class RowBasedKeySerde implements Grouper.KeySerde(DICTIONARY_INITIAL_CAPACITY) : dictionary; + this.dictionary = enableRuntimeDictionaryGeneration ? new ArrayList<>() : dictionary; this.reverseDictionary = enableRuntimeDictionaryGeneration ? - new Object2IntOpenHashMap<>(DICTIONARY_INITIAL_CAPACITY) : + new Object2IntOpenHashMap<>() : new Object2IntOpenHashMap<>(dictionary.size()); this.reverseDictionary.defaultReturnValue(UNKNOWN_DICTIONARY_ID); this.maxDictionarySize = maxDictionarySize;