OpenStack Compute (Nova)

booting instance w/ metadata fails on XenServer

Reported by Dan Prince on 2012-08-07
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Critical
Dan Prince

Bug Description

Using Nova Folsom as of this morning... I'm seeing the following stack trace when trying to boot instances under XenServer:

Build error: ['Traceback (most recent call last):\n', ' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 526, in _run_instance\n injected_files, admin_password)\n', ' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 768, in _spawn\n self._legacy_nw_info(network_info), block_device_info)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/driver.py", line 178, in spawn\n block_device_info)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 349, in spawn\n undo_mgr.rollback_and_reraise(msg=msg, instance=instance)\n', ' File "/usr/lib/python2.7/site-packages/nova/utils.py", line 1270, in rollback_and_reraise\n self._rollback()\n', ' File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__\n self.gen.next()\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 341, in spawn\n vm_ref = create_vm_step(undo_mgr, vdis, kernel_file, ramdisk_file)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 136, in inner\n rv = f(*args, **kwargs)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 295, in create_vm_step\n rescue=rescue)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 401, in _create_vm\n self.inject_instance_metadata(instance, vm_ref)\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 861, in inject_instance_metadata\n store_meta(\'vm-data/user-metadata\', instance[\'metadata\'])\n', ' File "/usr/lib/python2.7/site-packages/nova/virt/xenapi/vmops.py", line 855, in store_meta\n key = self._sanitize_xenstore_key(item.key)\n', "AttributeError: 'dict' object has no attribute 'key'\n"]

Dan Prince (dan-prince) on 2012-08-07
Changed in nova:
assignee: nobody → Dan Prince (dan-prince)
importance: Undecided → Critical
status: New → In Progress

Reviewed: https://review.openstack.org/10950
Committed: http://github.com/openstack/nova/commit/79a2ea2f5f83dc401d089e357bf35dbdfb8be959
Submitter: Jenkins
Branch: master

commit 79a2ea2f5f83dc401d089e357bf35dbdfb8be959
Author: Dan Prince <email address hidden>
Date: Tue Aug 7 08:48:31 2012 -0400

    Update vmops to access metadata as dict.

    Updates the inject_instance_metadata in xenapi/vmops.py so
    that it accesses metadata as a dict instead of an object.

    This resolves issues causing exceptions when booting instances
    on XenServer.

    Fixes LP Bug #1033963

    Change-Id: I58810764abd32d9d292f8282b54c126bf1f4de18

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx) on 2012-08-16
Changed in nova:
milestone: none → folsom-3
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2012-09-27
Changed in nova:
milestone: folsom-3 → 2012.2
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers