> This adds a test for this invariant for a specific test case, which is
> useful.  However, I believe that this should be a universal invariant
> for ovn-controller, so that at any time if ovn-controller is restarted
> gracefully after it has converged, it should preserve these flows.  Is
> that true?  If so, then it would be more useful to add such a check to
> *every* test case for OVN.
>
> What do you think?
>
> Thanks,
>
> Ben.

I am finding that, after a graceful exit of ovn-controller
using "ovs-appctl -t ovn-controller exit", and then a restart of the
ovn-controller,
the flows before restart and after restart dont match on table 0 in 1 out of
2 runs (or 1 out of 3 runs).

This is because, localnet ports in the test
are being deleted and recreated in such failing runs - and therefore, their
ofports are mismatching in the flow-table (before and after restart).

Localnet ports are being deleted and recreated in the failing runs
because, ovn-controller is cleaning up the chassis row during graceful
exit, and upon startup there still seems
to be a race between patch_run and binding_run when the chassis does
not exist, I am still
chasing this down.

Thats why the test as currently coded is killing the ovn-controller
ungracefully (kill -9) and restarting
it. As such the restart test and expected invariance of flows seems useful.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to