On Wed, Sep 2, 2020 at 4:57 AM Han Zhou <[email protected]> wrote: > This option is added to avoid the flooding of nb_cfg updates from > a large nubmer of hypervisors interfere with the original SB DB > data distribution and handling, so that the e2e control plane latency > can be measured more accurately during scale testing. > > Signed-off-by: Han Zhou <[email protected]> > --- > controller/ovn-controller.8.xml | 12 ++++++++++++ > controller/ovn-controller.c | 9 +++++++++ > 2 files changed, 21 insertions(+) > > diff --git a/controller/ovn-controller.8.xml > b/controller/ovn-controller.8.xml > index 6687731..4cb3f41 100644 > --- a/controller/ovn-controller.8.xml > +++ b/controller/ovn-controller.8.xml > @@ -233,6 +233,18 @@ > The boolean flag indicates if the chassis is used as an > interconnection gateway. > </dd> > + > + <dt><code>external_ids:ovn-delay-nb-cfg-report</code></dt> > + <dd> > + An integer that represents the time (in seconds) to sleep before > + <code>ovn-controller</code> updating <code>nb_cfg</code> column > + of <code>Chassis_Private</code> table after it completes > processing > + the corresponding changes. By default it is 0 (meaning do not > sleep). > + This value can be configured when doing control plane latency > testing, > + to make sure the updates of <code>nb_cfg</code> to the Southbound > DB > + from a large number of hypervisors do not interfere with the > original > + Southbound DB data processing. > + </dd> > </dl> > > <p> > diff --git a/controller/ovn-controller.c b/controller/ovn-controller.c > index 89f10a6..5ab5a13 100644 > --- a/controller/ovn-controller.c > +++ b/controller/ovn-controller.c > @@ -2568,6 +2568,15 @@ main(int argc, char *argv[]) > sbrec_chassis_private_set_nb_cfg(chassis_private, > cur_cfg); > sbrec_chassis_private_set_nb_cfg_timestamp( > chassis_private, time_wall_msec()); > + const struct ovsrec_open_vswitch *cfg = > + ovsrec_open_vswitch_first(ovs_idl_loop.idl); > + if (cfg) { > + int delay_cfg_report = > smap_get_int(&cfg->external_ids, > + "ovn-delay-nb-cfg-report", > 0); > + if (delay_cfg_report) { > + xsleep(delay_cfg_report); > + } > + } >
Hi Han, Maybe we can also sync this option from the ovs config to chassis other_config in south db ? What do you think ? Thanks Numan > } > } > > -- > 2.1.0 > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
