Nir Soffer has posted comments on this change. Change subject: vm: document disk stats collection on recovery ......................................................................
Patch Set 2: (1 comment) http://gerrit.ovirt.org/#/c/32406/2/vdsm/virt/vm.py File vdsm/virt/vm.py: Line 2914: # notification of that event yet. Line 2915: # Thus, in the clientIF:_recoverExistingVms() there is an explicit Line 2916: # last step, on which irs state is polled; when it is ready, Line 2917: # it invokes preparePaths for each recovered VM, completing Line 2918: # the recovery and starting disk stats collection. > Looks good, need to check the flow to be sure that this is correct. Generally this is correct, but in _recoverExistingVms() irs.ready is *not* checked, instead the code call irs method that can return non-empty result only after irs is ready. But I don't think we should get into these details, because it is too fragile to document a code in clientIF.py n vm.py. So lets shorten this to something like: # Note that we do not start disk stat collection here since in the recovery # flow irs may not be ready yet. Disk stats collection is started from on # the end of the recovery process. Now I think we have a leak of storage domain ids in the self.sdIds list in the recovery flow: - We add the domain id once here - And again in perparePath called on the end of the recovery thread - We remove domain id only once So after recovering N disks from some domain, we will have 2*N items with the domain id in self.sdIds. I'm not sure this cause any harm. I guess the solution would be to change the list to a counting dictionary, or remove self.sdIds and check for domain ids by iterating devices. This value is used only when unpausing a vm after a domain become valid. The code in clientIF unpaused only vms which has the domain id in vm.sdIds. Line 2919: Line 2920: for devType, devClass in self.DeviceMapping: Line 2921: for dev in devices[devType]: Line 2922: self._devices[devType].append(devClass(self.conf, self.log, -- To view, visit http://gerrit.ovirt.org/32406 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ibd7d32373f5a0a7dd4ef88c5a0ad5a9f3d52938c Gerrit-PatchSet: 2 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Francesco Romani <[email protected]> Gerrit-Reviewer: Dan Kenigsberg <[email protected]> Gerrit-Reviewer: Francesco Romani <[email protected]> Gerrit-Reviewer: Michal Skrivanek <[email protected]> Gerrit-Reviewer: Nir Soffer <[email protected]> Gerrit-Reviewer: Vinzenz Feenstra <[email protected]> Gerrit-Reviewer: [email protected] Gerrit-Reviewer: oVirt Jenkins CI Server Gerrit-HasComments: Yes _______________________________________________ vdsm-patches mailing list [email protected] https://lists.fedorahosted.org/mailman/listinfo/vdsm-patches
