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]