← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1717365] [NEW] binding:profile is None breaks migration

 

Public bug reported:

Nova Newton (commit: d8b30c3772 as pulled in with OSA 14.2.7)

During a live-migration, setup_networks_at_host tries to lookup some
information from the network port.

at
https://review.openstack.org/#/c/275073/45/nova/network/neutronv2/api.py@289

If the port has None assigned to "binding:profile" further code breaks
with a TypeError assigning to NoneType.

mriedem suggested catching this with an extended .get():

16:27 < mriedem> since the port_profile should default to {}, UNLESS the port has binding:profile=None...
16:27 < mriedem> it should be: port_profile = p.get(BINDING_PROFILE, {}) or {}

** Affects: nova
     Importance: Medium
         Status: Triaged

** Affects: nova/newton
     Importance: Medium
         Status: Confirmed

** Affects: nova/ocata
     Importance: Medium
         Status: Confirmed

** Affects: nova/pike
     Importance: Medium
         Status: Confirmed


** Tags: live-migration neutron

** Attachment added: "binding.profile.catch.none.patch"
   https://bugs.launchpad.net/bugs/1717365/+attachment/4950383/+files/binding.profile.catch.none.patch

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

Title:
  binding:profile is None breaks migration

Status in OpenStack Compute (nova):
  Triaged
Status in OpenStack Compute (nova) newton series:
  Confirmed
Status in OpenStack Compute (nova) ocata series:
  Confirmed
Status in OpenStack Compute (nova) pike series:
  Confirmed

Bug description:
  Nova Newton (commit: d8b30c3772 as pulled in with OSA 14.2.7)

  During a live-migration, setup_networks_at_host tries to lookup some
  information from the network port.

  at
  https://review.openstack.org/#/c/275073/45/nova/network/neutronv2/api.py@289

  If the port has None assigned to "binding:profile" further code breaks
  with a TypeError assigning to NoneType.

  mriedem suggested catching this with an extended .get():

  16:27 < mriedem> since the port_profile should default to {}, UNLESS the port has binding:profile=None...
  16:27 < mriedem> it should be: port_profile = p.get(BINDING_PROFILE, {}) or {}

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


Follow ups