public abstract class ColumnState extends Object
If a column is not projected, then the writer exists (to make life easier for the reader), but there will be no vector backing the writer.
Different columns need different kinds of vectors: a data vector, possibly an offset
vector, or even a non-existent vector. The VectorState
class abstracts out
these differences.
Modifier and Type | Class and Description |
---|---|
static class |
ColumnState.BaseContainerColumnState |
static class |
ColumnState.PrimitiveColumnState
Primitive (non-map) column state.
|
protected static class |
ColumnState.State
Columns move through various lifecycle states as identified by this
enum.
|
Modifier and Type | Field and Description |
---|---|
protected int |
addVersion |
protected int |
cardinality
Cardinality of the value itself.
|
protected org.apache.drill.exec.physical.resultSet.impl.LoaderInternals |
loader |
protected int |
outputIndex |
protected ColumnState.State |
state |
protected VectorState |
vectorState |
protected AbstractObjectWriter |
writer |
Constructor and Description |
---|
ColumnState(org.apache.drill.exec.physical.resultSet.impl.LoaderInternals loader,
AbstractObjectWriter writer,
VectorState vectorState) |
Modifier and Type | Method and Description |
---|---|
void |
allocateVectors() |
void |
buildOutput(TupleState tupleState) |
void |
close() |
void |
dump(HierarchicalFormatter format) |
void |
harvestWithLookAhead()
Writing of a row batch is complete.
|
int |
innerCardinality() |
boolean |
isProjected() |
int |
outerCardinality() |
abstract ColumnMetadata |
outputSchema() |
void |
rollover()
A column within the row batch overflowed.
|
ColumnMetadata |
schema() |
void |
startBatch(boolean schemaOnly)
Prepare the column for a new row batch after overflow on the previous
batch.
|
void |
updateCardinality(int cardinality) |
<T extends ValueVector> |
vector() |
VectorState |
vectorState() |
AbstractObjectWriter |
writer() |
protected final org.apache.drill.exec.physical.resultSet.impl.LoaderInternals loader
protected final int addVersion
protected final VectorState vectorState
protected ColumnState.State state
protected AbstractObjectWriter writer
protected int cardinality
protected int outputIndex
public ColumnState(org.apache.drill.exec.physical.resultSet.impl.LoaderInternals loader, AbstractObjectWriter writer, VectorState vectorState)
public AbstractObjectWriter writer()
public ColumnMetadata schema()
public VectorState vectorState()
public <T extends ValueVector> T vector()
public void allocateVectors()
public void startBatch(boolean schemaOnly)
public void rollover()
public void harvestWithLookAhead()
public boolean isProjected()
public void updateCardinality(int cardinality)
public int outerCardinality()
public int innerCardinality()
public void buildOutput(TupleState tupleState)
public abstract ColumnMetadata outputSchema()
public void close()
public void dump(HierarchicalFormatter format)
Copyright © 1970 The Apache Software Foundation. All rights reserved.