[Bug 1907081] Re: Clustered OVN database is not upgraded on package upgrade
Brian Murray
1907081 at bugs.launchpad.net
Tue Jan 19 19:13:05 UTC 2021
Hello Frode, or anyone else affected,
Accepted ovn into groovy-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/ovn/20.06.2-0ubuntu1.2
in a few hours, and then in the -proposed repository.
Please help us by testing this new package. See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed. Your feedback will aid us getting this
update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
groovy to verification-done-groovy. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-groovy. In either case, without details of your testing we will
not be able to proceed.
Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
advance for helping!
N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.
** Changed in: ovn (Ubuntu Groovy)
Status: In Progress => Fix Committed
** Tags added: verification-needed verification-needed-groovy
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ovn in Ubuntu.
https://bugs.launchpad.net/bugs/1907081
Title:
Clustered OVN database is not upgraded on package upgrade
Status in charm-ovn-central:
Fix Committed
Status in ovn package in Ubuntu:
Fix Released
Status in ovn source package in Focal:
In Progress
Status in ovn source package in Groovy:
Fix Committed
Status in ovn source package in Hirsute:
Fix Released
Bug description:
[Impact]
On upgrade of the OVN packages it may be necessary to perform a upgrade to the Northbound and Southbound databases.
Failure to do so may lead to loss of connectivity between
participating nodes as the software components will attempt to make
use of columns that are not available in the database.
The upgrade process has been performed automatically by the upstream
init script by default since inception, both for a local and clustered
setup. But as discussed below recent changes has inadvertently omitted
this behavior for clustered databases.
[Test Case]
Non-clustered scenario as reference test:
Install the ovn-central package in a container using the in-release focal package and start the database and ovn-northd services.
Upgrade the container to the OVN packages from in-release Groovy and
observe the package performing the database upgrade and subsequently
ovn-northd service not complaining about missing columns in the
database.
Clustered scenario:
Install the ovn-central charm across three containers and necessary dependencies. Perform package upgrade as outlined above and compare how in-relase and proposed packages behave.
[Regression Potential]
As we are restoring the intended behavior the regression potential is minimal.
[Original Bug Report]
In the systemd service we make use of the `ovn-ctl` script `run_nb_ovsdb` and `run_sb_ovsdb` sub-commands introduced in [0]. These sub-commands fit nicely with systemd's expectations of modern daemons to no longer detachand run in the background.
However, the change in [0] has the side effect of disabling automatic
upgrading of clustered databases. Previously this would have been done
on every startup [1].
A recent commit to master [2] addresses this and uses the combination
of presence of `--db-*-cluster-local-addr` and non-presence of the
`--db-*-cluster-remote-addr` to determine if the upgrade should be
run.
We should backport [2] to our supported OVN packages to prepare for
supporting upgrades that require database schema changes. We may also
need to change the behavior of the ovn-central charm to not set the
`--db-*-cluster-remote-addr` argument on the leader unit.
0: https://github.com/ovn-org/ovn/commit/6444059b5f9444ce06634794d275257f945a6ce5
1: https://github.com/ovn-org/ovn/blob/5c2d311b8b7b4d5c3a619de72be6a433aa4c44db/utilities/ovn-ctl#L312-L314
2: https://github.com/ovn-org/ovn/commit/67e2f386cc838d0b0f9b4b5da7fe611e1113b70c
To manage notifications about this bug go to:
https://bugs.launchpad.net/charm-ovn-central/+bug/1907081/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list