risingwave_frontend::meta_client

Trait FrontendMetaClient

source
pub trait FrontendMetaClient: Send + Sync {
Show 34 methods // Required methods fn try_unregister<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn flush<'life0, 'async_trait>( &'life0 self, database_id: u32, ) -> Pin<Box<dyn Future<Output = Result<HummockVersionId>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn wait<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn recover<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn cancel_creating_jobs<'life0, 'async_trait>( &'life0 self, jobs: PbJobs, ) -> Pin<Box<dyn Future<Output = Result<Vec<u32>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_table_fragments<'life0, 'life1, 'async_trait>( &'life0 self, table_ids: &'life1 [u32], ) -> Pin<Box<dyn Future<Output = Result<HashMap<u32, TableFragmentInfo>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn list_table_fragment_states<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<TableFragmentState>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_fragment_distribution<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<FragmentDistribution>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_actor_states<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<ActorState>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_actor_splits<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<ActorSplit>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_object_dependencies<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<PbObjectDependencies>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_meta_snapshots<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MetaSnapshotMetadata>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_system_params<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<SystemParamsReader>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn set_system_param<'life0, 'async_trait>( &'life0 self, param: String, value: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<Option<SystemParamsReader>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_session_params<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<SessionConfig>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn set_session_param<'life0, 'async_trait>( &'life0 self, param: String, value: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_ddl_progress<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<DdlProgress>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_tables<'life0, 'life1, 'async_trait>( &'life0 self, table_ids: &'life1 [u32], ) -> Pin<Box<dyn Future<Output = Result<HashMap<u32, Table>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn list_hummock_pinned_versions<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, u64)>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_hummock_current_version<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HummockVersion>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_hummock_checkpoint_version<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HummockVersion>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_version_deltas<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<HummockVersionDelta>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_branched_objects<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<BranchedObject>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_hummock_compaction_group_configs<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<CompactionGroupInfo>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_hummock_active_write_limits<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<u64, WriteLimit>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_hummock_meta_configs<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_event_log<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<EventLog>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_compact_task_assignment<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<CompactTaskAssignment>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_all_nodes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<WorkerNode>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_compact_task_progress<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<CompactTaskProgress>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn apply_throttle<'life0, 'async_trait>( &'life0 self, kind: PbThrottleTarget, id: u32, rate_limit: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_cluster_recovery_status<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<RecoveryStatus>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_cluster_limits<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<ClusterLimit>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_rate_limits<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<RateLimitInfo>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait;
}
Expand description

A wrapper around the MetaClient that only provides a minor set of meta rpc. Most of the rpc to meta are delegated by other separate structs like CatalogWriter, WorkerNodeManager, etc. So frontend rarely needs to call MetaClient directly. Hence instead of to mock all rpc of MetaClient in tests, we aggregate those “direct” rpc in this trait so that the mocking can be simplified.

Required Methods§

source

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

source

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

source

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

source

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

source

fn cancel_creating_jobs<'life0, 'async_trait>( &'life0 self, jobs: PbJobs, ) -> Pin<Box<dyn Future<Output = Result<Vec<u32>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn list_table_fragments<'life0, 'life1, 'async_trait>( &'life0 self, table_ids: &'life1 [u32], ) -> Pin<Box<dyn Future<Output = Result<HashMap<u32, TableFragmentInfo>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

fn set_system_param<'life0, 'async_trait>( &'life0 self, param: String, value: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<Option<SystemParamsReader>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

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

source

fn set_session_param<'life0, 'async_trait>( &'life0 self, param: String, value: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

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

source

fn get_tables<'life0, 'life1, 'async_trait>( &'life0 self, table_ids: &'life1 [u32], ) -> Pin<Box<dyn Future<Output = Result<HashMap<u32, Table>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

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

Returns vector of (worker_id, min_pinned_version_id)

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

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

source

fn apply_throttle<'life0, 'async_trait>( &'life0 self, kind: PbThrottleTarget, id: u32, rate_limit: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

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

source

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

source

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

Implementors§