Public bug reported:

If you look at the allowed task_states for hard reboot in the API here:

https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/api.py#L2963

it allows these values:

https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/task_states.py#L120

ALLOW_REBOOT = [None, REBOOTING, REBOOT_PENDING, REBOOT_STARTED, RESUMING,
                REBOOTING_HARD, UNPAUSING, PAUSING, SUSPENDING]

But when changing the task_state on the instance, if it's currently
'pausing' it will fail because that's not one of the
expected_task_states:

https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/api.py#L2966

        expected_task_state = [None,
                               task_states.REBOOTING,
                               task_states.REBOOT_PENDING,
                               task_states.REBOOT_STARTED,
                               task_states.REBOOTING_HARD,
                               task_states.RESUMING,
                               task_states.UNPAUSING,
                               task_states.SUSPENDING]
        instance.save(expected_task_state = expected_task_state)

It looks like this is just a very old latent problem, see:
https://review.openstack.org/#/c/127427/

** Affects: nova
     Importance: Medium
         Status: Triaged


** Tags: api reboot

** Changed in: nova
       Status: New => Triaged

** Changed in: nova
   Importance: Undecided => Medium

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1768927

Title:
  Unable to hard reboot an instance that is pausing

Status in OpenStack Compute (nova):
  Triaged

Bug description:
  If you look at the allowed task_states for hard reboot in the API
  here:

  
https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/api.py#L2963

  it allows these values:

  
https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/task_states.py#L120

  ALLOW_REBOOT = [None, REBOOTING, REBOOT_PENDING, REBOOT_STARTED, RESUMING,
                  REBOOTING_HARD, UNPAUSING, PAUSING, SUSPENDING]

  But when changing the task_state on the instance, if it's currently
  'pausing' it will fail because that's not one of the
  expected_task_states:

  
https://github.com/openstack/nova/blob/644ac5ec37903b0a08891cc403c8b3b63fc2a91c/nova/compute/api.py#L2966

          expected_task_state = [None,
                                 task_states.REBOOTING,
                                 task_states.REBOOT_PENDING,
                                 task_states.REBOOT_STARTED,
                                 task_states.REBOOTING_HARD,
                                 task_states.RESUMING,
                                 task_states.UNPAUSING,
                                 task_states.SUSPENDING]
          instance.save(expected_task_state = expected_task_state)

  It looks like this is just a very old latent problem, see:
  https://review.openstack.org/#/c/127427/

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1768927/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to