Reviewed:  https://review.openstack.org/355093
Committed: 
https://git.openstack.org/cgit/openstack/os-vif/commit/?id=b088d21b91dbfda0f18b1e4886f6aa01f2c72cbe
Submitter: Jenkins
Branch:    master

commit b088d21b91dbfda0f18b1e4886f6aa01f2c72cbe
Author: Matt Riedemann <mrie...@us.ibm.com>
Date:   Fri Aug 12 17:32:51 2016 -0400

    Add a reminder to remove Route.interface field
    
    Nova never sets the Route.interface value to anything but
    None which fails with an error:
    
    "ValueError: Fieldinterface' cannot be None"
    
    This looks like a carry-over from the nova.network.model.Route
    class which has an interface field which is set to None by default
    but that field is never set to anything else in Nova, neither
    for nova-network or Neutron.
    
    Furthermore, it looks like 'interface' is not something that's
    in the Route data model in Neutron either.
    
    We don't hit this in the gate because the subnets we're testing
    with don't have host_routes set.
    
    The ValueError was fixed in Nova by not setting the attribute:
    
    1d57c1fd53e930b02c3ce0e9914f95ef68dd1f87
    
    This change adds a TODO to remove it in version 2.0 of the Route object.
    
    Change-Id: Ib25a79514fe4335f4df222c02fefc9da62fe04ce
    Closes-Bug: #1612812


** Changed in: os-vif
       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/1612812

Title:
  OS-VIF: Interface missing from Route Object. (OVS)

Status in OpenStack Compute (nova):
  Fix Released
Status in os-vif:
  Fix Released

Bug description:
  
  When trying to boot and delete instances (Rally) saw this stack trace:

  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/compute/manager.py",
 line 2075, in build_resources
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] yield resources
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/compute/manager.py",
 line 1919, in build_and_run_instance
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] block_device_info=block_device_info)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/virt/libvirt/driver.py",
 line 2658, in spawn
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] write_to_disk=True)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/virt/libvirt/driver.py",
 line 4693, in _get_guest_xml
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] context)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/virt/libvirt/driver.py",
 line 4525, in _get_guest_config
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] flavor, virt_type, self._host)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/virt/libvirt/vif.py",
 line 507, in get_config
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] vif_obj = 
os_vif_util.nova_to_osvif_vif(vif)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 371, in nova_to_osvif_vif
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] vifobj = func(vif)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 276, in _nova_to_osvif_vif_ovs
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] vif_name=_get_vif_name(vif))
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 239, in _get_vif_instance
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] 
network=_nova_to_osvif_network(vif['network']),
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 205, in _nova_to_osvif_network
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] 
subnets=_nova_to_osvif_subnets(network['subnets']))
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 191, in _nova_to_osvif_subnets
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] objects=[_nova_to_osvif_subnet(subnet) 
for subnet in subnets])
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 173, in _nova_to_osvif_subnet
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] 
routes=_nova_to_osvif_routes(subnet['routes']))
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 157, in _nova_to_osvif_routes
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] objects=[_nova_to_osvif_route(route) for 
route in routes])
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/nova/network/os_vif_util.py",
 line 139, in _nova_to_osvif_route
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] interface=route['interface'])
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/oslo_versionedobjects/base.py",
 line 307, in __init
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] setattr(self, key, kwargs[key])
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/oslo_versionedobjects/base.py",
 line 72, in setter
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] field_value = field.coerce(self, name, 
value)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/oslo_versionedobjects/fields.py",
 line 193, in coerce
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] return self.null(obj, attr)
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] File 
"/opt/bbc/openstack-11.0-master/nova/local/lib/python2.7/site-packages/oslo_versionedobjects/fields.py",
 line 171, in _null
  2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager [instance: 
47fbd50b-94ec-4395-884c-9131e0e3f335] raise ValueError(("Field %s' cannot be 
None") % attr) 2016-08-12 15:21:58.859 38365 ERROR nova.compute.manager 
[instance: 47fbd50b-94ec-4395-884c-9131e0e3f335] ValueError: Fieldinterface' 
cannot be None

  I cannot see where the 'interface' is set on the Nova 'Route' object.
  The object only seems to be created in one place.
  nova/network/neutronv2/api.py:2160

  Version: Master
  Networking: OVN ML2 driver. OVS VIF.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1612812/+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