Skip to main content

execute

Function execute 

Source
pub async fn execute(
    pipeline: &Pipeline,
    inputs: Vec<Arc<dyn Value>>,
    ctx: Arc<TaskContext>,
    watcher: &dyn PipelineWatcher,
) -> Result<Vec<Arc<dyn Value>>, ExecutionError>
Expand description

Execute pipeline against a set of inputs.

Each input item is run through the full task chain. When pipeline.concurrency > 1, up to that many items are processed in parallel via buffer_unordered. Output order is not guaranteed when concurrency > 1.

Within a single item’s execution, tasks run sequentially. When a task produces an iterator or stream, items are gathered into batches of batch_size. If the next task is a batch variant, the slice is passed directly; otherwise each item is executed individually through the remaining pipeline before the next batch is pulled.