From 5d8084a32fa7fa4d7ff18f6da04e8a12e7c981c3 Mon Sep 17 00:00:00 2001 From: Jeremyhi Date: Mon, 13 May 2024 16:30:25 +0800 Subject: [PATCH] chore: store-addr to store-addrs (#3925) --- src/cmd/src/metasrv.rs | 18 +++++++++--------- src/meta-srv/src/bootstrap.rs | 4 ++-- src/meta-srv/src/metasrv.rs | 4 ++-- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/cmd/src/metasrv.rs b/src/cmd/src/metasrv.rs index 5832e61d2cce..fbc605acaf58 100644 --- a/src/cmd/src/metasrv.rs +++ b/src/cmd/src/metasrv.rs @@ -99,8 +99,8 @@ struct StartCommand { bind_addr: Option, #[clap(long)] server_addr: Option, - #[clap(long)] - store_addr: Option, + #[clap(long, aliases = ["store-addr"], value_delimiter = ',', num_args = 1..)] + store_addrs: Option>, #[clap(short, long)] config_file: Option, #[clap(short, long)] @@ -155,8 +155,8 @@ impl StartCommand { opts.server_addr.clone_from(addr); } - if let Some(addr) = &self.store_addr { - opts.store_addr.clone_from(addr); + if let Some(addrs) = &self.store_addrs { + opts.store_addrs.clone_from(addrs); } if let Some(selector_type) = &self.selector { @@ -236,7 +236,7 @@ mod tests { let cmd = StartCommand { bind_addr: Some("127.0.0.1:3002".to_string()), server_addr: Some("127.0.0.1:3002".to_string()), - store_addr: Some("127.0.0.1:2380".to_string()), + store_addrs: Some(vec!["127.0.0.1:2380".to_string()]), selector: Some("LoadBased".to_string()), ..Default::default() }; @@ -245,7 +245,7 @@ mod tests { unreachable!() }; assert_eq!("127.0.0.1:3002".to_string(), options.bind_addr); - assert_eq!("127.0.0.1:2380".to_string(), options.store_addr); + assert_eq!(vec!["127.0.0.1:2380".to_string()], options.store_addrs); assert_eq!(SelectorType::LoadBased, options.selector); } @@ -281,7 +281,7 @@ mod tests { }; assert_eq!("127.0.0.1:3002".to_string(), options.bind_addr); assert_eq!("127.0.0.1:3002".to_string(), options.server_addr); - assert_eq!("127.0.0.1:2379".to_string(), options.store_addr); + assert_eq!(vec!["127.0.0.1:2379".to_string()], options.store_addrs); assert_eq!(SelectorType::LeaseBased, options.selector); assert_eq!("debug", options.logging.level.as_ref().unwrap()); assert_eq!("/tmp/greptimedb/test/logs".to_string(), options.logging.dir); @@ -315,7 +315,7 @@ mod tests { let cmd = StartCommand { bind_addr: Some("127.0.0.1:3002".to_string()), server_addr: Some("127.0.0.1:3002".to_string()), - store_addr: Some("127.0.0.1:2380".to_string()), + store_addrs: Some(vec!["127.0.0.1:2380".to_string()]), selector: Some("LoadBased".to_string()), ..Default::default() }; @@ -401,7 +401,7 @@ mod tests { assert_eq!(opts.http.addr, "127.0.0.1:14000"); // Should be default value. - assert_eq!(opts.store_addr, "127.0.0.1:2379"); + assert_eq!(opts.store_addrs, vec!["127.0.0.1:2379".to_string()]); }, ); } diff --git a/src/meta-srv/src/bootstrap.rs b/src/meta-srv/src/bootstrap.rs index e6cf40bb4d92..02f89ca9b56a 100644 --- a/src/meta-srv/src/bootstrap.rs +++ b/src/meta-srv/src/bootstrap.rs @@ -241,8 +241,8 @@ pub async fn metasrv_builder( async fn create_etcd_client(opts: &MetasrvOptions) -> Result { let etcd_endpoints = opts - .store_addr - .split(',') + .store_addrs + .iter() .map(|x| x.trim()) .filter(|x| !x.is_empty()) .collect::>(); diff --git a/src/meta-srv/src/metasrv.rs b/src/meta-srv/src/metasrv.rs index 323428adca01..68b18f2f27b8 100644 --- a/src/meta-srv/src/metasrv.rs +++ b/src/meta-srv/src/metasrv.rs @@ -70,7 +70,7 @@ pub struct MetasrvOptions { /// The address the server advertises to the clients. pub server_addr: String, /// The address of the store, e.g., etcd. - pub store_addr: String, + pub store_addrs: Vec, /// The type of selector. pub selector: SelectorType, /// Whether to use the memory store. @@ -124,7 +124,7 @@ impl Default for MetasrvOptions { Self { bind_addr: "127.0.0.1:3002".to_string(), server_addr: "127.0.0.1:3002".to_string(), - store_addr: "127.0.0.1:2379".to_string(), + store_addrs: vec!["127.0.0.1:2379".to_string()], selector: SelectorType::default(), use_memory_store: false, enable_region_failover: false,