[ovs-dev] [PATCH] ovs-save: Handle cases of upgrades from very old OVS versions.
Gurucharan Shetty
guru at ovn.org
Wed May 8 14:11:56 UTC 2019
We have added code to ovs-save over the last few releases
which makes the following bad assumptions.
1. The default OpenFlow version of running daemon is OpenFlow14.
Impact: This causes upgrades from older OVS versions to end up with no
flows in their bridges (even the default 'NORMAL' ones) causing traffic
to stop.
2. That ovs-ofctl commands like dump-groups and dump-tlv-map
will just work with old OVS versions.
Impact: Does not look like it effects the upgrade in a bad away - except
you get some errors.
Since OpenFlow14 was enabled by default in OVS 2.8, this commit makes
a lazy assumption that any upgrade of OVS from versions before 2.7
will not attempt to save and restore flows.
VMware-BZ: #2340482
Signed-off-by: Gurucharan Shetty <guru at ovn.org>
---
utilities/ovs-save | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/utilities/ovs-save b/utilities/ovs-save
index 1ba36e9..4df0c4a 100755
--- a/utilities/ovs-save
+++ b/utilities/ovs-save
@@ -110,6 +110,15 @@ save_flows () {
exit 1
fi
+ case `ovs-appctl version | sed 1q` in
+ "ovs-vswitchd (Open vSwitch) 1."*.*)
+ return
+ ;;
+ "ovs-vswitchd (Open vSwitch) 2."[0-7].*)
+ return
+ ;;
+ esac
+
workdir=$(mktemp -d "${TMPDIR:-/tmp}/ovs-save.XXXXXXXXXX")
for bridge in "$@"; do
# Get the highest enabled OpenFlow version
--
1.9.1
More information about the dev
mailing list