[ovs-dev] [PATCH ovn] ovn-ctl: Handle cluster db upgrades for run_(nb/sb)_ovsdb
Numan Siddique
numans at ovn.org
Wed Sep 9 07:20:46 UTC 2020
On Wed, Sep 9, 2020 at 2:31 AM Mark Michelson <mmichels at redhat.com> wrote:
>
> This needs a rebase because commit
> 413cf9864024c4ef253ea177435161af198d5784 changed the way that the ovsdb
> server is started.
Thanks for the review. I submitted v2 -
https://patchwork.ozlabs.org/project/ovn/patch/20200909071939.5095-1-numans@ovn.org/
Numan
>
>
> On 9/3/20 9:04 AM, numans at ovn.org wrote:
> > From: Numan Siddique <numans at ovn.org>
> >
> > when ovn-ctl run_(nb_sb)_ovsdb is called, the ovsdb-server is started without
> > passing --detach and --monoitor and the process is exec'd.
> >
> > For cluster mode, upgrade_cluster is never called and hence the dbs are not upraded
> > to new schema. CMS has to handle the db upgrade separately.
> >
> > This patch handles the db upgrade by starting ovsdb-server in background and then
> > waits on ovsdb-server to complete.
> >
> > Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1868392
> > Signed-off-by: Numan Siddique <numans at ovn.org>
> > ---
> > utilities/ovn-ctl | 18 +++++++++++++++++-
> > 1 file changed, 17 insertions(+), 1 deletion(-)
> >
> > diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl
> > index 8afe68a0ad..dee58d9a36 100755
> > --- a/utilities/ovn-ctl
> > +++ b/utilities/ovn-ctl
> > @@ -288,7 +288,19 @@ $cluster_remote_port
> > set "$@" --sync-from=`cat $active_conf_file`
> > fi
> >
> > - "$@" "$file"
> > + local run_ovsdb_in_bg="no"
> > + local process_id=
> > + if test X$detach = Xno && test $mode = cluster && test -z "$cluster_remote_addr" ; then
> > + # When detach is no (for run_nb_ovsdb/run_sb_ovsdb commands)
> > + # we want to run ovsdb-server in background rather than running it in foreground
> > + # so that the OVN dbs are upgraded for the cluster mode.
> > + # Otherwise, CMS has to take the responsibility of upgrading the dbs.
> > + run_ovsdb_in_bg="yes"
> > + "$@" $file &
> > + process_id=$!
> > + else
> > + "$@" $file
> > + fi
> >
> > # Initialize the database if it's NOT joining a cluster.
> > if test -z "$cluster_remote_addr"; then
> > @@ -298,6 +310,10 @@ $cluster_remote_port
> > if test $mode = cluster; then
> > upgrade_cluster "$schema" "unix:$sock"
> > fi
> > +
> > + if test $run_ovsdb_in_bg = yes; then
> > + wait $process_id
> > + fi
> > }
> >
> > start_nb_ovsdb() {
> >
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
More information about the dev
mailing list