Indhumathi27 commented on a change in pull request #3778: URL: https://github.com/apache/carbondata/pull/3778#discussion_r471366000
########## File path: core/src/main/java/org/apache/carbondata/core/scan/expression/conditional/ImplicitExpression.java ########## @@ -41,39 +44,62 @@ * map that contains the mapping of block id to the valid blocklets in that block which contain * the data as per the applied filter */ - private Map<String, Set<Integer>> blockIdToBlockletIdMapping; + private final Map<String, Set<String>> blockIdToBlockletIdMapping; + + /** + * checks if implicit filter exceeds complex filter threshold + */ + private boolean isThresholdReached; public ImplicitExpression(List<Expression> implicitFilterList) { + final Logger LOGGER = LogServiceFactory.getLogService(getClass().getName()); // initialize map with half the size of filter list as one block id can contain // multiple blocklets blockIdToBlockletIdMapping = new HashMap<>(implicitFilterList.size() / 2); for (Expression value : implicitFilterList) { String blockletPath = ((LiteralExpression) value).getLiteralExpValue().toString(); addBlockEntry(blockletPath); } + int complexFilterThreshold = CarbonProperties.getInstance().getComplexFilterThresholdForSI(); + isThresholdReached = implicitFilterList.size() > complexFilterThreshold; + if (isThresholdReached) { + LOGGER.info("Implicit Filter Size: " + implicitFilterList.size() + ", Threshold is: " + + complexFilterThreshold); + } } - public ImplicitExpression(Map<String, Set<Integer>> blockIdToBlockletIdMapping) { + public ImplicitExpression(Map<String, Set<String>> blockIdToBlockletIdMapping) { this.blockIdToBlockletIdMapping = blockIdToBlockletIdMapping; } private void addBlockEntry(String blockletPath) { Review comment: handled ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org