On Jul 8, 2014, at 22:36 , Adam Litke <alitke(a)redhat.com> wrote:
Hi all,
As part of the new live merge feature, when vdsm starts and has to
recover existing VMs, it calls VM._syncVolumeChain to ensure that
vdsm's view of the volume chain matches libvirt's. This involves two
kinds of operations: 1) sync VM object, 2) sync underlying storage
metadata via HSM.
This means that HSM must be up (and the storage domain(s) that the VM
is using must be accessible. When testing some rather eccentric error
flows, I am finding this to not always be the case.
Is there a way to have VM recovery wait on HSM to come up? How should
we respond if a required storage domain cannot be accessed? Is there
a mechanism in vdsm to schedule an operation to be retried at a later
time? Perhaps I could just schedule the sync and it could be retried
until the required resources are available.
I've briefly discussed with Federico some time ago that IMHO the syncVolumeChain needs
to be changed. It must not be part of VM's create flow as I expect this quite a
bottleneck in big-scale environment (it is now in fact not executing only on recovery but
on all 4 create flows!).
I don't know how yet, but we need to find a different way. Now you just added yet
another reason.
So…I too ask for more insights:-)
Thanks,
michal
Thanks for your insights.
--
Adam Litke
_______________________________________________
Devel mailing list
Devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel