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/569655 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=e0534442b53 1c3f89c9c19d954 91dcddd5b0fe41
Committed: https:/
Submitter: Zuul
Branch: stable/ocata
commit e0534442b531c3f 89c9c19d95491dc ddd5b0fe41
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