Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2204#discussion_r183233432
--- 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 --
ok, added
---