Specify target traits based on converted RelNode's trait, in stead of empty 
trait sets, when call planner to get the logical plan.

Add back RemoveSortRule to Logical rulesets.


Project: http://git-wip-us.apache.org/repos/asf/incubator-drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-drill/commit/56411a57
Tree: http://git-wip-us.apache.org/repos/asf/incubator-drill/tree/56411a57
Diff: http://git-wip-us.apache.org/repos/asf/incubator-drill/diff/56411a57

Branch: refs/heads/master
Commit: 56411a570a3516e4e10942c63f6cf00866e0ab05
Parents: 6328765
Author: Jinfeng Ni <[email protected]>
Authored: Fri Apr 4 11:56:44 2014 -0700
Committer: Jacques Nadeau <[email protected]>
Committed: Sat Apr 19 18:07:12 2014 -0700

----------------------------------------------------------------------
 .../org/apache/drill/exec/planner/logical/DrillRuleSets.java     | 2 +-
 .../java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java   | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/56411a57/exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
----------------------------------------------------------------------
diff --git 
a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
 
b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
index e249af3..5bd8581 100644
--- 
a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
+++ 
b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
@@ -69,7 +69,7 @@ public class DrillRuleSets {
 //      UnionToDistinctRule.INSTANCE,
 //      RemoveTrivialProjectRule.INSTANCE,
 //      RemoveTrivialCalcRule.INSTANCE,
-//      RemoveSortRule.INSTANCE,
+      RemoveSortRule.INSTANCE,
 
 //      TableAccessRule.INSTANCE, //
       //MergeProjectRule.INSTANCE, //

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/56411a57/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
----------------------------------------------------------------------
diff --git 
a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
 
b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
index c540066..e796f12 100644
--- 
a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
+++ 
b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
@@ -118,7 +118,7 @@ public class DrillSqlWorker {
     
     System.out.println(RelOptUtil.toString(relNode, 
SqlExplainLevel.ALL_ATTRIBUTES));
     
-    RelNode convertedRelNode = planner.transform(LOGICAL_RULES, 
planner.getEmptyTraitSet().plus(DrillRel.DRILL_LOGICAL), relNode);
+    RelNode convertedRelNode = planner.transform(LOGICAL_RULES, 
relNode.getTraitSet().plus(DrillRel.DRILL_LOGICAL), relNode);
     if(convertedRelNode instanceof DrillStoreRel){
       throw new UnsupportedOperationException();
     }else{
@@ -135,7 +135,7 @@ public class DrillSqlWorker {
   public LogicalPlan getLogicalPlan(String sql) throws SqlParseException, 
ValidationException, RelConversionException{
     RelResult result = getRel(sql);
 
-    RelNode convertedRelNode = planner.transform(LOGICAL_RULES, 
planner.getEmptyTraitSet().plus(DrillRel.DRILL_LOGICAL), result.node);
+    RelNode convertedRelNode = planner.transform(LOGICAL_RULES, 
result.node.getTraitSet().plus(DrillRel.DRILL_LOGICAL), result.node);
     if(convertedRelNode instanceof DrillStoreRel){
       throw new UnsupportedOperationException();
     }else{

Reply via email to