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

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

Github user paul-rogers commented on a diff in the pull request:

    https://github.com/apache/drill/pull/1125#discussion_r172103839
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java
 ---
    @@ -492,8 +504,12 @@ private void allocateBatch(boolean newSchema) {
         } else {
           container.zeroVectors();
         }
    +
    +    // Allocate memory for the vectors.
    +    // This will iteratively allocate memory for all nested columns 
underneath.
         for (VectorWrapper w : container) {
    -      AllocationHelper.allocateNew(w.getValueVector(), 
Character.MAX_VALUE);
    +      RecordBatchSizer.ColumnSize colSize = 
mergeJoinMemoryManager.getColumnSize(w.getField().getName());
    +      colSize.allocateVector(w.getValueVector(), 
mergeJoinMemoryManager.getOutputRowCount());
    --- End diff --
    
    Nice! Much simpler. Just one nit: might as well get the row count once and 
store it in a local variable to avoid getting the same number repeatedly.


> Allocate memory for value vectors upfront in flatten operator
> -------------------------------------------------------------
>
>                 Key: DRILL-6126
>                 URL: https://issues.apache.org/jira/browse/DRILL-6126
>             Project: Apache Drill
>          Issue Type: Improvement
>            Reporter: Padma Penumarthy
>            Assignee: Padma Penumarthy
>            Priority: Critical
>             Fix For: 1.12.0
>
>
> With recent changes to control batch size for flatten operator, we figure out 
> row count in the output batch based on memory. Since we know how many rows we 
> are going to include in the batch, we can also allocate the memory needed 
> upfront instead of starting with initial value (4096) and doubling, copying 
> every time we need more. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to