Nir Soffer has posted comments on this change.

Change subject: Live Merge: Refresh base volume before live merge
......................................................................


Patch Set 3:

(3 comments)

https://gerrit.ovirt.org/#/c/63454/3//COMMIT_MSG
Commit Message:

Line 9: When performing live merge to a RAW base volume, we have to
Line 10: refresh the volume before performing the live merge. This is
Line 11: needed because extending the base volume is done on the SPM and
Line 12: refresh volume will cause other hosts to refresh the volume to get
Line 13: the new size. Not doing so may end up with libvirt error
I don't understand this part.

I would describe it like this:

    When live merging info raw base volume, engine extends the base
    volume if it is smaller than the top volume. However, on the host 
    running the vm, the lv is already active and does not reflect the new
    size until we refresh it.
Line 14: indicating that top volume size is larger than base volume, which
Line 15: exactly what happened in the reported BZ.
Line 16: 
Line 17: Change-Id: I787d6854e780035b09e4f09d71ca776342dff5be


Line 11: needed because extending the base volume is done on the SPM and
Line 12: refresh volume will cause other hosts to refresh the volume to get
Line 13: the new size. Not doing so may end up with libvirt error
Line 14: indicating that top volume size is larger than base volume, which
Line 15: exactly what happened in the reported BZ.
Also note that we don't know if the base was extended when starting a merge, so 
we always refresh it.
Line 16: 
Line 17: Change-Id: I787d6854e780035b09e4f09d71ca776342dff5be
Line 18: Bug-Url: https://bugzilla.redhat.com/1367281


https://gerrit.ovirt.org/#/c/63454/3/vdsm/virt/vm.py
File vdsm/virt/vm.py:

Line 4433:         if not self._can_merge_into(drive, baseInfo, topInfo):
Line 4434:             return errCode['destVolumeTooSmall']
Line 4435: 
Line 4436:         # If the base volume format is RAW, we have to refresh the 
volume
Line 4437:         # in order to enforce other hosts to load new volume size. 
Not
Refreshing the lv effect only this host, causing lvm to get the current lv size 
from storage, and update the kernel so the lv reflect the real
size on storage.

This has nothing to do with other hosts.
Line 4438:         # doing so may end up with error that top volume size is 
larger
Line 4439:         # base volume size. This could happen if disk extended after 
taking
Line 4440:         # a snapshot but before performing the live merge.
Line 4441:         # See https://bugzilla.redhat.com/1367281


-- 
To view, visit https://gerrit.ovirt.org/63454
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I787d6854e780035b09e4f09d71ca776342dff5be
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ala Hino <ah...@redhat.com>
Gerrit-Reviewer: Adam Litke <ali...@redhat.com>
Gerrit-Reviewer: Ala Hino <ah...@redhat.com>
Gerrit-Reviewer: Allon Mureinik <amure...@redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Nir Soffer <nsof...@redhat.com>
Gerrit-Reviewer: gerrit-hooks <automat...@ovirt.org>
Gerrit-HasComments: Yes
_______________________________________________
vdsm-patches mailing list
vdsm-patches@lists.fedorahosted.org
https://lists.fedorahosted.org/admin/lists/vdsm-patches@lists.fedorahosted.org

Reply via email to