[pbs-devel] [PATCH proxmox-backup ] datastore maintenance mode update: correctly track maintenance mode changes

Dietmar Maurer dietmar at proxmox.com
Wed Apr 17 14:19:46 CEST 2024


Signed-off-by: Dietmar Maurer <dietmar at proxmox.com>
---
 src/api2/config/datastore.rs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/api2/config/datastore.rs b/src/api2/config/datastore.rs
index 3081e1f4..dc658e35 100644
--- a/src/api2/config/datastore.rs
+++ b/src/api2/config/datastore.rs
@@ -276,6 +276,8 @@ pub fn update_datastore(
 
     let mut data: DataStoreConfig = config.lookup("datastore", &name)?;
 
+    let mut maintenance_mode_changed = false;
+
     if let Some(delete) = delete {
         for delete_prop in delete {
             match delete_prop {
@@ -319,6 +321,9 @@ pub fn update_datastore(
                     data.tuning = None;
                 }
                 DeletableProperty::MaintenanceMode => {
+                    if data.maintenance_mode.is_some() && data.update.maintenance_mode.is_none() {
+                        maintenance_mode_changed = true;
+                    }
                     data.maintenance_mode = None;
                 }
             }
@@ -389,7 +394,6 @@ pub fn update_datastore(
         data.tuning = update.tuning;
     }
 
-    let mut maintenance_mode_changed = false;
     if update.maintenance_mode.is_some() {
         maintenance_mode_changed = data.maintenance_mode != update.maintenance_mode;
         data.maintenance_mode = update.maintenance_mode;
-- 
2.39.2




More information about the pbs-devel mailing list