Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2396#discussion_r197488339
--- Diff:
core/src/main/java/org/apache/carbondata/core/scan/collector/impl/DictionaryBasedResultCollector.java
---
@@ -67,17 +69,38 @@
int noDictionaryColumnIndex;
int complexTypeColumnIndex;
+ int noDictionaryComplexColumnIndex = 0;
+ int complexTypeComplexColumnIndex = 0;
+
boolean isDimensionExists;
+ private int[] surrogateResult;
+ private byte[][] noDictionaryKeys;
+ private byte[][] complexTypeKeyArray;
+
protected Map<Integer, GenericQueryType> comlexDimensionInfoMap;
+ /**
+ * Field of this Map is the parent Column and associated child columns.
+ * Final Projection shuld be a merged list consist of only parents.
+ */
+ public Map<Integer, List<Integer>> mergedComplexDimensionColumns;
+
+ /**
+ * Fields of this Map of Parent Ordinal with the List is the Child
Column Dimension and
+ * the corresponding data buffer of that column.
+ */
+
+ public Map<Integer, Map<CarbonDimension, ByteBuffer>>
mergedComplexDimensionDataMap;
--- End diff --
Move this also to method and create only once and reuse the same. If it is
possible please use multidimensional array
---