On Fri, Oct 03, 2014 at 01:28:07AM -0700, Andy Zhou wrote: > Whenever OVS restarts, it pseudo-randomly picks an interface > of a bond port to be the active slave. This can cause traffic > disruption in case the upstream switch does not support LACP, or > in case of multi-chassis switches that do not support mLACP. > > This patch helps the situation by always record the last active > slave into ovsdb. When OVS restarts, the stored last active slave > has the highest priority to be selected again. In case this interface > is available, due to configuration changes or being offline, OVS then > consider other interfaces with the bond as it does today. > > In a nutshell, this patch makes the active slave selection stickier > across OVS restart. > > VMware-BZ: 1332235
I think there might be a problem with IDL transactions; are you sure that a transaction is being opened and committed around setting the column? I see some missing {} around single-statement blocks. Do you think that the MAC address is the best way to identify a slave? I am not sure that it is necessarily unique. Other options include a weak reference to the interface or the name of the interface. I am not sure what you mean by "Openvswitch internal use only." Maybe you mean that only ovs-vswitchd should write to the column, and other clients should only read it. Usually we say that by saying that a column "reports" information or that it is a "status" column. > + <column name="bond_last_active_iface"> > + For a bonded port, record the mac address of the last active slave. > + Openvswitch internal use only. > + </column> _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev