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

    https://github.com/apache/carbondata/pull/2978#discussion_r240553152
  
    --- Diff: 
core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/AbstractNonDictionaryVectorFiller.java
 ---
    @@ -83,20 +84,37 @@ public StringVectorFiller(int numberOfRows, int 
actualDataLength) {
       @Override
       public void fillVector(byte[] data, CarbonColumnVector vector) {
         // start position will be used to store the current data position
    +    boolean invertedIndex = vector instanceof 
ColumnarVectorWrapperDirectWithInvertedIndex
    +        || vector instanceof SequentialFill;
    +
         int localOffset = 0;
         ByteUtil.UnsafeComparer comparator = ByteUtil.UnsafeComparer.INSTANCE;
    -    for (int i = 0; i < numberOfRows; i++) {
    -      int length = (((data[localOffset] & 0xFF) << 8) | (data[localOffset 
+ 1] & 0xFF));
    -      localOffset += 2;
    -      if 
(comparator.equals(CarbonCommonConstants.MEMBER_DEFAULT_VAL_ARRAY, 0,
    -          CarbonCommonConstants.MEMBER_DEFAULT_VAL_ARRAY.length, data, 
localOffset, length)) {
    -        vector.putNull(i);
    -      } else {
    -        vector.putArray(i, localOffset, length);
    +    if (invertedIndex) {
    --- End diff --
    
    ok


---

Reply via email to