public void init(StructObjectInspector structObjectInspector, String[] scratchColumnTypeNames,
      DataTypePhysicalVariation[] scratchDataTypePhysicalVariations)
          throws HiveException {

    // Row column information.
    rowColumnNames = VectorizedBatchUtil.columnNamesFromStructObjectInspector(structObjectInspector);
    rowColumnTypeInfos = VectorizedBatchUtil.typeInfosFromStructObjectInspector(structObjectInspector);
    dataColumnNums = null;
    partitionColumnCount = 0;
    virtualColumnCount = 0;
    neededVirtualColumns = new VirtualColumn[0];
    dataColumnCount = rowColumnTypeInfos.length;

    // Scratch column information.
    this.scratchColumnTypeNames = scratchColumnTypeNames;
    this.scratchDataTypePhysicalVariations = scratchDataTypePhysicalVariations;
  }
Initializes the VectorizedRowBatch context based on an scratch column type names and
object inspector.
@param structObjectInspector
@param scratchColumnTypeNames
         Object inspector that shapes the column types
@throws HiveException
ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizedRowBatchCtx.java