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

    https://github.com/apache/drill/pull/926#discussion_r137658224
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/store/RecordReader.java ---
    @@ -26,6 +26,9 @@
     import org.apache.drill.exec.record.MaterializedField;
     import org.apache.drill.exec.vector.ValueVector;
     
    +import com.fasterxml.jackson.annotation.JsonTypeInfo;
    +
    +@JsonTypeInfo(use=JsonTypeInfo.Id.NAME, 
include=JsonTypeInfo.As.WRAPPER_OBJECT, property="type")
    --- End diff --
    
    AFAIK, it will not impact implementations of the `RecordReader` interface. 
The annotation affects Jackson type inference when a physical operator has a 
reference to a `RecordReader` and Jackson needs to construct a concrete 
implementation of the `RecordReader`. Such information needs to be passed in 
any case and the annotation specifies JSON syntax used to pass the type 
information. To avoid the concern I'll move the annotation to the field 
declaration in `DirectSubScan`. The effect of such move is that it will be 
necessary to annotate `RecordReader` in every operator that may be passed as 
part of a fragment to a remote node for execution.  


---

Reply via email to