diff --git a/seaweed-volume/Cargo.lock b/seaweed-volume/Cargo.lock index 98029bf44..150b88856 100644 --- a/seaweed-volume/Cargo.lock +++ b/seaweed-volume/Cargo.lock @@ -2146,7 +2146,7 @@ dependencies = [ "p256 0.13.2", "p384", "pem", - "rand 0.8.5", + "rand 0.8.7", "rsa", "serde", "serde_json", @@ -2421,7 +2421,7 @@ dependencies = [ "num-integer", "num-iter", "num-traits", - "rand 0.8.5", + "rand 0.8.7", "smallvec", "zeroize", ] @@ -3020,9 +3020,9 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "rand" -version = "0.8.5" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +checksum = "22f6172bdec972074665ed81ed53b71da00bfc44b65a753cfde883ec4c702a1a" dependencies = [ "libc", "rand_chacha", @@ -3395,7 +3395,7 @@ dependencies = [ "errno 0.2.8", "fs2", "integer-encoding", - "rand 0.8.5", + "rand 0.8.7", "snap", ] @@ -4097,7 +4097,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand 0.8.5", + "rand 0.8.7", "slab", "tokio", "tokio-util", @@ -4529,7 +4529,7 @@ dependencies = [ "prometheus", "prost 0.13.5", "prost-types 0.13.5", - "rand 0.8.5", + "rand 0.10.2", "redb", "reed-solomon-erasure", "reqwest", diff --git a/seaweed-volume/Cargo.toml b/seaweed-volume/Cargo.toml index 4dacf2d6d..41bb8fa31 100644 --- a/seaweed-volume/Cargo.toml +++ b/seaweed-volume/Cargo.toml @@ -103,7 +103,7 @@ mime_guess = "2" # Misc bytes = "1" -rand = "0.8" +rand = "0.10" chrono = "0.4" hex = "0.4" parking_lot = "0.12" diff --git a/seaweed-volume/src/server/handlers.rs b/seaweed-volume/src/server/handlers.rs index 41f94794b..429a13cdd 100644 --- a/seaweed-volume/src/server/handlers.rs +++ b/seaweed-volume/src/server/handlers.rs @@ -733,7 +733,7 @@ async fn proxy_or_redirect_to_target( // Shuffle for load balancing if candidates.len() >= 2 { use rand::seq::SliceRandom; - let mut rng = rand::thread_rng(); + let mut rng = rand::rng(); candidates.shuffle(&mut rng); } diff --git a/seaweed-volume/src/server/request_id.rs b/seaweed-volume/src/server/request_id.rs index f3e43c560..1a2b61f40 100644 --- a/seaweed-volume/src/server/request_id.rs +++ b/seaweed-volume/src/server/request_id.rs @@ -88,13 +88,13 @@ pub fn outgoing_request_id_interceptor(mut request: Request<()>) -> Result String { - use rand::Rng; + use rand::RngExt; let nanos = std::time::SystemTime::now() .duration_since(std::time::UNIX_EPOCH) .unwrap_or_default() .as_nanos() as u64; - let rand_val: u32 = rand::thread_rng().gen(); + let rand_val: u32 = rand::rng().random(); format!("{:X}{:08X}", nanos, rand_val) } diff --git a/seaweed-volume/src/storage/erasure_coding/ec_bitrot.rs b/seaweed-volume/src/storage/erasure_coding/ec_bitrot.rs index c3583b05e..e1eab27b5 100644 --- a/seaweed-volume/src/storage/erasure_coding/ec_bitrot.rs +++ b/seaweed-volume/src/storage/erasure_coding/ec_bitrot.rs @@ -195,9 +195,9 @@ pub fn remove_bitrot_sidecars(base: &str) -> io::Result<()> { /// Returns a fresh random per-encode identity used to detect a stale sidecar /// left behind by an in-place re-encode. pub fn new_encode_uuid() -> Vec { - use rand::RngCore; + use rand::Rng; let mut b = vec![0u8; 16]; - rand::thread_rng().fill_bytes(&mut b); + rand::rng().fill_bytes(&mut b); b }