** Also affects: neutron/kilo Importance: Undecided Status: New ** Changed in: neutron/kilo Status: New => Fix Committed
** Changed in: neutron/kilo Milestone: None => 2015.1.2 -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1461519 Title: Enabling ml2 port security extension driver causes net-list to fail on existing deployment Status in neutron: Fix Released Status in neutron kilo series: Fix Committed Bug description: I had a kilo setup where there were a few existing networks. Then I enabled the port security extension driver in ml2_conf.ini. After this net-list fails because the extension driver tries to access the fields(port security related) which were never set for the old networks. This also happens when port-security is enabled and when creating an HA router. ocloud@ubuntu:~/devstack$ neutron net-list Request Failed: internal server error while processing your request. 2015-06-03 17:14:44.059 ERROR neutron.api.v2.resource [req-d831393d-e02a-4405-8f3a-dd13291f86b1 admin admin] index failed 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource Traceback (most recent call last): 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/resource.py", line 83, in resource 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource result = method(request=request, **args) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 319, in index 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource return self._items(request, True, parent_id) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 249, in _items 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource obj_list = obj_getter(request.context, **kwargs) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/plugin.py", line 669, in get_networks 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource limit, marker, page_reverse) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/db_base_plugin_v2.py", line 1020, in get_networks 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource page_reverse=page_reverse) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 184, in _get_collection 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource items = [dict_func(c, fields) for c in query] 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/db_base_plugin_v2.py", line 858, in _make_network_dict 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource attributes.NETWORKS, res, network) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 162, in _apply_dict_extend_functions 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource func(*args) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/plugin.py", line 477, in _ml2_md_extend_network_dict 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource self.extension_manager.extend_network_dict(session, netdb, result) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 782, in extend_network_dict 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource driver.obj.extend_network_dict(session, base_model, result) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/extensions/port_security.py", line 60, in extend_network_dict 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource self._extend_port_security_dict(result, db_data) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/extensions/port_security.py", line 68, in _extend_port_security_dict 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource db_data['port_security'][psec.PORTSECURITY]) 2015-06-03 17:14:44.059 11154 TRACE neutron.api.v2.resource TypeError: 'NoneType' object has no attribute '__getitem__' To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1461519/+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