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§
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,
sourcefn 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 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)