WritableColumnVector¶
WritableColumnVector is an extension of the ColumnVector abstraction for writable in-memory columnar vectors.
WritableColumnVector is used to allocate ColumnVectors for VectorizedParquetRecordReader.
Contract (Subset)¶
reserveInternal¶
Used when:
- OffHeapColumnVector and OnHeapColumnVector are created
WritableColumnVectoris requested to reserve
reserveNewColumn¶
Used when:
WritableColumnVectoris created or requested to reserveDictionaryIds
Implementations¶
Creating Instance¶
WritableColumnVector takes the following to be created:
- Capacity (number of rows to hold in a vector)
- Data type of the rows stored
Abstract Class
WritableColumnVector is an abstract class and cannot be created directly. It is created indirectly for the concrete WritableColumnVectors.
reserveAdditional¶
reserveAdditional...FIXME
reserveAdditional is used when:
VectorizedRleValuesReaderis requested toreadValues
reserveDictionaryIds¶
reserveDictionaryIds...FIXME
reserveDictionaryIds is used when:
VectorizedColumnReaderis requested to readBatchDictionaryEncoding.Decoderis requested todecompress
reserve¶
reserve...FIXME
reserve is used when:
ParquetColumnVectoris requested toassembleCollectionandassembleStructWritableColumnVectoris requested to reserveAdditional, reserveDictionaryIds and all theappends
reset¶
reset does nothing (noop) when either isConstant or isAllNull is enabled.
reset...FIXME
reset is used when:
ParquetColumnVectoris requested toresetVectorizedDeltaByteArrayReaderis requested toskipBinary- OffHeapColumnVector and OnHeapColumnVector are created
WritableColumnVectoris requested to reserveDictionaryIdsRowToColumnarExecphysical operator is requested to doExecuteColumnar