pub(super) trait GlobalBarrierWorkerContext:
Send
+ Sync
+ 'static {
Show 14 methods
// Required methods
fn commit_epoch(
&self,
commit_info: CommitEpochInfo,
) -> impl Future<Output = MetaResult<HummockVersionStats>> + Send + '_;
async fn next_scheduled(&self) -> Scheduled;
fn abort_and_mark_blocked(
&self,
database_id: Option<DatabaseId>,
recovery_reason: RecoveryReason,
);
fn mark_ready(&self, options: MarkReadyOptions);
fn post_collect_command<'a>(
&'a self,
command: &'a CommandContext,
) -> impl Future<Output = MetaResult<()>> + Send + 'a;
async fn notify_creating_job_failed(
&self,
database_id: Option<DatabaseId>,
err: String,
);
fn finish_creating_job(
&self,
job: TrackingJob,
) -> impl Future<Output = MetaResult<()>> + Send + '_;
fn finish_cdc_table_backfill(
&self,
job_id: JobId,
) -> impl Future<Output = MetaResult<()>> + Send + '_;
fn new_control_stream<'a>(
&'a self,
node: &'a WorkerNode,
init_request: &'a PbInitRequest,
) -> impl Future<Output = MetaResult<StreamingControlHandle>> + Send + 'a;
async fn reload_runtime_info(
&self,
) -> MetaResult<BarrierWorkerRuntimeInfoSnapshot>;
async fn reload_database_runtime_info(
&self,
database_id: DatabaseId,
) -> MetaResult<Option<DatabaseRuntimeInfoSnapshot>>;
fn handle_list_finished_source_ids(
&self,
list_finished_source_ids: Vec<PbListFinishedSource>,
) -> impl Future<Output = MetaResult<()>> + Send + '_;
fn handle_load_finished_source_ids(
&self,
load_finished_source_ids: Vec<PbLoadFinishedSource>,
) -> impl Future<Output = MetaResult<()>> + Send + '_;
fn handle_refresh_finished_table_ids(
&self,
refresh_finished_table_job_ids: Vec<JobId>,
) -> impl Future<Output = MetaResult<()>> + Send + '_;
}Required Methods§
fn commit_epoch( &self, commit_info: CommitEpochInfo, ) -> impl Future<Output = MetaResult<HummockVersionStats>> + Send + '_
async fn next_scheduled(&self) -> Scheduled
fn abort_and_mark_blocked( &self, database_id: Option<DatabaseId>, recovery_reason: RecoveryReason, )
fn mark_ready(&self, options: MarkReadyOptions)
fn post_collect_command<'a>( &'a self, command: &'a CommandContext, ) -> impl Future<Output = MetaResult<()>> + Send + 'a
async fn notify_creating_job_failed( &self, database_id: Option<DatabaseId>, err: String, )
fn finish_creating_job( &self, job: TrackingJob, ) -> impl Future<Output = MetaResult<()>> + Send + '_
fn finish_cdc_table_backfill( &self, job_id: JobId, ) -> impl Future<Output = MetaResult<()>> + Send + '_
fn new_control_stream<'a>( &'a self, node: &'a WorkerNode, init_request: &'a PbInitRequest, ) -> impl Future<Output = MetaResult<StreamingControlHandle>> + Send + 'a
async fn reload_runtime_info( &self, ) -> MetaResult<BarrierWorkerRuntimeInfoSnapshot>
async fn reload_database_runtime_info( &self, database_id: DatabaseId, ) -> MetaResult<Option<DatabaseRuntimeInfoSnapshot>>
fn handle_list_finished_source_ids( &self, list_finished_source_ids: Vec<PbListFinishedSource>, ) -> impl Future<Output = MetaResult<()>> + Send + '_
fn handle_load_finished_source_ids( &self, load_finished_source_ids: Vec<PbLoadFinishedSource>, ) -> impl Future<Output = MetaResult<()>> + Send + '_
fn handle_refresh_finished_table_ids( &self, refresh_finished_table_job_ids: Vec<JobId>, ) -> impl Future<Output = MetaResult<()>> + Send + '_
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.