<html><body>
<p><font size="2" face="sans-serif">Came across the following issue while looking at ovs_lib [1]:</font><br>
<br>
<font size="2" face="sans-serif">The BaseOVS class has the add_bridge() method which after creating an OVS bridge, returns an OVSBridge object. BaseOVS class is only used by OVSBridge defined in the same file. OVSBridge has a create() method that calls the add_bridge() nethod mentioned earlier but do not use the return value. (See the methods add_bridge and create below.)</font><br>
<br>
<font size="2" face="sans-serif">What seems odd is the return statement at the end of add_bridge() which is not used anywhere and doesn't make much sense as far as I can see but I may be missing something. The OVSBase is never directly used anywhere in Neutron directory. Of course the return does not do any harm beyond creating an unused object but it looks to me that it should be removed unless there is a good reason (or a potential future use case) for it.</font><br>
<br>
<font size="2" face="sans-serif">Should we remove the return statement?</font><br>
<br>
<font size="2" face="sans-serif">-Mohammad</font><br>
<br>
<br>
<br>
<font size="2" face="sans-serif">class BaseOVS(object):</font><br>
<font size="2" face="sans-serif">        ...</font><br>
<font size="2" face="sans-serif">    def add_bridge(self, bridge_name):</font><br>
<font size="2" face="sans-serif">        self.run_vsctl(["--", "--may-exist", "add-br", bridge_name])</font><br>
<font size="2" face="sans-serif">        return OVSBridge(bridge_name, self.root_helper)</font><br>
<br>
<br>
<br>
<font size="2" face="sans-serif">class OVSBridge(BaseOVS):</font><br>
<font size="2" face="sans-serif">        ...</font><br>
<font size="2" face="sans-serif">    def create(self):</font><br>
<font size="2" face="sans-serif">        self.add_bridge(self.br_name)</font><br>
<br>
<br>
<br>
<font size="2" face="sans-serif">[1] <a href="https://github.com/openstack/neutron/blob/master/neutron/agent/linux/ovs_lib.py">https://github.com/openstack/neutron/blob/master/neutron/agent/linux/ovs_lib.py</a></font><br>
<br>
</body></html>