From 8e240ec6aa0f3ed7e3c4a376714480cc72ef215b Mon Sep 17 00:00:00 2001 From: overtrue Date: Sat, 22 Aug 2026 10:33:00 +0800 Subject: [PATCH] fix(ecstore): satisfy delete fence lint checks --- crates/ecstore/src/data_movement/mod.rs | 3 +-- crates/ecstore/src/store/init.rs | 2 +- crates/ecstore/src/store/multipart.rs | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/crates/ecstore/src/data_movement/mod.rs b/crates/ecstore/src/data_movement/mod.rs index 039b44d72..4fdda942e 100644 --- a/crates/ecstore/src/data_movement/mod.rs +++ b/crates/ecstore/src/data_movement/mod.rs @@ -1545,13 +1545,12 @@ async fn migrate_object_inner( if let Err(err) = store .clone() .complete_multipart_upload_for_data_movement( - target_pool_idx, + (target_pool_idx, mutation_fence), &bucket, &object_info.name, &res.upload_id, parts, &complete_multipart_opts, - mutation_fence, ) .await { diff --git a/crates/ecstore/src/store/init.rs b/crates/ecstore/src/store/init.rs index aec093df9..451e42242 100644 --- a/crates/ecstore/src/store/init.rs +++ b/crates/ecstore/src/store/init.rs @@ -3538,7 +3538,7 @@ mod tests { "the injected error pool must be the decommission source" ); - let expected_errors = vec![ + let expected_errors = [ StorageError::ErasureWriteQuorum, StorageError::NamespaceLockQuorumUnavailable { mode: "delete_objects_commit", diff --git a/crates/ecstore/src/store/multipart.rs b/crates/ecstore/src/store/multipart.rs index 9a855c220..8d72287d4 100644 --- a/crates/ecstore/src/store/multipart.rs +++ b/crates/ecstore/src/store/multipart.rs @@ -712,14 +712,14 @@ impl ECStore { pub(crate) async fn complete_multipart_upload_for_data_movement( self: Arc, - target_pool_idx: usize, + target: (usize, Option<&ObjectLockDiagGuard>), bucket: &str, object: &str, upload_id: &str, uploaded_parts: Vec, opts: &ObjectOptions, - mutation_fence: Option<&ObjectLockDiagGuard>, ) -> Result { + let (target_pool_idx, mutation_fence) = target; check_complete_multipart_args(bucket, object, upload_id)?; if !opts.data_movement { return Err(Error::other("targeted multipart completion requires data_movement options"));