[ovs-dev] [PATCH 03/22] ovn-controller: Avoid blocking to commit OVSDB transactions.

Ben Pfaff blp at nicira.com
Tue Jul 28 15:38:33 UTC 2015


On Wed, Jul 22, 2015 at 04:26:48PM -0400, Russell Bryant wrote:
> On 07/19/2015 06:44 PM, Ben Pfaff wrote:
> > Until now, ovn-controller has been full of loops that commit a transaction
> > to the OVS or OVN Southbound database.  These blocking loops delay other
> > work within ovn-controller.  They also make it unsafe to keep pointers to
> > database records within a single ovn-controller main loop, since calls
> > to ovsdb_idl_run() can cause IDL records to be destroyed.  This commit
> > drops all of the blocking calls, instead doing a single commit to the
> > databases at the end of each main loop.
> > 
> > Signed-off-by: Ben Pfaff <blp at nicira.com>
> 
> This is great!  This is something I've wanted to do for a while but
> never got around to.  Thanks!  The changes look good.  I also did some
> basic testing of this with ovs-sandbox and did not encounter any errors.
> 
> Alex, I think it would be great to follow this same pattern for
> ovn-controller-vtep.  The idl_loop struct and related functions could be
> shared between the two, at least.
> 
> Acked-by: Russell Bryant <rbryant at redhat.com>

Thanks for the ack.



More information about the dev mailing list