← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2065084] Re: BDM with device_type=lun fails

 

Reviewed:  https://review.opendev.org/c/openstack/nova/+/918470
Committed: https://opendev.org/openstack/nova/commit/2f0c340d3910f48ab4609f477b76aa69da2f2bbb
Submitter: "Zuul (22348)"
Branch:    master

commit 2f0c340d3910f48ab4609f477b76aa69da2f2bbb
Author: Dan Smith <dansmith@xxxxxxxxxx>
Date:   Tue May 7 10:31:11 2024 -0700

    Fix device_type=lun with boot_index
    
    Right now we'll fail to calculate the boot order of a set of BDMs if
    one of them is a device_type=lun. This fixes that and teaches us
    that it's just a "hd" from qemu's perspective.
    
    Closes-Bug: #2065084
    Change-Id: Ic1340918738d503fc797c9373fe2e1dd16b27a09


** Changed in: nova
       Status: In Progress => Fix Released

-- 
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/2065084

Title:
  BDM with device_type=lun fails

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  Libvirt recently (since our code was added) refuses the serial option
  on a disk which is attached as a LUN. Since we officially support this
  in our API, we need to avoid putting serial on those disks.

  Also, even when we don't hit that problem, our boot order calculation
  fails with:

  56694407 tempest-AttachVolumeMultiAttachTest-1756694407-project-member] [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3] Failed to build and run instance: KeyError: 'lun'
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3] Traceback (most recent call last):
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/compute/manager.py", line 2641, in _build_and_run_instance
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     self.driver.spawn(context, instance, image_meta,
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4642, in spawn
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     xml = self._get_guest_xml(context, instance, network_info,
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 7814, in _get_guest_xml
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     conf = self._get_guest_config(instance, network_info, image_meta,
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 7318, in _get_guest_config
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     self._conf_non_lxc(
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 6969, in _conf_non_lxc
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     guest.os_boot_dev = blockinfo.get_boot_order(disk_info)
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/blockinfo.py", line 737, in get_boot_order
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     return uniq(boot_devs_dup)
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/blockinfo.py", line 735, in uniq
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     return [el for el in lst if el not in s and not s.add(el)]
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/blockinfo.py", line 735, in <listcomp>
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     return [el for el in lst if el not in s and not s.add(el)]
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]   File "/opt/stack/nova/nova/virt/libvirt/blockinfo.py", line 729, in <genexpr>
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3]     boot_devs_dup = (BOOT_DEV_FOR_TYPE[dev['type']] for dev in
  May 07 17:16:33 jammy nova-compute[133963]: ERROR nova.compute.manager [instance: 4a20e558-dba6-4daa-af66-b62de2d9c0f3] KeyError: 'lun'

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



References