Github user ravipesala commented on a diff in the pull request:

    https://github.com/apache/carbondata/pull/2819#discussion_r226863615
  
    --- Diff: 
core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/LocalDictDimensionDataChunkStore.java
 ---
    @@ -49,6 +51,29 @@ public void putArray(int[] invertedIndex, int[] 
invertedIndexReverse, byte[] dat
         this.dimensionDataChunkStore.putArray(invertedIndex, 
invertedIndexReverse, data);
       }
     
    +  @Override
    +  public void fillVector(int[] invertedIndex, int[] invertedIndexReverse, 
byte[] data,
    +      ColumnVectorInfo vectorInfo) {
    +    int columnValueSize = dimensionDataChunkStore.getColumnValueSize();
    +    int rowsNum = data.length / columnValueSize;
    +    CarbonColumnVector vector = vectorInfo.vector;
    +    if (!dictionary.isDictionaryUsed()) {
    +      vector.setDictionary(dictionary);
    +      dictionary.setDictionaryUsed();
    +    }
    +    for (int i = 0; i < rowsNum; i++) {
    +      int surrogate = CarbonUtil.getSurrogateInternal(data, i * 
columnValueSize, columnValueSize);
    +      if (surrogate == 
CarbonCommonConstants.MEMBER_DEFAULT_VAL_SURROGATE_KEY) {
    +        vector.putNull(i);
    +        vector.getDictionaryVector().putNull(i);
    +      } else {
    +        vector.putNotNull(i);
    +        vector.getDictionaryVector().putInt(i, surrogate);
    --- End diff --
    
    it is as per old code, will check feasible


---

Reply via email to