diff options
author | Gurucharan Shetty <guru@ovn.org> | 2016-07-08 00:15:49 -0700 |
---|---|---|
committer | Gurucharan Shetty <guru@ovn.org> | 2016-07-09 09:36:15 -0700 |
commit | 34114cf8165b6134a556d07ed22d03e9eac2fe4f (patch) | |
tree | d64b1eb5507a64bcc41e43522ddc77bbfd1fbf91 /tests/ovn.at | |
parent | 50c61d46c49756ef7474951ee586fd7ae252484c (diff) | |
download | openvswitch-34114cf8165b6134a556d07ed22d03e9eac2fe4f.tar.gz |
ovn-controller: Change strategy for gateway conntrack zone allocation.
Commit 263064aeaa31e7 (Convert binding_run to incremental processing.)
changed the way patched_datapaths were handled. Previously we would
destroy the datastructure in every run and re-create it fresh. The new
way causes problems with the way conntrack zones are allocated as now
we can have stale port_binding entries causing segmentation faults.
With this commit, we simply don't depend on port_binding records in
conntrack zone allocation and instead store the UUID as a string in
the patch_datapath datastructure.
(The test enhanced with this commit would fail without the changes
in the commit. i.e. ovn-controller would crash. )
Signed-off-by: Gurucharan Shetty <guru@ovn.org>
Acked-by: Ryan Moats <rmoats@us.ibm.com>
Diffstat (limited to 'tests/ovn.at')
-rw-r--r-- | tests/ovn.at | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/ovn.at b/tests/ovn.at index b28c90eac..16262cde7 100644 --- a/tests/ovn.at +++ b/tests/ovn.at @@ -3082,6 +3082,27 @@ $PYTHON "$top_srcdir/utilities/ovs-pcap.in" hv2/vif1-tx.pcap | trim_zeros > rece echo $expected | trim_zeros > expout AT_CHECK([cat received1.packets], [0], [expout]) +# Delete the router and re-create it. Things should work as before. +ovn-nbctl lr-del R2 +ovn-nbctl create Logical_Router name=R2 options:chassis="hv2" +# Connect alice to R2 +ovn-nbctl lrp-add R2 alice 00:00:02:01:02:03 172.16.1.1/24 +# Connect R2 to join +ovn-nbctl lrp-add R2 R2_join 00:00:04:01:02:04 20.0.0.2/24 + +ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \ +ip_prefix=192.168.1.0/24 nexthop=20.0.0.1 -- add Logical_Router \ +R2 static_routes @lrt + +# Wait for ovn-controller to catch up. +sleep 1 + +# Send the packet again. +as hv1 ovs-appctl netdev-dummy/receive hv1-vif1 $packet +$PYTHON "$top_srcdir/utilities/ovs-pcap.in" hv2/vif1-tx.pcap | trim_zeros > received1.packets +echo $expected | trim_zeros >> expout +AT_CHECK([cat received1.packets], [0], [expout]) + OVN_CLEANUP([hv1],[hv2]) AT_CLEANUP |