----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/25925/#review54303 -----------------------------------------------------------
exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DirPathBuilder.java <https://reviews.apache.org/r/25925/#comment94384> Same as line 206, if the column lable is configurable, then, we could not use the constant 3 here. exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DirPathBuilder.java <https://reviews.apache.org/r/25925/#comment94431> Here, seems the code assumes the RHS would be a string literal. What if RHS is not a string literal, but another reguar column (RexInputRef)? For example, dir0 = regular_column ? The issue is that the visitor would return SchemaPath for either RexInputRef, or string literal. Then, the code would not be able to differentiate these two cases. exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DirPathBuilder.java <https://reviews.apache.org/r/25925/#comment94381> For the constant string "dir", it is configurable via ExecConstants.FILESYSTEM_PARTITION_COLUMN_LABEL. It would be better to get the partition column label through the configuration. Otherwise, this rule will not work, if user chooses a different column label in drill's configuration file. exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillPushPartitionFilterIntoScan.java <https://reviews.apache.org/r/25925/#comment94371> - Jinfeng Ni On Sept. 22, 2014, 9:36 p.m., Aman Sinha wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/25925/ > ----------------------------------------------------------- > > (Updated Sept. 22, 2014, 9:36 p.m.) > > > Review request for drill and Jinfeng Ni. > > > Bugs: DRILL-1386 > https://issues.apache.org/jira/browse/DRILL-1386 > > > Repository: drill-git > > > Description > ------- > > > Suppose we have following directory hierarchy for either Parquet or JSON > format: > orders/2012/Jan...Dec, orders/2013/Jan...Dec, orders/2014/Jan...Dec} > In this patch we attempt to push the following types of filters (More types > of filters will be added in the future): > 1. SELECT * FROM <path>/orders WHERE o_custkey = 5 AND dir0 = '2014' > AND dir1 = 'June' > 2. SELECT * FROM <path>/orders WHERE (dir0 = '2013' AND dir1 = 'June') > OR (dir0 = '2014' AND dir1 = 'June') > For (1) dirPath = <path>/orders/2014/June > For (2) there are 2 dirPaths: {<path>/orders/2013/June, > <path>/orders/2014/June} > > A new rule DrillPushPartitionFilterIntoScan has been added which makes use of > a helper class DirPathBuilder. > There are couple of pending issues that need to be resolved based on testing. > > > > Diffs > ----- > > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/base/AbstractFileGroupScan.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/base/FileGroupScan.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/planner/common/DrillScanRelBase.java > 0934818 > > exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DirPathBuilder.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillPushPartitionFilterIntoScan.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java > dbb85b2 > > exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillScanRel.java > 5a0cc08 > > exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyGroupScan.java > 8efcd2c > > exec/java-exec/src/main/java/org/apache/drill/exec/store/parquet/ParquetGroupScan.java > 86e5224 > exec/java-exec/src/test/java/org/apache/drill/TestExampleQueries.java > c54772f > > Diff: https://reviews.apache.org/r/25925/diff/ > > > Testing > ------- > > New manual tests in TestExampleQueries; these are not automated yet due to > the fact that directory hierarchies have to be created. > > > Thanks, > > Aman Sinha > >
