Reviewed: https://review.openstack.org/369160 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=951cd80c341fdc2783c8e3042a9e93becab58e36 Submitter: Jenkins Branch: master
commit 951cd80c341fdc2783c8e3042a9e93becab58e36 Author: Hirofumi Ichihara <ichihara.hirof...@lab.ntt.co.jp> Date: Tue Sep 13 15:04:52 2016 +0900 Pass not IPDevice but port_name into OVSBridge's add_port() The use_veth_interconnection config doesn't work fine because IPDevice is passed into OVSBridge's add_port() although the method expects port_name. This patch fixes the wrong argument. Change-Id: I6ea3e37d857f34228c41118709b91f4407555a33 Closes-Bug: #1622850 ** 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/1622850 Title: The use_veth_interconnection config doesn't work fine Status in neutron: Fix Released Bug description: The use_veth_interconnection config doesn't work fine because IPDevice is passed into OVSBridge's add_port() although the method expects port_name. * current wrong codes int_ofport = self.int_br.add_port(int_veth) phys_ofport = br.add_port(phys_veth) * expecting codes int_ofport = self.int_br.add_port(int_if_name) phys_ofport = br.add_port(phys_if_name) This issue doesn't happen in a case using ovs-vsctl because IPDevice has __str__() overridden (returns device name). However, In a case using native(ryu app), the issue happens. * log Timed out retrieving ofport on port phy-br-eth1. 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib Traceback (most recent call last): 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib File "/opt/stack/neutron/neutron/agent/common/ovs_lib.py", line 286, in get_port_ofport 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib ofport = self._get_port_ofport(port_name) 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib File "/opt/stack/neutron/neutron/agent/common/ovs_lib.py", line 92, in wrapped 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib return new_fn(*args, **kwargs) 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib File "/usr/local/lib/python2.7/dist-packages/retrying.py", line 49, in wrapped_f 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib return Retrying(*dargs, **dkw).call(f, *args, **kw) 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib File "/usr/local/lib/python2.7/dist-packages/retrying.py", line 214, in call 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib raise RetryError(attempt) 2016-09-13 08:54:16.854 TRACE neutron.agent.common.ovs_lib RetryError: RetryError[Attempts: 16, Value: None] Actually I saw there is no phy-br-eth1 device in my env and then the interface is created after I have fixed above. To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1622850/+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