Description of problem: When bridge ports are missing for br-int and br-tun and agent starts up, it checks for patch ports int-br-ex and phy-br-ex before adding those. But here the function used to check their existence is get_port_ofport() which retries it because of the @_ofport_retry decoration. This causes the restart to become unnecessarily slow because of the retries. get_port_ofport() should be used only when the port is requested to be created, and the code waits for the ports to be created before proceeding further. We could've just checked for the port's existence with a call to port_exists() on the bridge.
This bug has been postponed until OSP-9 Neutron gets rebased to upstream stable version 8.1.2 (Mitaka) that includes this patch
OSP-9 was rebased onto 8.1.2 that includes patch fixing this bug.
Tested on latest OSP8 - openstack-neutron-8.1.2-1.el7ost.noarch The code verified.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHEA-2016-1597.html