Github user jackylk commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2204#discussion_r183230236 --- Diff: hadoop/src/main/java/org/apache/carbondata/hadoop/api/CarbonInputFormat.java --- @@ -417,6 +421,38 @@ protected Expression getFilterPredicates(Configuration configuration) { return resultFilterredBlocks; } + private List<ExtendedBlocklet> executeDataMapJob(CarbonTable carbonTable, + FilterResolverIntf resolver, List<Segment> segmentIds, DataMapExprWrapper dataMapExprWrapper, + DataMapJob dataMapJob, List<PartitionSpec> partitionsToPrune) throws IOException { + DistributableDataMapFormat datamapDstr = + new DistributableDataMapFormat(carbonTable, dataMapExprWrapper, segmentIds, + partitionsToPrune, BlockletDataMapFactory.class.getName()); + List<ExtendedBlocklet> prunedBlocklets = dataMapJob.execute(datamapDstr, resolver); + // Apply expression on the blocklets. + prunedBlocklets = dataMapExprWrapper.pruneBlocklets(prunedBlocklets); + return prunedBlocklets; + } + + private void updateSegments(List<Segment> segments, List<ExtendedBlocklet> prunedBlocklets) { --- End diff -- please provide comment for this function, it is not easy to understand what it does
---