diff --git a/crates/ecstore/src/endpoints.rs b/crates/ecstore/src/endpoints.rs index f6895ac3..5f3572e7 100644 --- a/crates/ecstore/src/endpoints.rs +++ b/crates/ecstore/src/endpoints.rs @@ -13,13 +13,12 @@ // limitations under the License. use rustfs_utils::{XHost, check_local_server_addr, get_host_ip, is_local_host}; -use tracing::{error, instrument, warn}; +use tracing::{error, info, instrument, warn}; use crate::{ disk::endpoint::{Endpoint, EndpointType}, disks_layout::DisksLayout, global::global_rustfs_port, - // utils::net::{self, XHost}, }; use std::io::{Error, Result}; use std::{ @@ -242,15 +241,32 @@ impl PoolEndpointList { let host = ep.url.host().unwrap(); let host_ip_set = if let Some(set) = host_ip_cache.get(&host) { + info!( + target: "rustfs::ecstore::endpoints", + host = %host, + endpoint = %ep.to_string(), + from = "cache", + "Create pool endpoints host '{}' found in cache for endpoint '{}'", host, ep.to_string() + ); set } else { let ips = match get_host_ip(host.clone()).await { Ok(ips) => ips, Err(e) => { - error!("host {} not found, error:{}", host, e); + error!("Create pool endpoints host {} not found, error:{}", host, e); return Err(Error::other(format!("host '{host}' cannot resolve: {e}"))); } }; + info!( + target: "rustfs::ecstore::endpoints", + host = %host, + endpoint = %ep.to_string(), + from = "get_host_ip", + "Create pool endpoints host '{}' resolved to ips {:?} for endpoint '{}'", + host, + ips, + ep.to_string() + ); host_ip_cache.insert(host.clone(), ips); host_ip_cache.get(&host).unwrap() }; diff --git a/crates/utils/src/dns_resolver.rs b/crates/utils/src/dns_resolver.rs index 685f3113..43b2d1b1 100644 --- a/crates/utils/src/dns_resolver.rs +++ b/crates/utils/src/dns_resolver.rs @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +#![allow(dead_code)] + //! Layered DNS resolution utility for Kubernetes environments //! //! This module provides robust DNS resolution with multiple fallback layers: diff --git a/crates/utils/src/net.rs b/crates/utils/src/net.rs index 03078d23..9c0f3bc6 100644 --- a/crates/utils/src/net.rs +++ b/crates/utils/src/net.rs @@ -118,17 +118,17 @@ pub fn is_local_host(host: Host<&str>, port: u16, local_port: u16) -> std::io::R pub async fn get_host_ip(host: Host<&str>) -> std::io::Result> { match host { Host::Domain(domain) => { - match crate::dns_resolver::resolve_domain(domain).await { - Ok(ips) => { - info!("Resolved domain {domain} using custom DNS resolver: {ips:?}"); - return Ok(ips.into_iter().collect()); - } - Err(err) => { - error!( - "Failed to resolve domain {domain} using custom DNS resolver, falling back to system resolver,err: {err}" - ); - } - } + // match crate::dns_resolver::resolve_domain(domain).await { + // Ok(ips) => { + // info!("Resolved domain {domain} using custom DNS resolver: {ips:?}"); + // return Ok(ips.into_iter().collect()); + // } + // Err(err) => { + // error!( + // "Failed to resolve domain {domain} using custom DNS resolver, falling back to system resolver,err: {err}" + // ); + // } + // } // Check cache first if let Ok(mut cache) = DNS_CACHE.lock() { if let Some(entry) = cache.get(domain) { diff --git a/rustfs/src/main.rs b/rustfs/src/main.rs index 056e0dd7..2c3135f3 100644 --- a/rustfs/src/main.rs +++ b/rustfs/src/main.rs @@ -64,7 +64,6 @@ use rustfs_iam::init_iam_sys; use rustfs_notify::global::notifier_instance; use rustfs_obs::{init_obs, set_global_guard}; use rustfs_targets::arn::TargetID; -use rustfs_utils::dns_resolver::init_global_dns_resolver; use rustfs_utils::net::parse_and_resolve_address; use s3s::s3_error; use std::io::{Error, Result}; @@ -129,12 +128,12 @@ async fn main() -> Result<()> { async fn run(opt: config::Opt) -> Result<()> { debug!("opt: {:?}", &opt); - // Initialize global DNS resolver early for enhanced DNS resolution (concurrent) - let dns_init = tokio::spawn(async { - if let Err(e) = init_global_dns_resolver().await { - warn!("Failed to initialize global DNS resolver: {}. Using standard DNS resolution.", e); - } - }); + // // Initialize global DNS resolver early for enhanced DNS resolution (concurrent) + // let dns_init = tokio::spawn(async { + // if let Err(e) = rustfs_utils::dns_resolver::init_global_dns_resolver().await { + // warn!("Failed to initialize global DNS resolver: {}. Using standard DNS resolution.", e); + // } + // }); if let Some(region) = &opt.region { rustfs_ecstore::global::set_global_region(region.clone()); @@ -153,8 +152,8 @@ async fn run(opt: config::Opt) -> Result<()> { set_global_addr(&opt.address).await; - // Wait for DNS initialization to complete before network-heavy operations - dns_init.await.map_err(Error::other)?; + // // Wait for DNS initialization to complete before network-heavy operations + // dns_init.await.map_err(Error::other)?; // For RPC let (endpoint_pools, setup_type) = EndpointServerPools::from_volumes(server_address.clone().as_str(), opt.volumes.clone())