diff --git a/node-daemon/pvcnoded/VMInstance.py b/node-daemon/pvcnoded/VMInstance.py index 62be6d35..6a20222b 100644 --- a/node-daemon/pvcnoded/VMInstance.py +++ b/node-daemon/pvcnoded/VMInstance.py @@ -108,6 +108,8 @@ class VMInstance(object): self.state = zkhandler.readdata(self.zk_conn, '/domains/{}/state'.format(self.domuuid)) self.node = zkhandler.readdata(self.zk_conn, '/domains/{}/node'.format(self.domuuid)) self.lastnode = zkhandler.readdata(self.zk_conn, '/domains/{}/lastnode'.format(self.domuuid)) + self.last_currentnode = zkhandler.readdata(self.zk_conn, '/domains/{}/node'.format(self.domuuid)) + self.last_lastnode = zkhandler.readdata(self.zk_conn, '/domains/{}/lastnode'.format(self.domuuid)) try: self.pinpolicy = zkhandler.readdata(self.zk_conn, '/domains/{}/pinpolicy'.format(self.domuuid)) except: @@ -359,7 +361,6 @@ class VMInstance(object): self.logger.out('Queueing for completion of existing migration', state='i', prefix='Domain {}'.format(self.domuuid)) while zkhandler.readdata(self.zk_conn, '/locks/domain_migrate') != '': time.sleep(0.1) - time.sleep(0.2) self.inmigrate = True self.logger.out('Migrating VM to node "{}"'.format(self.node), state='i', prefix='Domain {}'.format(self.domuuid)) @@ -370,7 +371,7 @@ class VMInstance(object): zkhandler.writedata(self.zk_conn, { '/domains/{}/state'.format(self.domuuid): 'start', '/domains/{}/node'.format(self.domuuid): self.this_node.name, - '/domains/{}/lastnode'.format(self.domuuid): '' + '/domains/{}/lastnode'.format(self.domuuid): self.last_lastnode }) # Acquire exclusive lock on the domain node key @@ -440,6 +441,9 @@ class VMInstance(object): self.console_log_instance.stop() self.removeDomainFromList() + self.last_currentnode = zkhandler.readdata(self.zk_conn, '/domains/{}/node'.format(self.domuuid)) + self.last_lastnode = zkhandler.readdata(self.zk_conn, '/domains/{}/lastnode'.format(self.domuuid)) + return True def migrate_shutdown(): @@ -523,7 +527,6 @@ class VMInstance(object): self.logger.out('Queueing for completion of existing migration', state='i', prefix='Domain {}'.format(self.domuuid)) while zkhandler.readdata(self.zk_conn, '/locks/domain_migrate') != '': time.sleep(0.1) - time.sleep(0.5) self.inreceive = True live_receive = True