[ 
https://issues.apache.org/jira/browse/DRILL-7503?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17007236#comment-17007236
 ] 

ASF GitHub Bot commented on DRILL-7503:
---------------------------------------

paul-rogers commented on issue #1944: DRILL-7503: Refactor the project operator
URL: https://github.com/apache/drill/pull/1944#issuecomment-570465320
 
 
   @ihuzenko, thanks for your thorough review, as usual. Here is my general 
philosophy on refactoring: do it in bite-size chunks. The first step here was 
simply to break code gen out of the operator itself. By leaving the bulk of the 
code unchanged, one can do a review by diffing the old and new files (not in 
GitHub, sadly), and see that blocks of code are identical, they have just been 
moved; in some cases from one huge function to smaller functions. Then, once 
we're satisfied that this simple refactoring works, we can think about the next 
step.
   
   If you agree with the step-by-step approach, then perhaps we can commit this 
first step to put us in position to make subsequent changes.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Refactor project operator
> -------------------------
>
>                 Key: DRILL-7503
>                 URL: https://issues.apache.org/jira/browse/DRILL-7503
>             Project: Apache Drill
>          Issue Type: Improvement
>    Affects Versions: 1.17.0
>            Reporter: Paul Rogers
>            Assignee: Paul Rogers
>            Priority: Minor
>             Fix For: 1.18.0
>
>
> Work on another ticket revealed that the Project operator ("record batch") 
> has grown quite complex. The setup phase lives in the operator as one huge 
> function. The function combines the "logical" tasks of working out the 
> projection expressions and types, the code gen for those expressions, and the 
> physical setup of vectors.
> The refactoring breaks up the logic so that it is easier to focus on the 
> specific bits of interest.



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

Reply via email to