Bug 1919248
Summary: | [CBT] Race condition in deleting checkpoints causes inconsistency and failed backups | ||
---|---|---|---|
Product: | [oVirt] ovirt-engine | Reporter: | Jean-Louis Dupond <jean-louis> |
Component: | BLL.Storage | Assignee: | Eyal Shenitzky <eshenitz> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Ilan Zuckerman <izuckerm> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 4.4.4.5 | CC: | ahadas, bugs, dfodor, eshenitz, sfishbai |
Target Milestone: | ovirt-4.4.6 | ||
Target Release: | 4.4.6.4 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | ovirt-engine-4.4.6.4 | Doc Type: | No Doc Update |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2021-05-05 05:36:08 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | Storage | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Jean-Louis Dupond
2021-01-22 12:50:56 UTC
The documentation text flag should only be set after 'doc text' field is provided. Please provide the documentation text and set the flag to '?' again. Please describe steps to verify this. thanks. Steps to reproduce: 1) Create a VM with disk enabled for backup 2) Run the VM 3) start a full backup 4) finalize the backup 5) start and incremental backup 6) finalize the incremental backup 7) Turn off the VM 8) Start the VM 9) When the VM is UP remove the root checkpoint and immediately, remove it again from a different shell/client. Expected results - The first call to remove the checkpoint should succeed, the second should fail. Verified on rhv-4.4.6-4 according steps from comment #3 Second (immediate) attempt of removing the root checkpoint failed as expected. 9) When the VM is UP remove the root checkpoint and immediately, remove it again from a different shell/client. First shell: [root@storage-ge13-vdsm2 examples]# python3 remove_checkpoint.py 0d688b5a-799d-4f83-956c-0c999afa3461 -c engine [ 0.0 ] Removing root checkpoint for VM '0d688b5a-799d-4f83-956c-0c999afa3461' [ 0.0 ] Looking up checkpoints 0d688b5a-799d-4f83-956c-0c999afa3461 [ 2.6 ] Removing root checkpoint 'b7c5a5a6-8199-4ccb-8877-6fa264d85be6' [ 4.6 ] Root checkpoint removed successfully Second shell: [root@storage-ge13-vdsm2 examples]# python3 remove_checkpoint.py 0d688b5a-799d-4f83-956c-0c999afa3461 -c engine [ 0.0 ] Removing root checkpoint for VM '0d688b5a-799d-4f83-956c-0c999afa3461' [ 0.0 ] Looking up checkpoints 0d688b5a-799d-4f83-956c-0c999afa3461 [ 1.6 ] Removing root checkpoint 'b7c5a5a6-8199-4ccb-8877-6fa264d85be6' Traceback (most recent call last): File "remove_checkpoint.py", line 63, in <module> checkpoint_service.remove() File "/usr/lib64/python3.6/site-packages/ovirtsdk4/services.py", line 34479, in remove self._internal_remove(headers, query, wait) File "/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py", line 271, in _internal_remove return future.wait() if wait else future File "/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py", line 55, in wait return self._code(response) File "/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py", line 268, in callback self._check_fault(response) File "/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py", line 132, in _check_fault self._raise_error(response, body) File "/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py", line 118, in _raise_error raise error ovirtsdk4.Error: Fault reason is "Operation Failed". Fault detail is "[Cannot remove ${type}. The VM is during a checkpoint removal operation.]". HTTP response code is 409. Engine log: 2021-04-19 11:14:40,994+03 INFO [org.ovirt.engine.core.bll.storage.backup.DeleteVmCheckpointCommand] (default task-86) [fe7dca46-912e-49c0-b664-3d38464d5b10] Redefine previous VM checkpoints for VM '0d688b5a-799d-4f83-956c-0c999afa3461' 2021-04-19 11:14:41,008+03 ERROR [org.ovirt.engine.api.restapi.resource.AbstractBackendResource] (default task-85) [] Operation Failed: [Cannot remove ${type}. The VM is during a checkpoint removal operation.] This bugzilla is included in oVirt 4.4.6 release, published on May 4th 2021. Since the problem described in this bug report should be resolved in oVirt 4.4.6 release, it has been closed with a resolution of CURRENT RELEASE. If the solution does not work for you, please open a new bug report. |