[ovs-dev] [PATCH ovn v2 6/6] ovn-northd-ddlog: New implementation of ovn-northd based on ddlog.

Numan Siddique numans at ovn.org
Fri Nov 6 18:03:16 UTC 2020


Hi Ben,

On another note, compilation with this patch is failing in travis CI -
https://travis-ci.com/github/numansiddique/ovn/jobs/429511833

Please note that the travis CI build has not been configured with the
option - --with-ddlog=

***

PYTHONPATH=/home/travis/build/numansiddique/ovn/ovs_src/python":"$PYTHONPATH
PYTHONDONTWRITEBYTECODE=yes /opt/pyenv/shims/python3
/home/travis/build/numansiddique/ovn/ovs_src/ovsdb/ovsdb-idlc.in
annotate ./ovn-sb.ovsschema ./lib/ovn-sb-idl.ann >
lib/ovn-sb-idl.ovsidl.tmp && \
3680mv lib/ovn-sb-idl.ovsidl.tmp lib/ovn-sb-idl.ovsidl
3681PYTHONPATH=/home/travis/build/numansiddique/ovn/ovs_src/python":"$PYTHONPATH
PYTHONDONTWRITEBYTECODE=yes /opt/pyenv/shims/python3
/home/travis/build/numansiddique/ovn/ovs_src/ovsdb/ovsdb-idlc.in
annotate ./ovn-ic-nb.ovsschema ./lib/ovn-ic-nb-idl.ann >
lib/ovn-ic-nb-idl.ovsidl.tmp && \
3682mv lib/ovn-ic-nb-idl.ovsidl.tmp lib/ovn-ic-nb-idl.ovsidl
3683mv rhel/ovn-fedora.spec.tmp rhel/ovn-fedora.spec
3684PYTHONPATH=/home/travis/build/numansiddique/ovn/ovs_src/python":"$PYTHONPATH
PYTHONDONTWRITEBYTECODE=yes /opt/pyenv/shims/python3
/home/travis/build/numansiddique/ovn/ovs_src/ovsdb/ovsdb-idlc.in
annotate ./ovn-ic-sb.ovsschema ./lib/ovn-ic-sb-idl.ann >
lib/ovn-ic-sb-idl.ovsidl.tmp && \
3685mv lib/ovn-ic-sb-idl.ovsidl.tmp lib/ovn-ic-sb-idl.ovsidl
3686make[1]: *** No rule to make target
'northd/ovn-northd-ddlog-sb.inc', needed by 'distdir'.  Stop.
3687make[1]: *** Waiting for unfinished jobs....
3688make[1]: Leaving directory '/home/travis/build/numansiddique/ovn'
3689Makefile:2536: recipe for target 'dist' failed
3690make: *** [dist] Error 2
3691+cat '*/_build/sub/tests/testsuite.log'
3692cat: '*/_build/sub/tests/testsuite.log': No such file or directory
3693The command "./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS" exited with 1.
*****


I think if you compile using the travis script -
https://github.com/ovn-org/ovn/blob/master/.travis/linux-build.sh#L45
you should be able
to reproduce locally. Let me know if you need more information.

Thanks
Numan


On Fri, Nov 6, 2020 at 10:40 PM Dumitru Ceara <dceara at redhat.com> wrote:
>
> On 11/6/20 5:59 PM, Ben Pfaff wrote:
> > On Fri, Nov 06, 2020 at 05:25:36PM +0100, Dumitru Ceara wrote:
> >> On 11/6/20 4:18 AM, Ben Pfaff wrote:
> >>> Some of these are from ovn-northd, not ovn-northd-ddlog, and so I don't
> >>> think it's likely that my patch series causes them, since it doesn't
> >>> really touch ovn-northd.  The OVN testsuite has a regrettable number of
> >>> race conditions in it.
> >>
> >> I agree, there are probably races in the testsuite but I think there's
> >> also a bug with "ovn-nbctl --wait=hv sync".
> >>
> >> For example, adding a "sleep 1" here:
> >> https://github.com/ovn-org/ovn/blob/c108f23e1c10910031f9409b79001d001aae0c8f/tests/ovn.at#L21478
> >>
> >> makes this test pass on my machine with both ovn-northd and
> >> ovn-northd-ddlog.
> >
> > This hints toward a bug in ovn-controller.  It suggests that
> > ovn-controller reports that it is caught up before it has pushed all the
> > flows to ovs-vswitchd.
> >
>
> Right, I tracked it down to ovn-controller setting nb_cfg in the SB
> chassis record while there's still an unreplied monitor_cond_change from SB.
>
> If some logical_flows were added to the SB at nb_cfg == X.
> And if at nb_cfg == X+1 some changes happen to the SB that would also
> make ovn-controller request a monitor condition change that includes
> flows added at X then ovn-controller "acks" nb_cfg == X too early.
>
> I think it might be enough to just delay reporting that ovn-controller
> caught up if there are still in flight monitor_cond_change requests.
> I'll see if I can come up with a fix and if there are other corner cases.
>
> Regards,
> Dumitru
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>


More information about the dev mailing list