Skip to main content

Module message

Module message 

Source
Expand description

The records themselves.

Each record has a fixed-width part and then a variable-length part, in that order, and new fields go on the end. A reader reads what it knows and stops; the framing tells it where the record ended, so stopping early is safe. That single rule is what lets a decoder built against one version of this crate keep working against a host built against a later one.

The version number on a record is not a “how new is this” counter. It only goes up when a field is removed or changes meaning, which is a break, and a break is supposed to be loud.

Structs§

Batch
The decoder handing back one batch of decoded rows.
BufferRef
Where one Arrow buffer sits in the decoder’s memory.
Buffers
A list of BufferRefs, still in its encoded form.
Hello
The host introducing itself.
HelloAck
The decoder answering the host.
Node
One array in a batch, in the flattened order the schema puts them in.
Nodes
A list of Nodes, still in its encoded form.
Projection
The columns a scan is being asked for.
RangeRequest
The decoder asking for bytes of the source.
Refusal
One side declining to go on, and saying why.
RefusalReason
Why one side is declining to go on.
ScanRequest
The host asking the decoder for a run of rows.

Enums§

Message
One record, decoded.