void copyLongColumn(ColumnVector destination,
                      ColumnVector source,
                      int sourceOffset,
                      int length) {
    LongColumnVector lsource = (LongColumnVector) source;
    LongColumnVector ldest = (LongColumnVector) destination;
    ldest.isRepeating = lsource.isRepeating;
    ldest.noNulls = lsource.noNulls;
    if (source.isRepeating) {
      ldest.isNull[0] = lsource.isNull[0];
      ldest.vector[0] = lsource.vector[0];
    } else {
      if (!lsource.noNulls) {
        for(int r=0; r < length; ++r) {
          ldest.isNull[r] = lsource.isNull[sourceOffset + r];
          ldest.vector[r] = lsource.vector[sourceOffset + r];
        }
      } else {
        for (int r = 0; r < length; ++r) {
          ldest.vector[r] = lsource.vector[sourceOffset + r];
        }
      }
    }
  }
If the current batch is empty, get a new one.
@return true if we have rows available.
@throws IOException
ql/src/java/org/apache/hadoop/hive/ql/io/orc/RecordReaderImpl.java