[ovs-discuss] Question about order of OVSDB transaction commit response v.s. update notification
Ben Pfaff
blp at ovn.org
Wed Mar 8 23:36:07 UTC 2017
On Wed, Mar 08, 2017 at 03:25:47PM -0800, Han Zhou wrote:
> I checked the current python OVSDB IDL implementation, and found out that
> the way local cache is handled during transaction commit is like this, as
> commented in idl.py:
>
> Committing a transaction rolls back all of the changes that it made
> to
> the IDL's copy of the database. If the transaction commits
> successfully, then the database server will send an update and,
> thus,
> the IDL will be updated with the committed changes."""
>
> If a transaction commit is successfully returned, the client will always
> see the new data from local cache. It seems this behavior is guaranteed by
> the order of transaction commit response and update notification for the
> same commit: the update notification always come BEFORE the response of the
> same commit. I didn't check ovsdb server code to verify. Please correct me
> if I am wrong.
Yes, that's how it works.
> If I am right, then I didn't see this order being specified in RFC 7047.
> Would this order be always guaranteed in ovsdb-server implementation? Is it
> better to be specified in RFC?
I don't think that RFC 7047 states or implies the ordering. This is a
bug in the RFC, and I wish that it did say that. I don't think that
OVSDB is as useful without an ordering guarantee here.
More information about the discuss
mailing list