jmsperu commented on code in PR #12847:
URL: https://github.com/apache/cloudstack/pull/12847#discussion_r3312576155


##########
core/src/main/java/org/apache/cloudstack/backup/TakeBackupCommand.java:
##########
@@ -89,6 +89,6 @@ public void setVolumePaths(List<String> volumePaths) {
 
     @Override
     public boolean executeInSequence() {
-        return true;
+        return false;

Review Comment:
   @DaanHoogland yes — this is the change that allows the parallel execution 
the PR title describes. With `executeInSequence` returning `true` (the previous 
default for `TakeBackupCommand`), the KVM agent serialises any other backup 
commands behind it; a long-running snapshot copy would block a concurrent 
delete on a different VM's backup. Flipping it to `false` lets the agent 
dispatch `DeleteBackupCommand` immediately alongside an in-flight 
`TakeBackupCommand`, which is the whole point of #12847.
   
   The safety case is bounded — the backup and delete operations target 
different on-NAS paths (each backup is named after its VM uuid + timestamp), so 
there's no path-level contention to worry about, and the NFS mount lifecycle is 
per-script-invocation, not shared. Happy to add an inline comment in 
`TakeBackupCommand.java` noting this if you'd like that documented at the class 
level.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to