Bug 1291569 - Live merge: Engine must refresh resized volume on HSM prior to starting merge
Live merge: Engine must refresh resized volume on HSM prior to starting merge
Product: ovirt-engine
Classification: oVirt
Component: BLL.Storage (Show other bugs)
Unspecified Unspecified
unspecified Severity high (vote)
: ovirt-3.6.2
: 3.6.2
Assigned To: Allon Mureinik
Aharon Canan
Depends On: 1274323 1292129
Blocks: 1232481
  Show dependency treegraph
Reported: 2015-12-15 03:11 EST by Tal Nisan
Modified: 2016-02-18 06:19 EST (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1274323
Last Closed: 2016-02-18 06:19:51 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: Storage
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
rule-engine: ovirt‑3.6.z+
ylavi: planning_ack+
tnisan: devel_ack+
acanan: testing_ack+

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
oVirt gerrit 47671 None None None Never
oVirt gerrit 50470 ovirt-engine-3.6 MERGED core, vdsbroker: Refresh volume after extension during Live Merge Never

  None (edit)
Description Tal Nisan 2015-12-15 03:11:22 EST
+++ This bug was initially created as a clone of Bug #1274323 +++

Description of problem:

If a drive was enlarged after creation of a snapshot then the volume associated with the snapshot will be smaller than the currently active volume.  If the snapshot volume is also on preallocated block storage then engine needs to manually enlarge the snapshot volume prior to starting a live merge.

Today, engine issues the extendVolumeSize call to SPM but it does not notify the host running the VM (HSM host) that the volume has been resized.  This means that when a VM is running on a non-SPM host the resize won't be picked up by qemu and the merge will fail.

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

How reproducible:

Steps to Reproduce:
1. Start a VM on a non-SPM host with a preallocated block disk
2. Create a snapshot involving the disk
3. Enlarge the disk by 1GB
4. Delete the snapshot

Actual results:
The merge fails with an error like the following on the HSM host:

libvirtError: internal error: unable to execute QEMU command 'block-commit': Top image /rhev/data-center/108151fa-1c40-4ee3-bae0-d91d0e56f44d/2276ca67-cdff-4bde-b437-446fc2e92a46/images/65ade35f-deed-4e0d-8a73-7c98c80fb661/b97c3c80-f781-4b51-bb79-5929fd9f3cf8 is larger than base image /rhev/data-center/108151fa-1c40-4ee3-bae0-d91d0e56f44d/2276ca67-cdff-4bde-b437-446fc2e92a46/images/65ade35f-deed-4e0d-8a73-7c98c80fb661/71bc1e19-e392-4121-9c2f-896d7402db22, and resize of base image failed: Invalid argument

Expected results:

The snapshot should be removed successfully.

Additional info:

--- Additional comment from Adam Litke on 2015-10-22 16:36 IDT ---

--- Additional comment from Adam Litke on 2015-10-22 16:37 IDT ---

--- Additional comment from Adam Litke on 2015-10-22 16:37 IDT ---

--- Additional comment from Adam Litke on 2015-10-22 16:38:46 IDT ---

I believe the proper way to fix this is for engine to issue a diskSizeExtend to the HSM host as discussed in the Feature Page for online disk resize:


--- Additional comment from Yaniv Dary on 2015-10-29 14:51:23 IST ---

In oVirt testing is done on single release by default. Therefore I'm removing the 4.0 flag. If you think this bug must be tested in 4.0 as well, please re-add the flag. Please note we might not have testing resources to handle the 4.0 clone.
Comment 1 Red Hat Bugzilla Rules Engine 2015-12-15 03:11:26 EST
Bug tickets must have version flags set prior to targeting them to a release. Please ask maintainer to set the correct version flags and only then set the target milestone.
Comment 2 Sandro Bonazzola 2015-12-23 08:43:52 EST
oVirt 3.6.2 RC1 has been released for testing, moving to ON_QA
Comment 3 Aharon Canan 2015-12-29 06:53:22 EST
Verified using the following versions:
rhevm-3.6.2-0.1.el6.noarch - running on Rhel6.7
vdsm-4.17.14-0.el7ev.noarch - running on Rhel7.2

Scenario 1:
1. Create a VM with 1gb preallocated disk on a block-based domain.
2. Create a snapshot.
3. Extend the disk to 2gb.
4. Start the VM on HSM.
5. Delete the snapshot

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