Basically, you can't successfully use RAFT unless you have python-ovs 2.17 (which hasn't been released to PyPI yet due to it accidentally breaking Neutron/ovsdbapp).
This https://patchwork.ozlabs<email address hidden>/ added monitor-cond-since support to python-ovs (which had existed in the C IDL library as long as RAFT had) which allows reconnecting to OVS and only getting the transactions that have happened since you disconnected. This is important, since during ovsdb-server snapshotting which happens every 100 txns, ovsdb-server currently does a leadership change which breaks the connection if you are connected to the leader. With out monitor-cond-since, the entire db is downloaded again on reconnect, which just completely destroys performance.
Basically, you can't successfully use RAFT unless you have python-ovs 2.17 (which hasn't been released to PyPI yet due to it accidentally breaking Neutron/ovsdbapp).
This https:/ /patchwork. ozlabs<email address hidden>/ added monitor-cond-since support to python-ovs (which had existed in the C IDL library as long as RAFT had) which allows reconnecting to OVS and only getting the transactions that have happened since you disconnected. This is important, since during ovsdb-server snapshotting which happens every 100 txns, ovsdb-server currently does a leadership change which breaks the connection if you are connected to the leader. With out monitor-cond-since, the entire db is downloaded again on reconnect, which just completely destroys performance.
I need to convince the OVS team to backport monitor-cond-since (and related fixes) to previous OVS versions, but right now ovs 2.17 (really master until the release is made) and https:/ /review. opendev. org/c/openstack /ovsdbapp/ +/834729 and https:/ /review. opendev. org/c/openstack /neutron/ +/834613 are needed to use RAFT.