[pbs-devel] [PATCH proxmox-backup v2 02/13] pbs-datastore: skip protected backups in pruning
Dominik Csapak
d.csapak at proxmox.com
Thu Sep 23 13:37:28 CEST 2021
as a separate keep reason so it will not be calculated for the other reasons
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
pbs-datastore/src/prune.rs | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/pbs-datastore/src/prune.rs b/pbs-datastore/src/prune.rs
index 3b4cf4f2..1eb4208f 100644
--- a/pbs-datastore/src/prune.rs
+++ b/pbs-datastore/src/prune.rs
@@ -7,7 +7,7 @@ use pbs_api_types::PruneOptions;
use super::BackupInfo;
-enum PruneMark { Keep, KeepPartial, Remove }
+enum PruneMark { Protected, Keep, KeepPartial, Remove }
fn mark_selections<F: Fn(&BackupInfo) -> Result<String, Error>> (
mark: &mut HashMap<PathBuf, PruneMark>,
@@ -30,6 +30,10 @@ fn mark_selections<F: Fn(&BackupInfo) -> Result<String, Error>> (
for info in list {
let backup_id = info.backup_dir.relative_path();
if mark.get(&backup_id).is_some() { continue; }
+ if info.protected {
+ mark.insert(backup_id, PruneMark::Protected);
+ continue;
+ }
let sel_id: String = select_id(&info)?;
if already_included.contains(&sel_id) { continue; }
--
2.30.2
More information about the pbs-devel
mailing list