Bug 1179688 - faulty storage allocation checks when adding a vm from template
Summary: faulty storage allocation checks when adding a vm from template
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 3.5.0
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: 3.5.0
Assignee: Vered Volansky
QA Contact: Kevin Alon Goldblatt
URL:
Whiteboard: storage
Depends On:
Blocks: 960934
TreeView+ depends on / blocked
 
Reported: 2015-01-07 10:52 UTC by Vered Volansky
Modified: 2016-02-10 19:23 UTC (History)
12 users (show)

Fixed In Version: org.ovirt.engine-root-3.5.0-30
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-02-15 09:15:11 UTC
oVirt Team: Storage
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:0230 0 normal SHIPPED_LIVE Red Hat Enterprise Virtualization Manager 3.5.0-1 ASYNC 2015-02-16 19:50:27 UTC
oVirt gerrit 36617 0 master MERGED core: Storage allocation validation fix on new VMs Never
oVirt gerrit 36686 0 ovirt-engine-3.5 MERGED core: Storage allocation validation fix on new VMs Never

Description Vered Volansky 2015-01-07 10:52:48 UTC
Create a new VM and base it on a template in two methods, thinly provisioned or cloned.

1. When thin provisioning is chosen, AddVmCommand is called, and a VM is added with empty disks, thinly provisioned from the template.
Storage Allocation checks in this case should take into consideration that the new disks will always be SPARSE/COW, i.e., 1G on block domains, 1M on file domains, according to the tracker bug tables (bz960934).

2. When clone is chosen, AddVmFromTemplateCommand is called, and a VM is added with cloned disks, cloned from the template, where the regular validations for cloned disks should be made:

      | File Domain                             | Block Domain
 -----|-----------------------------------------|-------------
 qcow | preallocated : 1.1 * disk capacity      |1.1 * min(used ,capacity) 
      | sparse: 1.1 * min(used ,capacity)       |
 -----|-----------------------------------------|-------------
 raw  | preallocated: disk capacity             |disk capacity
      | sparse: min(used,capacity)


Verification should include a storage domain with and without enough space for  the vm (with disks).
Special care should be taken with the right verifications in these two specific flows.
In case of insufficient space a relevant CDA message should pop.

Comment 1 Allon Mureinik 2015-01-11 12:17:53 UTC
Additional insight: In 3.5.0, before the patch referenced in the tracker, there was a faulty allocation check that took into consideration the size of the template's disk, instead of just a thin QCOW layer on top of it.

The meaning of this is that if the template uses preallocated disks, you must have enough space for another preallocated disk when adding a VM based on it, effectively killing the notion of over-committing storage.
Thus, marking as a REGRESSION.

Comment 2 Kevin Alon Goldblatt 2015-01-21 13:18:31 UTC
Verified with v3.5 vt13.8

Comment 4 Eyal Edri 2015-02-15 09:15:11 UTC
bugs were moved by ERRATA to RELEASE PENDING bug not closed probably due to errata error.
closing as 3.5.0 is released.


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