Skip to main content

RepartitionProcedureFactory

Trait RepartitionProcedureFactory 

Source
pub trait RepartitionProcedureFactory: Send + Sync {
    // Required methods
    fn create(
        &self,
        ddl_ctx: &DdlContext,
        table_name: TableName,
        table_id: TableId,
        source: RepartitionSource,
        to_exprs: Vec<String>,
        timeout: Option<Duration>,
    ) -> Result<BoxedProcedure, BoxedError>;
    fn register_loaders(
        &self,
        ddl_ctx: &DdlContext,
        procedure_manager: &ProcedureManagerRef,
    ) -> Result<(), BoxedError>;
    fn ensure_gc_requirement<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<(), BoxedError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}

Required Methods§

Source

fn create( &self, ddl_ctx: &DdlContext, table_name: TableName, table_id: TableId, source: RepartitionSource, to_exprs: Vec<String>, timeout: Option<Duration>, ) -> Result<BoxedProcedure, BoxedError>

Source

fn register_loaders( &self, ddl_ctx: &DdlContext, procedure_manager: &ProcedureManagerRef, ) -> Result<(), BoxedError>

Source

fn ensure_gc_requirement<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<(), BoxedError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Persists the cluster-level GC requirement before submitting a repartition.

Implementors§