[ 
https://issues.apache.org/jira/browse/DRILL-6767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Arina Ielchiieva updated DRILL-6767:
------------------------------------
    Fix Version/s:     (was: 1.17.0)

> Simplify transfer of information from the planner to the operators
> ------------------------------------------------------------------
>
>                 Key: DRILL-6767
>                 URL: https://issues.apache.org/jira/browse/DRILL-6767
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Execution - Relational Operators, Query Planning & 
> Optimization
>    Affects Versions: 1.14.0
>            Reporter: Boaz Ben-Zvi
>            Assignee: Boaz Ben-Zvi
>            Priority: Minor
>
> Currently little specific information known to the planner is passed to the 
> operators. For example, see the `joinType` parameter passed to the Join 
> operators (specifying whether this is a LEFT, RIGHT, INNER of FULL join). 
>  The relevant code passes this information explicitly via the constructors' 
> signature (e.g., see HashJoinPOP, AbstractJoinPop, etc), and uses specific 
> fields for this information, and affects all the test code using it, etc.
>  In the near future many more such "pieces of information" will possibly be 
> added to Drill, including:
>  (1) Is this a Semi (or Anti-Semi) join.
>  (2) `joinControl`
>  (3) `isRowKeyJoin`
>  (4) `isBroadcastJoin`
>  (5) Which join columns are not needed (DRILL-6758)
>  (6) Is this operator positioned between Lateral and UnNest.
>  (7) For Hash-Agg: Which phase (already implemented).
>  (8) For Hash-Agg: Perform COUNT  (DRILL-6836) 
> Each addition of such information would require a significant code change, 
> and add some code clutter.
> *Suggestion*: Instead pass a single object containing all the needed planner 
> information. So the next time another field is added, only that object needs 
> to be changed. (Ideally the whole plan could be passed, and then each 
> operator could poke and pick its needed fields)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to