unshelve feature does not work

Bug #1233563 reported by Ken'ichi Ohmichi
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Ken'ichi Ohmichi

Bug Description

When unshelving a shelved server, the server cannot be changed to 'Active' forever:

$ nova list
+--------------------------------------+------+-------------------+------------+-------------+------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+------+-------------------+------------+-------------+------------------+
| 919234d1-4a3d-4c26-bddd-77d004f7d41e | vm01 | SHELVED_OFFLOADED | unshelving | Shutdown | private=10.0.0.3 |
+--------------------------------------+------+-------------------+------------+-------------+------------------+

and nova-scheduler outputs the following error messages:

2013-10-01 17:22:55.456 ERROR nova.openstack.common.rpc.amqp [req-51700174-fc3a-48f4-8962-8f54d6f30164 admin demo] Exception during message handling
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/openstack/common/rpc/amqp.py", line 461, in _process_data
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp **args)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/openstack/common/rpc/dispatcher.py", line 172, in dispatch
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp result = getattr(proxyobj, method)(ctxt, **kwargs)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/openstack/common/rpc/common.py", line 439, in inner
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp return catch_client_exception(exceptions, func, *args, **kwargs)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/openstack/common/rpc/common.py", line 420, in catch_client_exception
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp return func(*args, **kwargs)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/scheduler/manager.py", line 298, in select_destinations
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp filter_properties)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/scheduler/filter_scheduler.py", line 144, in select_destinations
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp filter_properties, instance_uuids)
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/nova/nova/scheduler/filter_scheduler.py", line 288, in _schedule
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp scheduler_hints = filter_properties.get('scheduler_hints') or {}
2013-10-01 17:22:55.456 TRACE nova.openstack.common.rpc.amqp AttributeError: 'list' object has no attribute 'get'

Tags: compute
Changed in nova:
assignee: nobody → Ken'ichi Ohmichi (oomichi)
Revision history for this message
Ken'ichi Ohmichi (oomichi) wrote :
Changed in nova:
status: New → In Progress
tags: added: havana-rc-potential
tags: added: compute
Changed in nova:
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/49117
Committed: http://github.com/openstack/nova/commit/ef3fbe99af498a40555b44f9ef0fcf6b88eb5d30
Submitter: Jenkins
Branch: master

commit ef3fbe99af498a40555b44f9ef0fcf6b88eb5d30
Author: Ken'ichi Ohmichi <email address hidden>
Date: Tue Oct 1 17:10:50 2013 +0900

    Fix filter_properties of unshelve API

    When unshelving a shelved server, nova-scheduler fails because nova-conductor
    of current unshelve feature passes an empty list as filter_properties, and
    nova-scheduler handles it as a dict.

    To fix the problem, this patch changes the filter_properties to an empty dict.

    Closes-Bug: #1233563

    Change-Id: I2c7a2a743a8142af0be0a182067f3295980aa997

Changed in nova:
status: In Progress → Fix Committed
Changed in nova:
importance: Medium → High
Thierry Carrez (ttx)
Changed in nova:
milestone: none → havana-rc2
tags: removed: havana-rc-potential
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (milestone-proposed)

Fix proposed to branch: milestone-proposed
Review: https://review.openstack.org/50934

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (milestone-proposed)

Reviewed: https://review.openstack.org/50934
Committed: http://github.com/openstack/nova/commit/18dac4c853818b363d75e89f25e1e206fb744c8c
Submitter: Jenkins
Branch: milestone-proposed

commit 18dac4c853818b363d75e89f25e1e206fb744c8c
Author: Ken'ichi Ohmichi <email address hidden>
Date: Tue Oct 1 17:10:50 2013 +0900

    Fix filter_properties of unshelve API

    When unshelving a shelved server, nova-scheduler fails because nova-conductor
    of current unshelve feature passes an empty list as filter_properties, and
    nova-scheduler handles it as a dict.

    To fix the problem, this patch changes the filter_properties to an empty dict.

    Closes-Bug: #1233563

    Change-Id: I2c7a2a743a8142af0be0a182067f3295980aa997
    (cherry picked from commit ef3fbe99af498a40555b44f9ef0fcf6b88eb5d30)

Changed in nova:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: havana-rc2 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.