← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1832745] Re: _update_network_segmentation_id KeyError: 'provider:network_type'

 

Reviewed:  https://review.opendev.org/666375
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=dc80fc9fe7836840d25eac16c4f8013cda55acfa
Submitter: Zuul
Branch:    master

commit dc80fc9fe7836840d25eac16c4f8013cda55acfa
Author: Rodolfo Alonso Hernandez <ralonsoh@xxxxxxxxxx>
Date:   Wed Jun 19 15:54:22 2019 +0000

    [OVS] Network segmentation ID change not allowed if multisegments
    
    If a network has several segments, the provider network segmentation ID
    cannot be changed. This is defined in the feature spec [1].
    
    In the case of having a multisegment network, the OVS agent RPC call
    "get_network_details" will return the following value:
    
      {
        "network": {
          "updated_at": "2019-02-19T13:25:15Z",
          "revision_number": 5,
          "id": "ba973781-065b-4c69-9f07-a5c4f9a3b754",
          ...
          "segments": [{
            "provider:network_type": "vxlan",
            "provider:physical_network": null,
            "provider:segmentation_id": 10041
          },
          {
            "provider:network_type": "vxlan",
            "provider:physical_network": null,
            "provider:segmentation_id": 10066
          }],
          ...
    }
    
    The provider network information will be contained inside the "segments"
    list, instead of being container in the parent "network" dictionary.
    
    Closes-Bug: #1832745
    
    [1]https://opendev.org/openstack/neutron-specs/src/branch/master/specs/stein/change-segmentation-id-vlan-provider-network.rst
    
    Change-Id: I4fa37519bbf91e93ebd2f0e46e4d14edd40728fd


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

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1832745

Title:
  _update_network_segmentation_id KeyError: 'provider:network_type'

Status in neutron:
  Fix Released

Bug description:
  ENV: master

  
  Exception:
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager [None req-1c6689ba-8524-4f93-9387-d5bcce5101dd None None] Error during notification for neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent.OVSPluginApi._legacy_notifier-1722583 Network, after_update: KeyError: 'provider:network_type'
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager Traceback (most recent call last):
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager   File "/usr/lib/python2.7/site-packages/neutron_lib/callbacks/manager.py", line 197, in _notify_loop
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager     callback(resource, event, trigger, **kwargs)
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager   File "/opt/stack/neutron/neutron/agent/rpc.py", line 259, in _legacy_notifier
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager     getattr(self._legacy_interface, method)(context, **payload)
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager   File "/usr/lib/python2.7/site-packages/osprofiler/profiler.py", line 160, in wrapper
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager     result = f(*args, **kwargs)
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager   File "/opt/stack/neutron/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py", line 572, in network_update
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager     self._update_network_segmentation_id(network)
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager   File "/opt/stack/neutron/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py", line 418, in _update_network_segmentation_id
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager     if network[provider_net.NETWORK_TYPE] != n_const.TYPE_VLAN:
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager KeyError: 'provider:network_type'
  Jun 14 00:51:28 network2 neutron-openvswitch-agent[10081]: ERROR neutron_lib.callbacks.manager

  
  For tenant HA network, the provider network type may in such style:

  {
  	"network": {
  		"updated_at": "2019-02-19T13:25:15Z",
  		"revision_number": 5,
  		"id": "ba973781-065b-4c69-9f07-a5c4f9a3b754",
  		"router:external": false,
  		"availability_zone_hints": [],
  		"availability_zones": ["nova"],
  		"segments": [{
  			"provider:network_type": "vxlan",
  			"provider:physical_network": null,
  			"provider:segmentation_id": 10041
  		},
  		{
  			"provider:network_type": "vxlan",
  			"provider:physical_network": null,
  			"provider:segmentation_id": 10066
  		}],
  		"ipv4_address_scope": null,
  		"shared": false,
  		"project_id": "",
  		"l2_adjacency": true,
  		"status": "ACTIVE",
  		"subnets": ["3e098a8e-9e1f-456b-a429-2ab46493e6b5"],
  		"description": "",
  		"tags": [],
  		"ipv6_address_scope": null,
  		"qos_policy_id": null,
  		"name": "HA network tenant ae05deb7a16c485986c3666b65f71c71",
  		"admin_state_up": true,
  		"tenant_id": "",
  		"created_at": "2018-12-19T14:53:20Z",
  		"mtu": 1450
  	}
  }

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


References