protected void func(DoubleColumnVector outputColVector, BytesColumnVector inputColVector, int batchIndex) {

    byte[] bytes = inputColVector.vector[batchIndex];
    final int start = inputColVector.start[batchIndex];
    final int length = inputColVector.length[batchIndex];
    try {
      if (!LazyUtils.isNumberMaybe(bytes, start, length)) {
        outputColVector.noNulls = false;
        outputColVector.isNull[batchIndex] = true;
        outputColVector.vector[batchIndex] = DoubleColumnVector.NULL_VALUE;
        return;
      }
      outputColVector.vector[batchIndex] = StringToDouble.strtod(bytes, start, length);
    } catch (Exception e) {

      // for any exception in conversion to integer, produce NULL
      outputColVector.noNulls = false;
      outputColVector.isNull[batchIndex] = true;
      outputColVector.vector[batchIndex] = DoubleColumnVector.NULL_VALUE;
    }
  }
Convert input string to a double, at position i in the respective vectors.
ql/src/java/org/apache/hadoop/hive/ql/exec/vector/expressions/CastStringToDouble.java