diff --git a/src/api2/admin/datastore.rs b/src/api2/admin/datastore.rs index 74297a3a..db3b5ce3 100644 --- a/src/api2/admin/datastore.rs +++ b/src/api2/admin/datastore.rs @@ -599,7 +599,7 @@ pub fn list_snapshots( fn get_snapshots_count(store: &Arc, owner: Option<&Authid>) -> Result { let root_ns = Default::default(); - ListAccessibleBackupGroups::new(Arc::clone(store), root_ns, MAX_NAMESPACE_DEPTH, owner)? + ListAccessibleBackupGroups::new(store, root_ns, MAX_NAMESPACE_DEPTH, owner)? .try_fold(Counts::default(), |mut counts, group| { let group = match group { Ok(group) => group, @@ -1059,7 +1059,7 @@ pub fn prune_datastore( let to_stdout = rpcenv.env_type() == RpcEnvironmentType::CLI; - // FIXME: also allow a per-namespace pruning with max-depth + // FIXME: add max-depth let upid_str = WorkerTask::new_thread( "prune", diff --git a/src/backup/hierarchy.rs b/src/backup/hierarchy.rs index 6406902d..c17bdf5a 100644 --- a/src/backup/hierarchy.rs +++ b/src/backup/hierarchy.rs @@ -14,7 +14,7 @@ use pbs_datastore::{backup_info::BackupGroup, DataStore, ListGroups, ListNamespa /// Is basically just a filter-iter for pbs_datastore::ListNamespacesRecursive including access and /// optional owner checks. pub struct ListAccessibleBackupGroups<'a> { - store: Arc, + store: &'a Arc, auth_id: Option<&'a Authid>, user_info: Arc, state: Option, @@ -25,12 +25,12 @@ impl<'a> ListAccessibleBackupGroups<'a> { // TODO: builder pattern pub fn new( - store: Arc, + store: &'a Arc, ns: BackupNamespace, max_depth: usize, auth_id: Option<&'a Authid>, ) -> Result { - let ns_iter = ListNamespacesRecursive::new_max_depth(Arc::clone(&store), ns, max_depth)?; + let ns_iter = ListNamespacesRecursive::new_max_depth(Arc::clone(store), ns, max_depth)?; Ok(ListAccessibleBackupGroups { auth_id, ns_iter, diff --git a/src/backup/verify.rs b/src/backup/verify.rs index cf091e5e..c2731d82 100644 --- a/src/backup/verify.rs +++ b/src/backup/verify.rs @@ -518,7 +518,7 @@ pub fn verify_all_backups( }; // FIXME: This should probably simply enable recursion (or the call have a recursion parameter) - let store = Arc::clone(&verify_worker.datastore); + let store = &verify_worker.datastore; let max_depth = max_depth.unwrap_or(pbs_api_types::MAX_NAMESPACE_DEPTH); let mut list = match ListAccessibleBackupGroups::new(store, ns.clone(), max_depth, owner) {