Optimize removing snapshots before undefining domains

This commit is contained in:
nfedotov
2013-11-05 17:10:15 +04:00
parent df2902c6f1
commit 2b3372a5eb
2 changed files with 7 additions and 4 deletions

View File

@@ -182,12 +182,16 @@ class DevopsDriver(object):
self.conn.lookupByUUIDString(node.uuid).destroy()
@retry()
def node_undefine(self, node):
def node_undefine(self, node, undefine_snapshots=False):
"""
:type node: Node
:rtype : None
"""
self.conn.lookupByUUIDString(node.uuid).undefine()
domain = self.conn.lookupByUUIDString(node.uuid)
if undefine_snapshots:
domain.undefineFlags(libvirt.VIR_DOMAIN_UNDEFINE_SNAPSHOTS_METADATA)
else:
domain.undefine()
@retry()
def node_get_vnc_port(self, node):

View File

@@ -274,8 +274,7 @@ class Node(ExternalModel):
if verbose or self.uuid:
if verbose or self.driver.node_exists(self):
self.destroy(verbose=False)
self.driver.node_delete_all_snapshots(node=self)
self.driver.node_undefine(self)
self.driver.node_undefine(self, undefine_snapshots=True)
self.delete()
def suspend(self, verbose=False):