/** * Selects the blocks based on col max and min value. * * @param listOfDataBlocksToScan * @param dataRefNode */ private void addBlockBasedOnMinMaxValue(FilterExecuter filterExecuter, List<DataRefNode> listOfDataBlocksToScan, DataRefNode dataRefNode, boolean[] isMinMaxSet) { if (null == dataRefNode.getColumnsMinValue() || null == dataRefNode.getColumnsMaxValue()) { listOfDataBlocksToScan.add(dataRefNode); return; } BitSet bitSet = filterExecuter .isScanRequired(dataRefNode.getColumnsMaxValue(), dataRefNode.getColumnsMinValue(), isMinMaxSet); if (!bitSet.isEmpty()) { listOfDataBlocksToScan.add(dataRefNode); } }
|| null == dataBlock.getColumnsMinValue()) { return true; .isFilterValuesPresentInBlockOrBlocklet( dataBlock.getColumnsMaxValue(), dataBlock.getColumnsMinValue(), blockletId, dataBlock.minMaxFlagArray()); } else { bitSet = this.filterExecuter .isScanRequired(dataBlock.getColumnsMaxValue(), dataBlock.getColumnsMinValue(), dataBlock.minMaxFlagArray());