On Thu, Jan 21, 2021 at 11:23 AM Ilya Maximets <[email protected]> wrote: > > There is a change of a database file format in OVS version 2.15 that > doesn't allow older versions of ovsdb-server to read the database file > modified by the ovsdb-server version 2.15 or later. This also affects > runtime communications between servers in active-backup and cluster > service models. > > For the upgrade scenario OVS introduced special command line argument > for ovsdb-server: --disable-file-column-diff. > More datails in ovsdb(7) or here: > https://docs.openvswitch.org/en/latest/ref/ovsdb.7/#upgrading-from-version-2-14-and-earlier-to-2-15-and-later > > In order to support upgrades of OVN databases introducing new option > '--ovsdb-disable-file-column-diff' for ovn-ctl script that will pass > aforementioned argument to ovsdb-server processes. > > To simplify upgrades for users, ovn-ctl will add requested argument > to ovsdb-server only if ovsdb-server actually supports it. > > Signed-off-by: Ilya Maximets <[email protected]> > --- > NEWS | 3 +++ > utilities/ovn-ctl | 12 ++++++++++++ > 2 files changed, 15 insertions(+) > > diff --git a/NEWS b/NEWS > index e89c5f408..d4619dd74 100644 > --- a/NEWS > +++ b/NEWS > @@ -10,6 +10,9 @@ Post-v20.12.0 > "ovn-installed". This external-id is set by ovn-controller only after all > openflow operations corresponding to the OVS interface being added have > been processed. > + - ovn-ctl: Added new command line argument '--ovsdb-disable-file-column-diff' > + to support ovsdb-server upgrades from version 2.14 and earlier to > + 2.15 and later. See ovsdb(7) for more details. > > OVN v20.12.0 - 18 Dec 2020 > -------------------------- > diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl > index 111930886..967db6d6c 100755 > --- a/utilities/ovn-ctl > +++ b/utilities/ovn-ctl > @@ -251,6 +251,11 @@ $cluster_remote_port > > [ "$OVN_USER" != "" ] && set "$@" --user "$OVN_USER" > > + if test X"$OVSDB_DISABLE_FILE_COLUMN_DIFF" = Xyes; then > + (ovsdb-server --help | grep -q disable-file-column-diff) \
Do we really need this above line? The ovs-ctl tool is part of the OVS release, so there shouldn't be a situation that ovs-ctl supports this new option while the ovsdb-server doesn't, right? Of course it is not harmful either, but we don't handle other options this way. Other than this: Acked-by: Han Zhou <[email protected]> > + && set "$@" --disable-file-column-diff > + fi > + > if test X"$detach" != Xno; then > set "$@" --detach --monitor > else > @@ -715,6 +720,8 @@ set_defaults () { > OVSDB_NB_WRAPPER= > OVSDB_SB_WRAPPER= > > + OVSDB_DISABLE_FILE_COLUMN_DIFF=no > + > OVN_USER= > > OVN_CONTROLLER_LOG="-vconsole:emer -vsyslog:err -vfile:info" > @@ -932,6 +939,11 @@ Options: > --ovs-user="user[:group]" pass the --user flag to ovs daemons > --ovsdb-nb-wrapper=WRAPPER run with a wrapper like valgrind for debugging > --ovsdb-sb-wrapper=WRAPPER run with a wrapper like valgrind for debugging > + --ovsdb-disable-file-column-diff=no|yes > + Specifies whether or not ovsdb-server > + processes should be started with > + --disable-file-column-diff. > + More details in ovsdb(7). (default: no) > -h, --help display this help message > > File location options: > -- > 2.26.2 > > _______________________________________________ > 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
