-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/28207/
-----------------------------------------------------------

(Updated Nov. 24, 2014, 6:59 p.m.)


Review request for drill and Hanifi Gunes.


Changes
-------

Uploaded new diffs that have the following additional changes: 
1. Enhanced the DrillPushFilterPastProject rule to traverse the filter 
expressions to check for referenced ITEM expressions from the underlying 
Project. 
2. Modified couple of unit tests to iterate over all file system data sources 
(this addresses review comments). 

All unit, functional and the expected tpch-100 tests are passing.  Also 
re-verified with the failing mondrian query in drill-1707. 


Repository: drill-git


Description
-------

DRILL-1707 is caused by a looping in the planner between PushProjectPastFilter 
and PushFilterPastProject rules.  This started happening after the 
DrillPushProjectPastJoin rule was added because with that rule we are pushing 
more expressions and that further triggers the other 2 rules. 
In this fix, we don't push Filter past Project if the Project is producing ITEM 
expression (this is done as part of a new rule). Currently, the fix does not 
check if the Filter conditions are referencing the ITEM expression and does not 
split the filter condition into components that can be pushed. That is marked 
as a TODO.  

As part of this patch, I enabled a few tests in TestProjectPushDown and 
TestExampleQueries that were marked Ignored earlier due to the looping issue. 


Diffs (updated)
-----

  
exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillPushFilterPastProjectRule.java
 PRE-CREATION 
  
exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
 f4481cb 
  exec/java-exec/src/test/java/org/apache/drill/TestExampleQueries.java bb411e7 
  exec/java-exec/src/test/java/org/apache/drill/TestProjectPushDown.java 
6e998a3 

Diff: https://reviews.apache.org/r/28207/diff/


Testing
-------

unit tests in TestProjectPushDown, TestExampleQueries and the failing mondrian 
query in DRILL-1707


Thanks,

Aman Sinha

Reply via email to