On 04/02/2015 06:58 PM, Ben Pfaff wrote: > On Thu, Apr 02, 2015 at 05:42:15PM -0400, Russell Bryant wrote: >> When ovn-nbd gets notified that the contents of the OVN_Northbound >> database have changed, it will now ensure that the contents of the >> Bindings table in the OVN database are up to date. It will create a >> binding if none exists. If one does exist, it will update its >> contents as necessary, though today the only thing supported is the >> list of MAC addresses. Finally, any binding associated with a logical >> port that has been deleted will be removed from the OVN database. >> >> Signed-off-by: Russell Bryant <rbry...@redhat.com> > > This code assumes that the 'logical_port' column in Bindings is always > a UUID. I guess maybe that's what we're using in OpenStack, but it > would be more general if we did not assume a particular format. I > don't think that's really harder--it's just a matter of hashing and > comparing strings instead of UUIDs. I don't think you even need to > xstrdup() and free() the string values since you're not keeping them > across an ovsdb_idl_run().
Thanks for the quick review! Based on how it's written, the logical_port column in Bindings is always a UUID, because it's copying the logical port row's UUID into it. I remember now that it's supposed to be the name. Otherwise, ovn-controller would never be able to match it to an iface-id. Oops. I also realized that setting the MAC addresses will always be present in the transaction for all existing Bindings, even if they haven't changed, which is silly. -- Russell Bryant _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev