diff --git a/Cargo.lock b/Cargo.lock index 29261540e..d93daa646 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5039,9 +5039,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" +checksum = "e17592d60ebacc7d5e169f4663c5f84f9161cc90328abcfe8456f41e4dfcb284" [[package]] name = "hex" @@ -8036,9 +8036,9 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppmd-rust" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efca4c95a19a79d1c98f791f10aebd5c1363b473244630bb7dbde1dc98455a24" +checksum = "9e9219bcb9d7aca6b2f63c83cf100cf78bcd619ac46e6ecbd0dd90869a39345d" [[package]] name = "ppv-lite86" @@ -11073,7 +11073,7 @@ checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "s3s" version = "0.15.0" -source = "git+https://github.com/rustfs/s3s.git?rev=c8f575e3b8c7ec9962a722e197bb929efc12a07a#c8f575e3b8c7ec9962a722e197bb929efc12a07a" +source = "git+https://github.com/rustfs/s3s.git?rev=28e9ebb23dd2fb7d667084f34121b4aa4807a5c6#28e9ebb23dd2fb7d667084f34121b4aa4807a5c6" dependencies = [ "arc-swap", "arrayvec", @@ -11131,7 +11131,7 @@ dependencies = [ [[package]] name = "s3s-rfc2047" version = "0.16.0-alpha.1" -source = "git+https://github.com/rustfs/s3s.git?rev=c8f575e3b8c7ec9962a722e197bb929efc12a07a#c8f575e3b8c7ec9962a722e197bb929efc12a07a" +source = "git+https://github.com/rustfs/s3s.git?rev=28e9ebb23dd2fb7d667084f34121b4aa4807a5c6#28e9ebb23dd2fb7d667084f34121b4aa4807a5c6" dependencies = [ "base64-simd", "thiserror 2.0.20", @@ -11140,7 +11140,7 @@ dependencies = [ [[package]] name = "s3s-sigv2" version = "0.16.0-alpha.1" -source = "git+https://github.com/rustfs/s3s.git?rev=c8f575e3b8c7ec9962a722e197bb929efc12a07a#c8f575e3b8c7ec9962a722e197bb929efc12a07a" +source = "git+https://github.com/rustfs/s3s.git?rev=28e9ebb23dd2fb7d667084f34121b4aa4807a5c6#28e9ebb23dd2fb7d667084f34121b4aa4807a5c6" dependencies = [ "base64-simd", "hmac 0.13.0", @@ -11153,7 +11153,7 @@ dependencies = [ [[package]] name = "s3s-sigv4" version = "0.16.0-alpha.1" -source = "git+https://github.com/rustfs/s3s.git?rev=c8f575e3b8c7ec9962a722e197bb929efc12a07a#c8f575e3b8c7ec9962a722e197bb929efc12a07a" +source = "git+https://github.com/rustfs/s3s.git?rev=28e9ebb23dd2fb7d667084f34121b4aa4807a5c6#28e9ebb23dd2fb7d667084f34121b4aa4807a5c6" dependencies = [ "arrayvec", "base64-simd", diff --git a/Cargo.toml b/Cargo.toml index 4fa938fb1..21e7f891f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -71,7 +71,7 @@ resolver = "3" edition = "2024" license = "Apache-2.0" repository = "https://github.com/rustfs/rustfs" -rust-version = "1.97.1" +rust-version = "1.98.0" version = "1.0.0-rc.5" homepage = "https://rustfs.com" description = "RustFS is a high-performance distributed object storage software built using Rust, one of the most popular languages worldwide. " @@ -305,7 +305,7 @@ rustify = { version = "0.7", default-features = false } rustix = { version = "1.1.4" } rust-embed = { version = "8.12.0" } rustc-hash = { version = "2.1.3" } -s3s = { git = "https://github.com/rustfs/s3s.git", rev = "c8f575e3b8c7ec9962a722e197bb929efc12a07a", version = "0.15.0", features = ["minio"] } +s3s = { git = "https://github.com/rustfs/s3s.git", rev = "28e9ebb23dd2fb7d667084f34121b4aa4807a5c6", version = "0.15.0", features = ["minio"] } serial_test = "4.0.1" shadow-rs = { default-features = false, version = "2.0.0" } siphasher = "1.0.3" diff --git a/crates/s3select-api/src/metrics.rs b/crates/s3select-api/src/metrics.rs index 619f1e895..c9ee0ee28 100644 --- a/crates/s3select-api/src/metrics.rs +++ b/crates/s3select-api/src/metrics.rs @@ -87,7 +87,7 @@ impl SelectInputMetricsRecorder { fn saturating_add(counter: &AtomicU64, bytes: usize) { let increment = u64::try_from(bytes).unwrap_or(u64::MAX); - let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| Some(current.saturating_add(increment))); + let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |current| Some(current.saturating_add(increment))); } #[cfg(test)] diff --git a/rustfs/src/startup_iam.rs b/rustfs/src/startup_iam.rs index fe28108b8..b6c58fde7 100644 --- a/rustfs/src/startup_iam.rs +++ b/rustfs/src/startup_iam.rs @@ -321,6 +321,7 @@ fn initial_retry_interval() -> Duration { } // Sentinel marks "not yet initialized"; env var is read on first call. +#[cfg(debug_assertions)] static TEST_REMAINING_FAILURES: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(u64::MAX); fn should_fail_test_init_attempt() -> bool {