Commit 156925e7 authored by Anael Beutot's avatar Anael Beutot
Browse files

Fix remove event handling in case we already removed the domain.

parent fceef3a8
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -673,10 +673,17 @@ class Hypervisor(object):
            self.domains[vm.name] = vm
            self.handler.tag_db.add_sub_object(vm.name, vm.tags.itervalues())
        elif event == 'Removed':
            try:
                vm = self.domains.pop(dom.name())
            logger.info('Removed domain %s', vm.name)
            except KeyError:
                # domain already removed, see hypervisor/domains/vm_tags.py
                # sometimes libvirt send us the remove event too late
                # we still update storage and tag attributes
                pass
            else:
                self.handler.tag_db.remove_sub_object(vm.name)
                # update Storage pools in case VM had volumes that were deleted
            logger.info('Removed domain %s', vm.name)
            self.storage.update()
        elif event in ('Started', 'Suspended', 'Resumed', 'Stopped', 'Saved',
                       'Restored'):