Hi,
Can you please attach full engine and vdsm logs?
*Regards,*
*Shani Leviim*
On Fri, Feb 23, 2018 at 6:05 PM, pengyixiang <yxpengi386(a)163.com> wrote:
hello
I found if we retore snapshot, memory cannot be restored, I test it
with ovirt-4.1.2、vdsm-4.17.0 and libvirt-3.0.0,
and i get some errors in [1],it seems vm not paused in creating snapshot,
but self._underlyingCont() called in vm starting,
so error occurs, then vm is started in libvirt but shutdowned in vdsm,
changes in [2], then it works well.
[1]
2018-02-12 19:39:23,830+0800 ERROR (vm/d7be0fde) [virt.vm]
(vmId='d7be0fde-f9b9-4447-a250-2453482faef9') The vm start process failed
(vm:662)
Traceback (most recent call last):
File "/usr/share/vdsm/virt/vm.py", line 607, in _startUnderlyingVm
self._completeIncomingMigration()
File "/usr/share/vdsm/virt/vm.py", line 3268, in
_completeIncomingMigration
self.cont()
File "/usr/share/vdsm/virt/vm.py", line 1128, in cont
self._underlyingCont()
File "/usr/share/vdsm/virt/vm.py", line 3368, in _underlyingCont
self._dom.resume()
File "/usr/lib/python2.7/dist-packages/vdsm/virt/virdomain.py", line
69, in f
ret = attr(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/vdsm/libvirtconnection.py", line
123, in wrapper
ret = f(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/vdsm/utils.py", line 926, in
wrapper
return func(inst, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/libvirt.py", line 1905, in resume
if ret == -1: raise libvirtError ('virDomainResume() failed', dom=self)
libvirtError: Requested operation is not valid: domain is already running
[2]
--- a/Linx_Node/node_iso/install_script/py/vdsm/vdsm/virt/vm.py
+++ b/Linx_Node/node_iso/install_script/py/vdsm/vdsm/virt/vm.py
@@ -3677,6 +3677,8 @@ class Vm(object):
else:
snapFlags |= libvirt.VIR_DOMAIN_SNAPSHOT_CREATE_DISK_ONLY
+ self._underlyingPause()
+
# When creating memory snapshot libvirt will pause the vm
should_freeze = not (memoryParams or frozen)
@@ -3734,6 +3736,8 @@ class Vm(object):
if memoryParams:
self.cif.teardownVolumePath(memoryVol)
+ self._underlyingCont()
+
# Returning quiesce to notify the manager whether the guest agent
# froze and flushed the filesystems or not.
quiesce = should_freeze and freezed["status"]["code"] == 0
_______________________________________________
Users mailing list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/users