[virt-tools-list] [Patch V2] Add virDomainSetMigrateMaxDowntime support
Wen Congyang
wency at cn.fujitsu.com
Tue Nov 30 03:24:34 UTC 2010
At 2010-11-30 08:15, Cole Robinson Write:
>
> Hmm, I didn't think of that. I've pushed a change to virtinst now that
> should practically eliminate the likelihood of side effects:
>
> http://hg.fedorahosted.org/hg/python-virtinst/rev/df54d069af85
>
> I'd be interested in a follow up patch to clean up these comments, and
> use the support check earlier in the migrate dialog.
>
> Thanks,
> Cole
>
# HG changeset patch
# User Wen Congyang <wency at cn.fujitsu.com>
# Date 1291087313 -28800
# Node ID 85433ed45ba949b868457ef67d6cae42158dae80
# Parent 6437bc731bb0d32bcc127184a6d69258c043a542
check whether the domain supports downtime early
diff -r 6437bc731bb0 -r 85433ed45ba9 src/virtManager/domain.py
--- a/src/virtManager/domain.py Mon Nov 29 16:58:23 2010 +0800
+++ b/src/virtManager/domain.py Tue Nov 30 11:21:53 2010 +0800
@@ -858,8 +858,6 @@
return self._backend.XMLDesc(flags)
def support_downtime(self):
- # Note: this function has side effect
- # if domain supports downtime, the downtime may be overriden to 30ms
return support.check_domain_support(self._backend,
support.SUPPORT_DOMAIN_MIGRATE_DOWNTIME)
diff -r 6437bc731bb0 -r 85433ed45ba9 src/virtManager/migrate.py
--- a/src/virtManager/migrate.py Mon Nov 29 16:58:23 2010 +0800
+++ b/src/virtManager/migrate.py Tue Nov 30 11:21:53 2010 +0800
@@ -146,6 +146,15 @@
self.window.get_widget("migrate-rate").set_value(0)
self.window.get_widget("migrate-secure").set_active(False)
+ downtime_box = self.window.get_widget("migrate-maxdowntime-box")
+ support_downtime = self.vm.support_downtime()
+ downtime_tooltip = ""
+ if not support_downtime:
+ downtime_tooltip = _("Libvirt version does not support setting "
+ "downtime.")
+ downtime_box.set_sensitive(support_downtime)
+ util.tooltip_wrapper(downtime_box, downtime_tooltip)
+
if self.conn.is_xen():
# Default xen port is 8002
self.window.get_widget("migrate-port").set_value(8002)
@@ -497,13 +506,9 @@
logging.debug("Migrating vm=%s from %s to %s", vm.get_name(),
srcconn.get_uri(), dstconn.get_uri())
timer = None
- if max_downtime != 0 and vm.support_downtime():
+ if max_downtime != 0:
# 0 means that the spin box migrate-max-downtime does not
# be enabled.
- #
- # We should check whether the domain supports downtime
- # early, but vm.support_downtime() has side effect, so
- # we check it only when user needs to modify downtime...
current_thread = threading.currentThread()
timer = util.safe_timeout_add(100,
self._async_set_max_downtime,
More information about the virt-tools-list
mailing list