Expand description
Plan compiler infrastructure for Ring 0 event processing.
This module provides the foundation for compiling DataFusion logical plans
into native functions that operate on a fixed-layout row format.
§Components
row: Fixed-layoutEventRowformat with zero-copy field accessbridge:RowBatchBridgefor converting rows back to ArrowRecordBatchpolicy:BatchPolicyandBackpressureStrategyfor bridge configurationpipeline_bridge: Ring 0 / Ring 1 SPSC bridge with watermark-aware batchingevent_time: Schema-aware event time extraction for compiled queriesmetrics: Query lifecycle types (always available, not JIT-gated)
§JIT Compilation (requires jit feature)
error: Error types and compiled function pointer wrappersexpr: Cranelift-based expression compilerfold: Constant folding pre-passjit: Cranelift JIT context managementpipeline: Pipeline types and compiled pipeline wrapperextractor: Pipeline extraction fromDataFusionlogical planspipeline_compiler: Cranelift codegen for fused pipelinescache: Compiler cache for compiled pipelinesfallback: Fallback mechanism for uncompilable pipelinesquery:StreamingQuerylifecycle managementbreaker_executor: Compiled stateful pipeline bridge (Ring 1 operator wiring)
Re-exports§
pub use batch_reader::BatchRowReader;pub use bridge::BridgeError;pub use bridge::RowBatchBridge;pub use compilation_metrics::CacheSnapshot;pub use compilation_metrics::CompilationMetrics;pub use compilation_metrics::MetricsSnapshot;pub use event_time::EventTimeConfig;pub use event_time::RowEventTimeExtractor;pub use metrics::QueryConfig;pub use metrics::QueryError;pub use metrics::QueryId;pub use metrics::QueryMetadata;pub use metrics::QueryMetrics;pub use metrics::QueryState;pub use metrics::StateStoreConfig;pub use metrics::SubmitResult;pub use pipeline_bridge::create_pipeline_bridge;pub use pipeline_bridge::BridgeConsumer;pub use pipeline_bridge::BridgeMessage;pub use pipeline_bridge::BridgeStats;pub use pipeline_bridge::BridgeStatsSnapshot;pub use pipeline_bridge::PipelineBridge;pub use pipeline_bridge::PipelineBridgeError;pub use pipeline_bridge::Ring1Action;pub use policy::BackpressureStrategy;pub use policy::BatchPolicy;pub use row::EventRow;pub use row::FieldLayout;pub use row::FieldType;pub use row::MutableEventRow;pub use row::RowError;pub use row::RowSchema;pub use error::CompileError;pub use error::CompiledExpr;pub use error::ExtractError;pub use error::FilterFn;pub use error::MaybeCompiledExpr;pub use error::ScalarFn;pub use expr::ExprCompiler;pub use jit::JitContext;pub use cache::CompilerCache;pub use extractor::ExtractedPlan;pub use extractor::PipelineExtractor;pub use fallback::ExecutablePipeline;pub use pipeline::CompiledPipeline;pub use pipeline::Pipeline;pub use pipeline::PipelineAction;pub use pipeline::PipelineBreaker;pub use pipeline::PipelineFn;pub use pipeline::PipelineId;pub use pipeline::PipelineStage;pub use pipeline::PipelineStats;pub use pipeline_compiler::PipelineCompiler;pub use query::StreamingQuery;pub use query::StreamingQueryBuilder;pub use orchestrate::compile_streaming_query;pub use orchestrate::CompiledStreamingQuery;pub use breaker_executor::BreakerExecutor;pub use breaker_executor::CompiledQueryGraph;pub use breaker_executor::Ring1Operator;
Modules§
- batch_
reader - Arrow
RecordBatch→EventRowbridge for Ring 0 input. - breaker_
executor - Compiled stateful pipeline bridge — wires pipeline breakers to Ring 1 operators.
- bridge
- Bridge between row-oriented Ring 0 events and columnar Arrow
RecordBatch. - cache
- Compiler cache for compiled pipelines.
- compilation_
metrics - Compilation metrics and observability for the JIT pipeline.
- error
- Error types and compiled expression wrappers for the JIT compiler.
- event_
time - Schema-aware event time extraction for compiled queries.
- expr
- Compiled expression evaluator using Cranelift JIT.
- extractor
- Pipeline extraction from
DataFusionlogical plans. - fallback
- Fallback mechanism for pipeline compilation.
- fold
- Constant folding pre-pass for expression compilation.
- jit
- Cranelift JIT compilation context.
- metrics
- Streaming query lifecycle types: identifiers, states, configuration, errors, and metrics.
- orchestrate
- SQL compiler orchestrator — single entry point for
LogicalPlan→StreamingQuery. - pipeline
- Pipeline abstraction for compiled Ring 0 event processing.
- pipeline_
bridge - Ring 0 / Ring 1 pipeline bridge via lock-free SPSC queue.
- pipeline_
compiler - Cranelift code generation for compiled pipelines.
- policy
- Batching and backpressure policies for the Ring 0 / Ring 1 pipeline bridge.
- query
- Streaming query lifecycle management.
- row
- Fixed-layout row format for compiled Ring 0 event processing.