Skip to main content

Module contract

Module contract 

Source
Expand description

The in-engine dispatch seam. Every backend (builtin, expression, wasm container, llm) implements TransformBackend; the standalone fv-compute library is what the pipeline runner, the derived-property materializer, the Action runtime, or a REPL embeds to run transform X@v over this Arrow batch.

Scalable-pipeline shape (the whole point): the seam is batch-vectorized (whole RecordBatches, never row-at-a-time) and Send + Sync, so DataFusion can call a loaded Compute per partition across all cores; a backend that has per-instance cost (the wasm Store pool) amortizes it behind TransformBackend::load, which is invoked once and whose Compute is then called per batch.

Enums§

ComputeError

Traits§

Compute
A loaded, ready-to-invoke transform. Cheap to call per batch (any expensive setup happened in TransformBackend::load). Send + Sync so it can be shared across partition workers.
TransformBackend
A pluggable backend for one ImplKind. Implemented by the wasm/container/expression/builtin backends. load does the expensive work once (compile the wasm module, parse the expression, resolve the builtin); the returned Compute is the hot per-batch path.