I've committed this fix to the git repo for OVN for bionic, however there is no point in uploading it without another fix or point release as its related to package upgrade.
** Changed in: openvswitch (Ubuntu Bionic) Assignee: (unassigned) => James Page (james-page) ** Description changed: - When the openvswitch-switch package is upgraded, the various daemons get - restarted multiple times (see maintainer script below): + [Impact] + OVS daemons are restarted multiple times on package upgrade resulting in a protracted period of network pause for OVS management network objects due to multiple restarts. + + [Test Case] + Upgrade openvswitch-switch package/dpkg-reconfigure openvswitch-swithc + Examine systemd journal - ovsdb-server and ovs-vswitchd get restarted multiple times in quick session + + [Regression Potential] + Low - Ubuntu has had this fix in packaging since Disco with no reported adverse effects. + + [Original Bug Report] + When the openvswitch-switch package is upgraded, the various daemons get restarted multiple times (see maintainer script below): # Automatically added by dh_systemd_start/12ubuntu1 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then - if [ -d /run/systemd/system ]; then - systemctl --system daemon-reload >/dev/null || true - if [ -n "$2" ]; then - _dh_action=restart - else - _dh_action=start - fi - deb-systemd-invoke $_dh_action 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true - fi + if [ -d /run/systemd/system ]; then + systemctl --system daemon-reload >/dev/null || true + if [ -n "$2" ]; then + _dh_action=restart + else + _dh_action=start + fi + deb-systemd-invoke $_dh_action 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true + fi fi # End automatically added section # Automatically added by dh_systemd_start/12ubuntu1 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then - if [ -d /run/systemd/system ]; then - systemctl --system daemon-reload >/dev/null || true - if [ -n "$2" ]; then - deb-systemd-invoke try-restart 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true - fi - fi + if [ -d /run/systemd/system ]; then + systemctl --system daemon-reload >/dev/null || true + if [ -n "$2" ]; then + deb-systemd-invoke try-restart 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true + fi + fi fi # End automatically added section # Automatically added by dh_systemd_start/12ubuntu1 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then - if [ -d /run/systemd/system ]; then - systemctl --system daemon-reload >/dev/null || true - if [ -n "$2" ]; then - deb-systemd-invoke try-restart 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true - fi - fi + if [ -d /run/systemd/system ]; then + systemctl --system daemon-reload >/dev/null || true + if [ -n "$2" ]; then + deb-systemd-invoke try-restart 'ovs-vswitchd.service' 'ovsdb-server.service' >/dev/null || true + fi + fi fi # End automatically added section # Automatically added by dh_installinit/12ubuntu1 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then - if [ -x "/etc/init.d/openvswitch-switch" ]; then - update-rc.d openvswitch-switch defaults >/dev/null - if [ -n "$2" ]; then - _dh_action=restart - else - _dh_action=start - fi - invoke-rc.d openvswitch-switch $_dh_action || exit 1 - fi + if [ -x "/etc/init.d/openvswitch-switch" ]; then + update-rc.d openvswitch-switch defaults >/dev/null + if [ -n "$2" ]; then + _dh_action=restart + else + _dh_action=start + fi + invoke-rc.d openvswitch-switch $_dh_action || exit 1 + fi fi # End automatically added section - - This results in a extended period of network loss for OVS ports - really the only one that is required is the restart of openvswitch-switch (which covers the other two as depends anyway). + This results in a extended period of network loss for OVS ports - really + the only one that is required is the restart of openvswitch-switch + (which covers the other two as depends anyway). ProblemType: Bug DistroRelease: Ubuntu 19.04 Package: openvswitch-switch 2.11.0-0ubuntu1 ProcVersionSignature: Ubuntu 5.0.0-8.9-generic 5.0.1 Uname: Linux 5.0.0-8-generic x86_64 NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair ApportVersion: 2.20.10-0ubuntu25 Architecture: amd64 CurrentDesktop: ubuntu:GNOME Date: Fri Apr 5 08:24:32 2019 InstallationDate: Installed on 2018-10-18 (168 days ago) InstallationMedia: Ubuntu 18.10 "Cosmic Cuttlefish" - Release amd64 (20181017.3) SourcePackage: openvswitch UpgradeStatus: Upgraded to disco on 2019-03-17 (18 days ago) -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1823295 Title: openvswitch-switch package upgrades restart daemons multiple times To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/openvswitch/+bug/1823295/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs