Instance's cleaned filed was set 1 after rollback at destination when do live-migration failed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
In Progress
|
Medium
|
Charlotte Han |
Bug Description
Description
===========
I did live-migration for an instance, error occured by libvirt process.
Then I found field of 'cleaned' was '1' in instances table, but this instance was not deleted.
Steps to reproduce
==================
* I did live-migrate instance:
$ nova live-migration --block fa0b2b1e-
* then I found this instance's vm_state was active and instance's host was still on source compute node.
log is as follow:
2016-07-02 12:06:19.656 4078 ERROR nova.virt.
2016-07-02 12:06:20.044 4078 ERROR nova.virt.
* then I query database
MariaDB [nova]> select uuid,updated_
+------
| uuid | updated_at | deleted | cleaned |
+------
| fa0b2b1e-
+------
1 row in set (0.00 sec)
MariaDB [nova]> select * from migrations where instance_
+------
| created_at | updated_at | deleted_at | id | source_compute | dest_compute | dest_host | status | instance_uuid | old_instance_
+------
| 2016-07-02 04:06:02 | 2016-07-02 04:06:20 | NULL | 1912 | SBCRslot2 | SBCR-chenling-slot4 | 10.43.239.3 | error | fa0b2b1e-
+------
1 row in set (0.00 sec)
Expected result
===============
I hope instance's cleaned is 0.
Actual result
=============
+------
| uuid | updated_at | deleted | cleaned |
+------
| fa0b2b1e-
+------
deleted == 0 and cleaned == 1, which is not consistent.
Environment
===========
1. Exact version of OpenStack you are running. See the following
Mitaka
2. Which hypervisor did you use?
Libvirt + KVM
3. Which storage type did you use?
Local storage
3. Which networking type did you use?
Neutron with OpenVSwitch
Changed in nova: | |
assignee: | nobody → Charlotte Han (hanrong) |
Changed in nova: | |
status: | New → In Progress |
Changed in nova: | |
importance: | Undecided → Medium |
I found when live-migration successfully, the value of field 'cleaned' of migrated instance was correct too.
deleted == 0 and cleaned == 1, which is not consistent.