Expand description
A batch of columns, which is the unit every operator passes to the next one.
A chunk is some vectors of the same length plus that length. It is not a table and it is not a
result set: it is at most VECTOR_SIZE rows, because the whole point of the number in
spec/04-architecture.md section 4.3 is that a batch of this width stays in L1 while an
operator works on it, and a type that can hold ten times that many rows is a type that lets an
operator quietly stop being vectorized.
The row count is stored rather than derived, which matters for the one case that looks like a
mistake and is not. SELECT count(*) FROM t scans no columns, so the chunk the scan produces
has no vectors in it and still has to say how many rows went past, and a chunk that derived its
length from its first column would say zero.
Structsยง
- Chunk
- A batch of columns of equal length.