Bug 1983661 - [CBT] committing a snapshot after backup tries to clear bitmaps on RAW volumes
Summary: [CBT] committing a snapshot after backup tries to clear bitmaps on RAW volumes
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: BLL.Storage
Version: 4.4.8
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ovirt-4.4.8
: ---
Assignee: Benny Zlotnik
QA Contact: Amit Sharir
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-07-19 12:07 UTC by Benny Zlotnik
Modified: 2021-08-19 06:23 UTC (History)
5 users (show)

Fixed In Version: ovirt-engine-4.4.8.1
Clone Of:
Environment:
Last Closed: 2021-08-19 06:23:12 UTC
oVirt Team: Storage
Embargoed:
pm-rhel: ovirt-4.4+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 115757 0 master MERGED core: don't clear bitmaps on RAW volumes 2021-07-20 17:52:51 UTC

Description Benny Zlotnik 2021-07-19 12:07:52 UTC
Description of problem:
Trying to commit a snapshot of a VM that had full backup taken on it fails on clearing bitmaps:
89b-d7ba85a7bcbc] Command ClearVolumeBitmaps id: 'b02baa74-e299-46fe-94a9-1ed06b7f0ffd': job '13774a78-5446-4b9e-954d-8ecb04c708be' execution was completed with VDSM job status 'failed'
2021-07-15 08:27:46,167-04 INFO  [org.ovirt.engine.core.bll.StorageJobCallback] (EE-ManagedScheduledExecutorService-engineScheduledThreadPool-Thread-95) [5bf26728-5adf-439b-a89b-d7ba85a7bcbc] Command ClearVolumeBitmaps id: 'b02baa74-e299-46fe-94a9-1ed06b7f0ffd': execution was completed, the command status is 'FAILED'
...
2021-07-15 08:27:49,270-04 INFO  [org.ovirt.engine.core.bll.ConcurrentChildCommandsExecutionCallback] (EE-ManagedScheduledExecutorService-engineScheduledThreadPool-Thread-24) [5bf26728-5adf-439b-a89b-d7ba85a7bcbc] Command 'RestoreAllSnapshots' id: '2d15da24-bfc5-4d78-9579-e49d085bf9f1' child commands '[d3df4956-eaee-44e0-8173-cde25107a233, d2238285-f3d9-471b-a6b9-dca0885f50a7]' executions were completed, status 'FAILED'


The error in vdsm is:
2021-07-18 10:09:30,415-0400 INFO  (jsonrpc/5) [vdsm.api] START sdm_clear_bitmaps(job_id='03d5a5b4-6bce-4aca-be9d-fe616ca09844', vol_info={'generation': 0, 'sd_id': '3a1bee04
-5ba2-4197-9534-ca55b63f978b', 'img_id': '1a67760c-1f33-41b9-aeb4-8c0c6e550b40', 'vol_id': 'b3494930-f36c-4461-9e34-a1384ba03283'}) from=::ffff:10.35.0.243,36010, flow_id=d1b
1ddfd-c56d-4baf-bb4f-13dfa94d8526, task_id=a178a0ff-2475-47ef-b94f-48daa54546e3 (api:48)
...
2021-07-18 10:09:30,899-0400 ERROR (tasks/0) [root] Job '03d5a5b4-6bce-4aca-be9d-fe616ca09844' failed (jobs:223)
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/vdsm/jobs.py", line 159, in run
    self._run()
  File "/usr/lib/python3.6/site-packages/vdsm/storage/sdm/api/clear_bitmaps.py", line 49, in _run
    self._validate()
  File "/usr/lib/python3.6/site-packages/vdsm/storage/sdm/api/clear_bitmaps.py", line 40, in _validate
    vol_uuid=self._vol_info.vol_id)
vdsm.storage.exception.UnsupportedOperation: Unsupported operation: "reason=Volume is not in COW format, context={'vol_uuid': 'b3494930-f36c-4461-9e34-a1384ba03283'}"



Version-Release number of selected component (if applicable):


How reproducible:
always

Steps to Reproduce:
1. Create a VM with a raw disk
2. Create multiple snapshots
3. run full backup using[1]
$ python3 backup_vm.py -c engine full <vm-id>
4. Preview one of the snapshots
5. Commit this snapshot


Actual results:
Failure to clear bitmaps on the volume


Expected results:
No failure should be observed as we don't need to try to clear bitmaps on RAW volumes


Additional info:
[1] https://github.com/oVirt/ovirt-engine-sdk/blob/master/sdk/examples/backup_vm.py

Comment 4 Amit Sharir 2021-07-26 08:59:37 UTC
Version: 
vdsm-4.40.80.2-1.el8ev.x86_64
ovirt-engine-4.4.8.1-0.9.el8ev.noarch


Verification steps:
1. I Created a VM with a raw disk (via UI - thin provisioned disk on NFS SD)
2. Validated that the disk I created is RAW using API call - <{{engine}}/disks/6b816761-c10d-4831-98dc-72c4491b01cb>
3. Created 3 snapshots.
4. ran full backup using[1]
$ python3 backup_vm.py -c engine full <vm-id>
5. Previewed the second snapshot.
6. Committed the second snapshot.


Verification conclusions:
The expected output matched the actual output.
The total flow mentioned was done with no errors.
The VM snapshot of the RAW disk was restored successfully after the commit - <Restoring VM Snapshot snap2 of VM test1059 was completed successfully> 
 


Bug verified.

Comment 5 Sandro Bonazzola 2021-08-19 06:23:12 UTC
This bugzilla is included in oVirt 4.4.8 release, published on August 19th 2021.

Since the problem described in this bug report should be resolved in oVirt 4.4.8 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.


Note You need to log in before you can comment on or make changes to this bug.