[20.03][20.12] ovn-controller should update OF rules atomically
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu Cloud Archive |
Fix Released
|
Undecided
|
Unassigned | ||
Wallaby |
New
|
Undecided
|
Unassigned | ||
ovn (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
New
|
Undecided
|
Unassigned |
Bug Description
Originally reported at [0] and fixed in OVN 21.06 by [1].
If some OF rules needs to be replaced due to logical flow changes,
ovn-controller deletes old rules first and adds new ones later.
In a complex scenario with big number of flows a lot of time
can pass between these events leading to the dataplane downtime
and packet loss. Also, while these changes are in progress,
OVS will use incomplete pipelines that will also lead to packet
drops.
To avoid this, all flow modifications should be done atomically,
so there will be always some version of OF rules installed that
can handle dataplane traffic and it will be complete in terms of
reflecting some consistent set of logical flows. Wrapping all
flow modifications into atomic ordered bundle to achieve that.
0: https:/
1: https:/
Changed in ovn (Ubuntu): | |
status: | New → Fix Released |
Changed in cloud-archive: | |
status: | New → Fix Released |