After the detach volume timeout, the disk is lost after soft reboot
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Triaged
|
Low
|
Unassigned |
Bug Description
Description
==================
When the detach disk timeout, and then soft reboot the virtual machine, the disk that was detach timeout was lost, but it is displayed in nova database and bind the vm in nova database.
Steps to reproduce
==================
1. create a windows vm,attach a disk to vm. make a big io to the disk.
2. detach disk timeout
3. soft reboot
4. disk is lost
Cause Analysis
==================
Because the detach disk first releases the persist xml now, when the live detach the disk timeout, the persist xml is also gone.
If the virtual machine is soft rebooted at this time, the virtual machine will be lost disk because the persistent xml is missing.
def _detach_with_retry(
if persistent_dev:
try:
The description make sense, this is how detach is implemented now.
One way to improve this is we change the order, first try to remove from the live domain as that fails more frequently than the detach from the persistent domain.