[ovs-dev] [PATCH ovn 0/7] northd: Introduce incremental processing framework
Mark Gray
mark.d.gray at redhat.com
Mon Oct 18 10:03:45 UTC 2021
On 16/10/2021 02:21, Han Zhou wrote:
> On Wed, Sep 29, 2021 at 10:23 AM Mark Gray <mark.d.gray at redhat.com> wrote:
>>
>> Add the 'inc-proc-eng' framework to northd. This does *not*
>> add any incremental processing at this stage but provides the
>> framework to do so. Even in this base configuration, we see an
>> advantage as northd no longer processes the databases if it has
>> been woken only to handle, for example, a unixctl command. This
>> can be seen below
>>
>> $ ovn-appctl -t ovn-northd stopwatch/reset
>> $ for i in {1..10}; do ovn-appctl -t ovn-northd stopwatch/show
>> /dev/null; done
>> $ ovn-appctl -t ovn-northd stopwatch/show ovnnb_db_run
>> Statistics for 'ovnnb_db_run'
>> Total samples: 0
>> Maximum: 0 msec
>> Minimum: 0 msec
>> 95th percentile: 0.000000 msec
>> Short term average: 0.000000 msec
>> Long term average: 0.000000 msec
>>
>> Hopefully this starting point will allow others to discuss or contribute
>> changes to incrementally process some aspects of northd. We an also
>> decide if it is worth progressing with this in general.
>>
>> Thanks,
>>
>> Mark Gray (7):
>> inc-proc-eng: Allow definition of engine_node with global scope
>> northd: Introduce incremental processing for northd
>> northd: Add n_nat_entries field to 'struct ovn_datapath'
>> northd: Rename struct northd_context
>
> Hi Mark,
>
> Sorry for the slow response, but I encountered a problem when applying the
> series at the 4th patch:
>
> Applying: northd: Rename struct northd_context
> error: sha1 information is lacking or useless (northd/northd.c).
> error: could not build fake ancestor
>
> Could you check on your side if it applies cleanly on the current main
> branch?
>
Hi Han,
It did need a rebase but I don't think that is the cause of your error.
Your error looks like the patches were being applied before ovn-northd.c
was renamed to northd.c? Regardless, I did the rebase and tested. The
new version can be found at
https://patchwork.ozlabs.org/project/ovn/list/?series=267610 :
$ git log --format=oneline -1
3a597e03cd411e8316b68e13f88f1b097ad82ba0 (HEAD -> main, upstream/main)
controller: do not mark bfd and ipv6_pd msgs as local-only
$ git checkout -b test
Switched to a new branch 'test'
$ git-pw series apply 267610
Server version missing
You should provide the server version in the URL configured via
git-config or --server
This will be required in git-pw 2.0
Applying: inc-proc-eng: Allow definition of engine_node with global scope
Applying: northd: Introduce incremental processing for northd
Applying: northd: Add n_nat_entries field to 'struct ovn_datapath'
Applying: northd: Rename struct northd_context
Applying: northd: Introduce struct northd_data
Applying: northd: Add lflow node
Applying: en_lflow: Generate logical flows
> Thanks,
> Han
>
>> northd: Introduce struct northd_data
>> northd: Add lflow node
>> en_lflow: Generate logical flows
>>
>> controller/ovn-controller.c | 2 +-
>> lib/inc-proc-eng.h | 24 ++-
>> northd/automake.mk | 6 +
>> northd/en-lflow.c | 54 ++++++
>> northd/en-lflow.h | 16 ++
>> northd/en-northd.c | 65 +++++++
>> northd/en-northd.h | 21 +++
>> northd/inc-proc-northd.c | 257 ++++++++++++++++++++++++++
>> northd/inc-proc-northd.h | 15 ++
>> northd/northd.c | 358 +++++++++++++++++++-----------------
>> northd/northd.h | 36 +++-
>> northd/ovn-northd.c | 237 ++++++++++++++----------
>> 12 files changed, 807 insertions(+), 284 deletions(-)
>> create mode 100644 northd/en-lflow.c
>> create mode 100644 northd/en-lflow.h
>> create mode 100644 northd/en-northd.c
>> create mode 100644 northd/en-northd.h
>> create mode 100644 northd/inc-proc-northd.c
>> create mode 100644 northd/inc-proc-northd.h
>>
>> --
>> 2.27.0
>>
>>
>
More information about the dev
mailing list