move policy out of iam

This commit is contained in:
weisd
2025-03-26 10:18:03 +08:00
parent 545ae79e44
commit c8e13b8ab5
56 changed files with 539 additions and 378 deletions
+4 -4
View File
@@ -95,7 +95,7 @@ impl S3PeerSys {
for (i, client) in self.clients.iter().enumerate() {
if let Some(v) = client.get_pools() {
if v.contains(&pool_idx) {
per_pool_errs.push(errs[i].as_ref().map(|e| clone_err(e)));
per_pool_errs.push(errs[i].as_ref().map(clone_err));
}
}
}
@@ -130,7 +130,7 @@ impl S3PeerSys {
for (i, client) in self.clients.iter().enumerate() {
if let Some(v) = client.get_pools() {
if v.contains(&pool_idx) {
per_pool_errs.push(errs[i].as_ref().map(|e| clone_err(e)));
per_pool_errs.push(errs[i].as_ref().map(clone_err));
}
}
}
@@ -781,7 +781,7 @@ pub async fn heal_bucket_local(bucket: &str, opts: &HealOpts) -> Result<HealResu
let bucket = bucket.to_string();
let bs_clone = before_state.clone();
let as_clone = after_state.clone();
let errs_clone = errs.iter().map(|e| e.as_ref().map(|e| clone_err(e))).collect::<Vec<_>>();
let errs_clone = errs.iter().map(|e| e.as_ref().map(clone_err)).collect::<Vec<_>>();
futures.push(async move {
if bs_clone.read().await[idx] == DRIVE_STATE_MISSING {
info!("bucket not find, will recreate");
@@ -795,7 +795,7 @@ pub async fn heal_bucket_local(bucket: &str, opts: &HealOpts) -> Result<HealResu
}
}
}
errs_clone[idx].as_ref().map(|e| clone_err(e))
errs_clone[idx].as_ref().map(clone_err)
});
}
+1 -1
View File
@@ -107,7 +107,7 @@ fn reduce_errs(errs: &[Option<Error>], ignored_errs: &[Box<dyn CheckErrorFn>]) -
if let Some(&c) = error_counts.get(&max_err) {
if let Some(&err_idx) = error_map.get(&max_err) {
let err = errs[err_idx].as_ref().map(|e| clone_err(e));
let err = errs[err_idx].as_ref().map(clone_err);
return (c, err);
}
+1 -1
View File
@@ -5429,7 +5429,7 @@ pub fn should_heal_object_on_disk(
}
}
}
(false, err.as_ref().map(|e| clone_err(e)))
(false, err.as_ref().map(clone_err))
}
async fn get_disks_info(disks: &[Option<DiskStore>], eps: &[Endpoint]) -> Vec<madmin::Disk> {
+3 -3
View File
@@ -665,7 +665,7 @@ impl ECStore {
has_def_pool = true;
if !is_err_object_not_found(err) && !is_err_version_not_found(err) {
return Err(clone_err(&err));
return Err(clone_err(err));
}
if pinfo.object_info.delete_marker && !pinfo.object_info.name.is_empty() {
@@ -803,7 +803,7 @@ impl ECStore {
}
let _ = task.await;
if let Some(err) = first_err.read().await.as_ref() {
return Err(clone_err(&err));
return Err(clone_err(err));
}
Ok(())
}
@@ -1069,7 +1069,7 @@ impl Clone for PoolObjInfo {
Self {
index: self.index,
object_info: self.object_info.clone(),
err: self.err.as_ref().map(|e| clone_err(e)),
err: self.err.as_ref().map(clone_err),
}
}
}