Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/incubator-carbondata/pull/584#discussion_r102647332 --- Diff: core/src/main/java/org/apache/carbondata/core/scan/filter/executer/RowLevelFilterExecuterImpl.java --- @@ -343,24 +339,39 @@ private int readSurrogatesFromColumnGroupBlock(BlocksChunkHolder blockChunkHolde return 0; } - /** - * Reading the blocks for no dictionary data, in no dictionary case - * directly the filter data will read, no need to scan the dictionary - * or read the dictionary value. - * - * @param dimensionColumnDataChunk - * @param index - * @return - */ - private String readMemberBasedOnNoDictionaryVal( - VariableLengthDimensionDataChunk dimensionColumnDataChunk, int index) { - return new String(dimensionColumnDataChunk.getChunkData(index), - Charset.forName(CarbonCommonConstants.DEFAULT_CHARSET)); - } @Override public BitSet isScanRequired(byte[][] blockMaxValue, byte[][] blockMinValue) { BitSet bitSet = new BitSet(1); bitSet.set(0); return bitSet; } + + @Override public void readBlocks(BlocksChunkHolder blockChunkHolder) throws IOException { + for (int i = 0; i < dimColEvaluatorInfoList.size(); i++) { + DimColumnResolvedFilterInfo dimColumnEvaluatorInfo = dimColEvaluatorInfoList.get(i); + if (dimColumnEvaluatorInfo.getDimension().getDataType() != DataType.ARRAY + && dimColumnEvaluatorInfo.getDimension().getDataType() != DataType.STRUCT) { + if (null == blockChunkHolder.getDimensionRawDataChunk()[blocksIndex[i]]) { + blockChunkHolder.getDimensionRawDataChunk()[blocksIndex[i]] = + blockChunkHolder.getDataBlock() + .getDimensionChunk(blockChunkHolder.getFileReader(), blocksIndex[i]); + } + } else { + GenericQueryType complexType = complexDimensionInfoMap.get(blocksIndex[i]); + complexType.fillRequiredBlockData(blockChunkHolder); + } + } + + // CHECKSTYLE:OFF Approval No:Approval-V1R2C10_001 --- End diff -- ok --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/incubator-carbondata/pull/584#discussion_r102647488 --- Diff: core/src/main/java/org/apache/carbondata/core/scan/filter/executer/RestructureFilterExecuterImpl.java --- @@ -35,18 +37,18 @@ public RestructureFilterExecuterImpl(DimColumnResolvedFilterInfo dimColumnResolv dimColumnResolvedFilterInfo.getDimension(), dimColumnExecuterInfo); } - @Override public BitSet applyFilter(BlocksChunkHolder blocksChunkHolder) { - BitSet bitSet = new BitSet(blocksChunkHolder.getDataBlock().nodeSize()); - byte[][] filterValues = dimColumnExecuterInfo.getFilterKeys(); - if (null != filterValues && filterValues.length > 0) { - bitSet.set(0, blocksChunkHolder.getDataBlock().nodeSize()); - } - return bitSet; + @Override public BitSetGroup applyFilter(BlocksChunkHolder blocksChunkHolder) { + // TODO find out what is this for? + return new BitSetGroup(0); } @Override public BitSet isScanRequired(byte[][] blockMaxValue, byte[][] blockMinValue) { BitSet bitSet = new BitSet(1); bitSet.set(0); return bitSet; } + + @Override public void readBlocks(BlocksChunkHolder blockChunkHolder) throws IOException { + // TODO --- End diff -- This class is not required, removed it --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/incubator-carbondata/pull/584#discussion_r102647560 --- Diff: core/src/main/java/org/apache/carbondata/core/scan/filter/executer/RowLevelRangeLessThanEqualFilterExecuterImpl.java --- @@ -53,11 +55,19 @@ public RowLevelRangeLessThanEqualFilterExecuterImpl( BitSet bitSet = new BitSet(1); byte[][] filterValues = this.filterRangeValues; int columnIndex = this.dimColEvaluatorInfoList.get(0).getColumnIndex(); + boolean isScanRequired = isScanRequired(blockMinValue[columnIndex], filterValues); + if (isScanRequired) { + bitSet.set(0); + } + return bitSet; + --- End diff -- ok --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/incubator-carbondata/pull/584#discussion_r102647620 --- Diff: core/src/main/java/org/apache/carbondata/core/scan/filter/executer/RowLevelRangeLessThanFiterExecuterImpl.java --- @@ -53,11 +55,19 @@ public RowLevelRangeLessThanFiterExecuterImpl( BitSet bitSet = new BitSet(1); byte[][] filterValues = this.filterRangeValues; int columnIndex = this.dimColEvaluatorInfoList.get(0).getColumnIndex(); + boolean isScanRequired = isScanRequired(blockMinValue[columnIndex], filterValues); + if (isScanRequired) { + bitSet.set(0); + } + return bitSet; + --- End diff -- ok --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/incubator-carbondata/pull/584 Build Success with Spark 1.6.2, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder/937/ --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user jackylk commented on the issue:
https://github.com/apache/incubator-carbondata/pull/584 LGTM --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
In reply to this post by qiuchenjian-2
Github user asfgit closed the pull request at:
https://github.com/apache/incubator-carbondata/pull/584 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at [hidden email] or file a JIRA ticket with INFRA. --- |
Free forum by Nabble | Edit this page |