Loading cloudcontrol/node/hypervisor/__init__.py +12 −2 Original line number Diff line number Diff line import logging import os import sys import signal import socket import time import weakref import traceback from StringIO import StringIO from itertools import chain, imap from xml.etree import cElementTree as et Loading Loading @@ -356,8 +358,11 @@ class Handler(HostHandler): if pid == 0: # child sys.stderr.write('Hello from child !\n') sys.stderr.write('Debug is %s\n' % self.main.config.debug) # FIXME we should close all unused fds # create a new libvirt connection dedicated to migration sys.stderr.write('Open new connection to libvirt\n') try: new_con = libvirt.open('qemu:///system') domain = new_con.lookupByUUIDString(vm.uuid) Loading @@ -366,8 +371,9 @@ class Handler(HostHandler): os._exit(4) except: # error # TODO print traceback traceback.print_exc(sys.stderr) os._exit(2) sys.stderr.write('Open destination libvirt connection\n') try: dest_virt_con = libvirt.open( 'qemu+tcp://127.0.0.1:%d/system' % remote_virt_port) Loading @@ -377,7 +383,7 @@ class Handler(HostHandler): os._exit(5) except: # error # TODO print traceback traceback.print_exc(file=sys.stderr) os._exit(2) try: Loading @@ -386,6 +392,7 @@ class Handler(HostHandler): append_flags = getattr(libvirt, 'VIR_MIGRATE_UNSAFE', 0) else: append_flags = 0 sys.stderr.write('Do migrate\n') domain.migrate( dest_virt_con, libvirt.VIR_MIGRATE_LIVE | libvirt.VIR_MIGRATE_PEER2PEER | Loading @@ -398,9 +405,11 @@ class Handler(HostHandler): 0, ) except libvirt.libvirtError: traceback.print_exc(file=sys.stderr) os._exit(1) except: # whatever the matter is we MUST NOT return to libev or sjRPC traceback.print_exc(file=sys.stderr) os._exit(2) else: os._exit(0) Loading @@ -424,6 +433,7 @@ class Handler(HostHandler): # convert status to return status status >>= 8 logger.debug('Status: %s', status) if rpid == status == 0: if time.time() - started_migration < timeout: continue Loading Loading
cloudcontrol/node/hypervisor/__init__.py +12 −2 Original line number Diff line number Diff line import logging import os import sys import signal import socket import time import weakref import traceback from StringIO import StringIO from itertools import chain, imap from xml.etree import cElementTree as et Loading Loading @@ -356,8 +358,11 @@ class Handler(HostHandler): if pid == 0: # child sys.stderr.write('Hello from child !\n') sys.stderr.write('Debug is %s\n' % self.main.config.debug) # FIXME we should close all unused fds # create a new libvirt connection dedicated to migration sys.stderr.write('Open new connection to libvirt\n') try: new_con = libvirt.open('qemu:///system') domain = new_con.lookupByUUIDString(vm.uuid) Loading @@ -366,8 +371,9 @@ class Handler(HostHandler): os._exit(4) except: # error # TODO print traceback traceback.print_exc(sys.stderr) os._exit(2) sys.stderr.write('Open destination libvirt connection\n') try: dest_virt_con = libvirt.open( 'qemu+tcp://127.0.0.1:%d/system' % remote_virt_port) Loading @@ -377,7 +383,7 @@ class Handler(HostHandler): os._exit(5) except: # error # TODO print traceback traceback.print_exc(file=sys.stderr) os._exit(2) try: Loading @@ -386,6 +392,7 @@ class Handler(HostHandler): append_flags = getattr(libvirt, 'VIR_MIGRATE_UNSAFE', 0) else: append_flags = 0 sys.stderr.write('Do migrate\n') domain.migrate( dest_virt_con, libvirt.VIR_MIGRATE_LIVE | libvirt.VIR_MIGRATE_PEER2PEER | Loading @@ -398,9 +405,11 @@ class Handler(HostHandler): 0, ) except libvirt.libvirtError: traceback.print_exc(file=sys.stderr) os._exit(1) except: # whatever the matter is we MUST NOT return to libev or sjRPC traceback.print_exc(file=sys.stderr) os._exit(2) else: os._exit(0) Loading @@ -424,6 +433,7 @@ class Handler(HostHandler): # convert status to return status status >>= 8 logger.debug('Status: %s', status) if rpid == status == 0: if time.time() - started_migration < timeout: continue Loading