Ok, I think this is likely to be the final iteration of the patch as we are down to the typos.
In Neutron, we process these notifications in a separate thread. So what that means is that we were experiencing race conditions where sometimes the notification's row would have a value set, and other times it wouldn't. In fixing some other race conditions related to that event processing thread, we tried to add a read-only copy of the Row object and that actually turned the race condition into a consistent failure on py27 due to the table_updates dict not maintaining insertion-order, but consistently putting Logical_Router_Port before Gateway_Chassis. In py3 things could still fail as in the test case provided, e.g. if rows referenced each other in the same transaction, or depending on the order in which ovsdb-server adds the updates. Terry Wilson (1): python: Send notifications after the transaction ends python/ovs/db/idl.py | 39 ++++++++++++++++++++++++--------------- tests/ovsdb-idl.at | 22 ++++++++++++++++++++++ tests/test-ovsdb.py | 7 +++++-- 3 files changed, 51 insertions(+), 17 deletions(-) -- 2.17.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev