drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jinfeng Ni (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DRILL-685) Use proper trait in Drill Logical rule. Propagate trait from child to parent whenever possible.
Date Sun, 11 May 2014 00:17:16 GMT
Jinfeng Ni created DRILL-685:
--------------------------------

             Summary: Use proper trait in Drill Logical rule. Propagate trait from child to
parent whenever possible. 
                 Key: DRILL-685
                 URL: https://issues.apache.org/jira/browse/DRILL-685
             Project: Apache Drill
          Issue Type: Improvement
            Reporter: Jinfeng Ni


There are two issues in several Drill Logical Rule.

1.  When we call convert() to convert the child node from 'None' to 'Logical', we pass in
the parent's trait.  This may not be right.

For instance,

Filter
  \
 Sort

In DrillFilterRule, we will pass filter's trait when convert sort. Since filter originally
has empty RelCollation, this convert will produce a trivial sort, thus may get a logical plan
with incorrect order. 

2.  The logical rule does not propagate the trait from child to parent, whenever possible.
For instance, for the prior example,  because filter's child is sort, after sort is converted
into logical, the filter also has the same RelCollation as its child. We should propagate
such RelCollation to Filter.





--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message