It is possible to shelve a paused instance, but in that case the
guest is already shutdown, and some hypervisors will fail when
trying to perform a clean shutdown of a non-running guest. For
example, attempting to shelve a paused libvirt instance will
result in this error:
libvirtError: Requested operation is not valid: domain is not running
Therefore, if the instance is paused, we don't attempt a clean
shutdown while shelving.
Reviewed: https:/ /review. openstack. org/569650 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=f521e03f8e1 524f5abfef6497b 5b1a57daba7ced
Committed: https:/
Submitter: Zuul
Branch: stable/queens
commit f521e03f8e1524f 5abfef6497b5b1a 57daba7ced
Author: LeopardMa <email address hidden>
Date: Wed Feb 7 10:21:08 2018 +0800
Fix shelving a paused instance
It is possible to shelve a paused instance, but in that case the
guest is already shutdown, and some hypervisors will fail when
trying to perform a clean shutdown of a non-running guest. For
example, attempting to shelve a paused libvirt instance will
result in this error:
libvirtError: Requested operation is not valid: domain is not running
Therefore, if the instance is paused, we don't attempt a clean
shutdown while shelving.
Related Tempest test: https:/ /review. openstack. org/564127/
Closes-Bug: #1745529 01fbe8513a6c1db a8b697c24e4 1b5253a1568b22a f1d9dd1a08)
Change-Id: I8ca25d9847d500
(cherry picked from commit d5901f613cf98f6