Github user ravipesala commented on a diff in the pull request: https://github.com/apache/carbondata/pull/1471#discussion_r151831374 --- Diff: core/src/main/java/org/apache/carbondata/core/datamap/TableDataMap.java --- @@ -75,7 +79,12 @@ public TableDataMap(AbsoluteTableIdentifier identifier, String dataMapName, SegmentProperties segmentProperties; for (String segmentId : segmentIds) { List<Blocklet> pruneBlocklets = new ArrayList<>(); - List<DataMap> dataMaps = dataMapFactory.getDataMaps(segmentId); + List<DataMap> dataMaps; + if (blockletDetailsFetcher instanceof DataMapFactory && filterExp == null) { + dataMaps = ((DataMapFactory)blockletDetailsFetcher).getDataMaps(segmentId); --- End diff -- I have added here but placing generic assignment all places is not possible because we are deriving two types of datamaps through generic .
---