JoaoJandre opened a new pull request, #14502:
URL: https://github.com/apache/cloudstack/pull/14502

   ### Description
   
   This PR fixes #14030 and #14019
   
   If the process for a disk-only VM snapshot merge fails for any reason and 
the process was already partially done, e.g. one of the VM's volumes was 
already merged, this may cause a de-synchronization between what the Management 
Server and the VM's actual metadata.
   
   This PR enhances the merge process so that if a previous merge attempt 
failed or stopped in the middle of the process, we can try again.
   
   ### Types of changes
   
   - [ ] Breaking change (fix or feature that would cause existing 
functionality to change)
   - [ ] New feature (non-breaking change which adds functionality)
   - [X] Bug fix (non-breaking change which fixes an issue)
   - [ ] Enhancement (improves an existing feature and functionality)
   - [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
   - [ ] Build/CI
   - [ ] Test (unit or integration test code)
   
   ### Feature/Enhancement Scale or Bug Severity
   
   #### Feature/Enhancement Scale
   
   - [ ] Major
   - [ ] Minor
   
   #### Bug Severity
   
   - [ ] BLOCKER
   - [ ] Critical
   - [X] Major
   - [ ] Minor
   - [ ] Trivial
   
   ### Screenshots (if appropriate):
   
   ### How Has This Been Tested?
   
   1. With a running VM, I created and deleted a VM snapshot
   2. With a running VM, I created a VM snapshot; wrote some files into the VM; 
started the deletion process and restarted the Management Server before it 
finished. I then tried the process again and it finished correctly
   3. With a running VM, I created a VM snapshot; wrote some files into the VM; 
started the deletion process and restarted the Agent before it finished. I then 
tried the process again and it finished correctly
   4. I lowered the timeout to 5 seconds. With a running VM, I added a second 
volume to the VM; I created a VM snapshot; wrote a lot of stuff to the second 
volume; deleted the VM snapshot. The first volume was merged but the second one 
timed out. I raised the timeout to 500 seconds and tried again, and the process 
finished correctly.
   
   I repeated the tests using `libvirt.events.enabled` as true. I also repeated 
the tests with a stopped VM.
   


-- 
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