Bug 1964953

Summary: [OVN] Add unit tests for ovn-northd with parallelization enabled.
Product: Red Hat Enterprise Linux Fast Datapath Reporter: Dumitru Ceara <dceara>
Component: OVNAssignee: xsimonar
Status: CLOSED CURRENTRELEASE QA Contact: Ehsan Elahi <eelahi>
Severity: high Docs Contact:
Priority: high    
Version: FDP 20.HCC: ctrautma, dcbw, i.maximets, jiji, xsimonar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovn22.06 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-03-13 07:13:45 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Dumitru Ceara 2021-05-26 12:23:01 UTC
Description of problem:

ovn-northd supports parallelization since [0].  The feature is disabled by default and the upstream CI matrix doesn't have any job that enables it.

Originally documented as item (4) at
https://bugzilla.redhat.com/show_bug.cgi?id=1960042#c4

[0] https://github.com/ovn-org/ovn/commit/8848c622bd01f54cab0be14a69478cc2ce0a19b7

Comment 1 Dumitru Ceara 2021-06-01 11:15:31 UTC
ovn-northd parallelization is configurable via the NB database [0], e.g.:

ovn-nbctl set NB_Global . options:use_parallel_build=true

CI tests are run for different variations of ovn-northd using the OVN_FOR_EACH_NORTHD macro. [1]

[0] https://github.com/ovn-org/ovn/blob/master/ovn-nb.xml#L216
[1] https://github.com/ovn-org/ovn/blob/master/tests/ovn-macros.at#L539

Comment 2 Ilya Maximets 2021-06-01 13:23:07 UTC
Suggestion:
Parallelization doesn't work if number of CPU cores is low (like in GHA).
To overcome this, it's probably natural and easy to port --dummy-numa
command line option form the OVS code base (northd uses ovs-numa library
to detect number of cores).

Comment 4 Dan Williams 2022-06-21 14:55:08 UTC
Accepted upstream for ovn 22.06 and later