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

    https://github.com/apache/carbondata/pull/2550#discussion_r204981714
  
    --- Diff: 
core/src/main/java/org/apache/carbondata/core/scan/executor/impl/AbstractQueryExecutor.java
 ---
    @@ -239,36 +249,34 @@ private void readAndFillBlockletInfo(Map<String, 
DataFileFooter> filePathToFileF
           // fill the info only for given blockletId in detailInfo
           BlockletInfo blockletInfo = 
blockletList.get(blockletDetailInfo.getBlockletId());
           fillBlockletInfoToTableBlock(tableBlockInfos, blockInfo, 
blockletDetailInfo, fileFooter,
    -          blockletInfo, blockletDetailInfo.getBlockletId());
    +          blockletInfo, blockletDetailInfo.getBlockletId(), 
segmentProperties);
         } else {
           short count = 0;
           for (BlockletInfo blockletInfo : blockletList) {
             fillBlockletInfoToTableBlock(tableBlockInfos, blockInfo, 
blockletDetailInfo, fileFooter,
    -            blockletInfo, count);
    +            blockletInfo, count, segmentProperties);
             count++;
           }
         }
       }
     
       private void fillBlockletInfoToTableBlock(List<TableBlockInfo> 
tableBlockInfos,
           TableBlockInfo blockInfo, BlockletDetailInfo blockletDetailInfo, 
DataFileFooter fileFooter,
    -      BlockletInfo blockletInfo, short blockletId) {
    +      BlockletInfo blockletInfo, short blockletId, SegmentProperties 
segmentProperties) {
         TableBlockInfo info = blockInfo.copy();
         BlockletDetailInfo detailInfo = info.getDetailInfo();
         // set column schema details
         detailInfo.setColumnSchemas(fileFooter.getColumnInTable());
         detailInfo.setRowCount(blockletInfo.getNumberOfRows());
    -    byte[][] maxValues = 
blockletInfo.getBlockletIndex().getMinMaxIndex().getMaxValues();
    -    byte[][] minValues = 
blockletInfo.getBlockletIndex().getMinMaxIndex().getMinValues();
    +    byte[][] minValues = 
BlockletDataMapUtil.updateMinValues(segmentProperties,
    +        blockletInfo.getBlockletIndex().getMinMaxIndex().getMinValues());
    +    byte[][] maxValues = 
BlockletDataMapUtil.updateMaxValues(segmentProperties,
    +        blockletInfo.getBlockletIndex().getMinMaxIndex().getMaxValues());
    --- End diff --
    
    Move this code inside isLegacyStore check


---

Reply via email to