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

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

Github user ilooner commented on a diff in the pull request:

    https://github.com/apache/drill/pull/1057#discussion_r157894423
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/svremover/CopierTemplate2.java
 ---
    @@ -53,17 +51,32 @@ public int copyRecords(int index, int recordCount) 
throws SchemaChangeException
           }
         }
     
    -    int outgoingPosition = 0;
    +    return insertRecords(0, index, recordCount);
    +  }
    +
    +  @Override
    +  public int appendRecord(int index) throws SchemaChangeException {
    +    return appendRecords(index, 1);
    +  }
    +
    +  @Override
    +  public int appendRecords(int index, int recordCount) throws 
SchemaChangeException {
    +    return insertRecords(outgoing.getRecordCount(), index, recordCount);
    +  }
    +
    +  private int insertRecords(int outgoingPosition, int index, int 
recordCount) throws SchemaChangeException {
    +    final int endIndex = index + recordCount;
     
    -    for(int svIndex = index; svIndex < index + recordCount; svIndex++, 
outgoingPosition++){
    +    for(int svIndex = index; svIndex < endIndex; svIndex++, 
outgoingPosition++){
           doEval(sv2.getIndex(svIndex), outgoingPosition);
         }
    +
    +    outgoing.setRecordCount(outgoingPosition);
         return outgoingPosition;
       }
     
    -  public abstract void doSetup(@Named("context") FragmentContext context,
    -                               @Named("incoming") RecordBatch incoming,
    -                               @Named("outgoing") RecordBatch outgoing)
    +  public abstract void doSetup(@Named("incoming") RecordBatch incoming,
    +                               @Named("outgoing") VectorContainer outgoing)
    --- End diff --
    
    The copiers are only used in the SVRemover and TopN operator. I have 
replaced the code generated copiers in both now to use the GenericCopiers.


> Allow Copier to Copy a Record and Append to the End of an Outgoing Batch
> ------------------------------------------------------------------------
>
>                 Key: DRILL-5993
>                 URL: https://issues.apache.org/jira/browse/DRILL-5993
>             Project: Apache Drill
>          Issue Type: New Feature
>            Reporter: Timothy Farkas
>            Assignee: Timothy Farkas
>
> Currently the copier can only copy record from an incoming batch to the 
> beginning of an outgoing batch. We need to be able to copy a record and 
> append it to the end of the outgoing batch.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to