[ovs-dev] [PATCH] ovsdb: provide raft and command interfaces with priority

Anton Ivanov anton.ivanov at cambridgegreys.com
Fri Jun 11 15:49:44 UTC 2021

On 10/06/2021 23:01, Ben Pfaff wrote:
> On Tue, Jun 08, 2021 at 10:27:08AM +0100, anton.ivanov at cambridgegreys.com wrote:
>> From: Anton Ivanov <anton.ivanov at cambridgegreys.com>
>> Set a soft time limit of "raft election timer"/2 on ovsdb
>> processing.
>> This improves behaviour in large heavily loaded clusters.
>> While it cannot fully eliminate spurious raft elections
>> under heavy load, it significantly decreases their number.
>> TODO: randomize session processing order to ensure individual
>> sessions towards the end of the remotes list are not starved
>> Signed-off-by: Anton Ivanov <anton.ivanov at cambridgegreys.com>
> Personally I'd consider a random or round-robin processing order to be
> pretty critical here.

I have pushed an updated version which implements a "restart where you stopped" approach. This should be mostly identical to the current master in terms of "session starvation" while having "raft at higher priority".

I will do the RR separately - I need to get my head around a few things. For example - is it possible to make it in a more generalized manner (not just this case).

> A better approach (which would be a lot more work) would be for the Raft
> code to use a separate thread or process.
Anton R. Ivanov
Cambridgegreys Limited. Registered in England. Company Number 10273661

More information about the dev mailing list