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§
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>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".