Description of problem: calling status on an instance of class Vm(object) throws the following exception: 2016-01-05 23:41:17,725 - mom.GuestManager - ERROR - Guest Manager crashed Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/mom/GuestManager.py", line 114, in run File "/usr/lib/python2.6/site-packages/mom/HypervisorInterfaces/vdsmInterface.py", line 75, in getVmList File "/usr/share/vdsm/API.py", line 1380, in getVMList File "/usr/share/vdsm/API.py", line 1370, in reportedStatus File "/usr/share/vdsm/virt/vm.py", line 2817, in status File "/usr/share/vdsm/virt/vm.py", line 2817, in <genexpr> RuntimeError: dictionary changed size during iteration 2016-01-05 23:41:19,843 - mom - ERROR - Thread 'GuestManager' has exited Version-Release number of selected component (if applicable): vdsm-4.16.20-1.el6ev.x86_64 How reproducible: Randomly (race condition) Steps to Reproduce: Most probably by forcing massive live migration Actual results: the mentioned exception Expected results: Exception cannot raise Additional info: In this case the exception causes malfunctioning MoM as the GuestManager crashes due to this exception.
patch http://gerrit.ovirt.org/51657 is related but not required to fix this bug; removed.
verified on Red Hat Enterprise Virtualization Manager Version: 3.6.3.2-0.1.el6 mom-0.5.2-1.el7ev.noarch vdsm-4.17.21-0.el7ev.noarch verification steps: 1. Create a pool of 20 VMs (The hosts where very loaded, 5 Vms on each core) 2. Migrate all the 20 VMs 3. Check in mom logs To be sure, I repeated this steps several times. I didn't see this exception.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0362.html