You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@carbondata.apache.org by ra...@apache.org on 2016/08/01 10:05:22 UTC
[24/47] incubator-carbondata git commit: [CARBONDATA-99][Bug] For
complex type filter queries issue, like and not like are failing (#870)
[CARBONDATA-99][Bug] For complex type filter queries issue, like and not like are failing (#870)
For complex type filter queries if query contains filter expression rather than BinaryExpression the system was not able to get the dimensions which are involved
Project: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/commit/82b74070
Tree: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/tree/82b74070
Diff: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/diff/82b74070
Branch: refs/heads/master
Commit: 82b74070b090e627c333f1a574111c33e281725e
Parents: f6e9fbc
Author: sujith71955 <su...@gmail.com>
Authored: Mon Jul 25 23:24:00 2016 +0530
Committer: Venkata Ramana G <g....@gmail.com>
Committed: Mon Jul 25 23:24:00 2016 +0530
----------------------------------------------------------------------
.../carbondata/query/carbon/executor/util/QueryUtil.java | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/82b74070/core/src/main/java/org/carbondata/query/carbon/executor/util/QueryUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/carbondata/query/carbon/executor/util/QueryUtil.java b/core/src/main/java/org/carbondata/query/carbon/executor/util/QueryUtil.java
index b1de455..d36238e 100644
--- a/core/src/main/java/org/carbondata/query/carbon/executor/util/QueryUtil.java
+++ b/core/src/main/java/org/carbondata/query/carbon/executor/util/QueryUtil.java
@@ -70,7 +70,6 @@ import org.carbondata.query.complex.querytypes.PrimitiveQueryType;
import org.carbondata.query.complex.querytypes.StructQueryType;
import org.carbondata.query.expression.ColumnExpression;
import org.carbondata.query.expression.Expression;
-import org.carbondata.query.expression.logical.BinaryLogicalExpression;
import org.carbondata.query.filter.resolver.FilterResolverIntf;
import org.carbondata.query.filter.resolver.resolverinfo.DimColumnResolvedFilterInfo;
@@ -1105,12 +1104,7 @@ public class QueryUtil {
}
List<ColumnExpression> dimensionResolvedInfos = new ArrayList<ColumnExpression>();
Expression filterExpression = filterResolverTree.getFilterExpression();
- if (filterExpression instanceof BinaryLogicalExpression) {
- BinaryLogicalExpression logicalExpression = (BinaryLogicalExpression) filterExpression;
- dimensionResolvedInfos.addAll(logicalExpression.getColumnList());
- } else {
- addColumnDimensions(filterExpression, filterDimensions);
- }
+ addColumnDimensions(filterExpression, filterDimensions);
for (ColumnExpression info : dimensionResolvedInfos) {
if (info.isDimension() && info.getDimension().getNumberOfChild() > 0) {
filterDimensions.add(info.getDimension());
@@ -1130,7 +1124,8 @@ public class QueryUtil {
*/
private static void addColumnDimensions(Expression expression,
Set<CarbonDimension> filterDimensions) {
- if (null != expression && expression instanceof ColumnExpression) {
+ if (null != expression && expression instanceof ColumnExpression
+ && ((ColumnExpression) expression).isDimension()) {
filterDimensions.add(((ColumnExpression) expression).getDimension());
return;
}