risingwave_meta/
lib.rs

1// Copyright 2025 RisingWave Labs
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15#![allow(clippy::derive_partial_eq_without_eq)]
16#![feature(trait_alias)]
17#![feature(type_alias_impl_trait)]
18#![feature(map_try_insert)]
19#![feature(btree_extract_if)]
20#![feature(let_chains)]
21#![feature(error_generic_member_access)]
22#![feature(assert_matches)]
23#![feature(try_blocks)]
24#![feature(stmt_expr_attributes)]
25#![feature(proc_macro_hygiene)]
26#![feature(custom_test_frameworks)]
27#![test_runner(risingwave_test_runner::test_runner::run_failpont_tests)]
28#![feature(impl_trait_in_assoc_type)]
29#![feature(anonymous_lifetime_in_impl_trait)]
30#![feature(duration_millis_float)]
31#![feature(iterator_try_reduce)]
32#![feature(iterator_try_collect)]
33
34pub mod backup_restore;
35pub mod barrier;
36pub mod controller;
37#[cfg(not(madsim))] // no need in simulation test
38pub mod dashboard;
39pub mod error;
40pub mod hummock;
41pub mod manager;
42pub mod model;
43pub mod rpc;
44pub mod serving;
45pub mod stream;
46pub mod telemetry;
47
48pub use error::{MetaError, MetaResult};
49use risingwave_common::config::MetaStoreConfig;
50pub use rpc::{ElectionClient, ElectionMember};
51
52use crate::manager::MetaOpts;
53
54#[derive(Debug, Clone)]
55pub enum MetaStoreBackend {
56    Mem,
57    Sql {
58        endpoint: String,
59        config: MetaStoreConfig,
60    },
61}