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

    https://github.com/apache/drill/pull/1164#discussion_r174328025
  
    --- Diff: exec/vector/src/main/codegen/templates/VariableLengthVectors.java 
---
    @@ -514,6 +516,22 @@ public boolean isNull(int index){
        *   The equivalent Java primitive is '${minor.javaType!type.javaType}'
        *
        * NB: this class is automatically generated from ValueVectorTypes.tdd 
using FreeMarker.
    +   * </p>
    +   * <h2>Contract</h2>
    --- End diff --
    
    Might be worth summarizing how to use this:
    
    1) Write to values sequentially. Fixed-width vectors allow random access, 
but special care is needed.
    2) Keep track in client code of the total time count. Call 
`setValueCount()` once the vector is full to set the final value. (The vector 
does not know its count while a write is in progress.)
    3) Either take responsibility for allocating enough memory, or call the 
`setSafe()` methods to automatically extend the vector.
    4) Once vectors are written, they are immutable; no additional writes of 
any kind are allowed to that vector.


---

Reply via email to