pub struct FlowEngine { /* private fields */ }Implementations§
Source§impl FlowEngine
impl FlowEngine
Sourcepub async fn create_partition(
&self,
changes_by_version: BTreeMap<CommitVersion, Vec<(SourceId, Vec<FlowDiff>)>>,
) -> UnitsOfWork
pub async fn create_partition( &self, changes_by_version: BTreeMap<CommitVersion, Vec<(SourceId, Vec<FlowDiff>)>>, ) -> UnitsOfWork
Partition changes from multiple versions into units of work grouped by flow
This method handles the complete partitioning logic:
- Processes each version’s changes separately
- Groups units by flow across all versions
- Maintains version ordering within each flow
§Arguments
changes_by_version- Map of version to (source_id, changes) pairs
§Returns
UnitsOfWork where each flow has its units ordered by version
Source§impl FlowEngine
impl FlowEngine
pub async fn process( &self, txn: &mut FlowTransaction, change: FlowChange, flow_id: FlowId, ) -> Result<()>
Source§impl FlowEngine
impl FlowEngine
pub async fn register_without_backfill( &self, txn: &mut StandardCommandTransaction, flow: Flow, ) -> Result<()>
pub async fn register_with_backfill( &self, txn: &mut StandardCommandTransaction, flow: Flow, flow_creation_version: CommitVersion, ) -> Result<()>
Source§impl FlowEngine
impl FlowEngine
pub fn new( evaluator: StandardRowEvaluator, executor: Executor, registry: TransformOperatorRegistry, event_bus: EventBus, operators_dir: Option<PathBuf>, ) -> Self
pub async fn has_registered_flows(&self) -> bool
Sourcepub async fn flow_ids(&self) -> HashSet<FlowId>
pub async fn flow_ids(&self) -> HashSet<FlowId>
Returns a set of all currently registered flow IDs
Sourcepub async fn clear(&self)
pub async fn clear(&self)
Clears all registered flows, operators, sources, sinks, dependency graph, and backfill versions
pub async fn get_dependency_graph(&self) -> FlowDependencyGraph
pub async fn get_flows_depending_on_table( &self, table_id: TableId, ) -> Vec<FlowId>
pub async fn get_flows_depending_on_view(&self, view_id: ViewId) -> Vec<FlowId>
pub async fn get_flow_producing_view(&self, view_id: ViewId) -> Option<FlowId>
pub async fn calculate_execution_order(&self) -> Vec<FlowId>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FlowEngine
impl !RefUnwindSafe for FlowEngine
impl Send for FlowEngine
impl Sync for FlowEngine
impl Unpin for FlowEngine
impl !UnwindSafe for FlowEngine
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more