Author: daijy
Date: Wed Aug 25 17:38:57 2010
New Revision: 989244

URL: http://svn.apache.org/viewvc?rev=989244&view=rev
Log:
PIG-1497: Mandatory rule PartitionFilterOptimizer (xuefuz via daijy)

Modified:
    hadoop/pig/trunk/CHANGES.txt
    
hadoop/pig/trunk/src/org/apache/pig/newplan/logical/optimizer/LogicalPlanOptimizer.java

Modified: hadoop/pig/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/pig/trunk/CHANGES.txt?rev=989244&r1=989243&r2=989244&view=diff
==============================================================================
--- hadoop/pig/trunk/CHANGES.txt (original)
+++ hadoop/pig/trunk/CHANGES.txt Wed Aug 25 17:38:57 2010
@@ -26,6 +26,8 @@ PIG-1249: Safe-guards against misconfigu
 
 IMPROVEMENTS
 
+PIG-1497: Mandatory rule PartitionFilterOptimizer (xuefuz via daijy)
+
 PIG-1514: Migrate logical optimization rule: OpLimitOptimizer (xuefuz via 
daijy)
 
 PIG-1551: Improve dynamic invokers to deal with no-arg methods and array 
parameters (dvryaboy)

Modified: 
hadoop/pig/trunk/src/org/apache/pig/newplan/logical/optimizer/LogicalPlanOptimizer.java
URL: 
http://svn.apache.org/viewvc/hadoop/pig/trunk/src/org/apache/pig/newplan/logical/optimizer/LogicalPlanOptimizer.java?rev=989244&r1=989243&r2=989244&view=diff
==============================================================================
--- 
hadoop/pig/trunk/src/org/apache/pig/newplan/logical/optimizer/LogicalPlanOptimizer.java
 (original)
+++ 
hadoop/pig/trunk/src/org/apache/pig/newplan/logical/optimizer/LogicalPlanOptimizer.java
 Wed Aug 25 17:38:57 2010
@@ -72,8 +72,17 @@ public class LogicalPlanOptimizer extend
         if (!s.isEmpty())
             ls.add(s);
         
+        // Partition filter set
+        // This set of rules push partition filter to LoadFunc
+        s = new HashSet<Rule>();
+        // Optimize partition filter
+        r = new PartitionFilterPushDown("PartitionFilterPushDown");
+        checkAndAddRule(s, r);
+        if (!s.isEmpty())
+            ls.add(s);
+
         // Limit Set
-        // This set of rules optimize limit
+        // This set of rules push up limit
         s = new HashSet<Rule>();
         // Optimize limit
         r = new OptimizeLimit("OptimizeLimit");


Reply via email to