Aswin Suryanarayanan [Tue, 17 Oct 2017 07:01:21 +0000 (12:31 +0530)]
Bug 9299 - In conntrack SNAT Vpn to dpn maps fails to update when a
subnet is added/removed
Added update method in centralized switch scheduler. This will update
the maps when a subnet is added/ removed from the router.
Change-Id: I7418cf0e3586fc643c14c86f807c542ed586305d
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
cgowdru [Mon, 30 Oct 2017 07:47:11 +0000 (13:17 +0530)]
21->nat-group flow is not present on OVS after “upgrade”
table=21, priority=10,ip,metadata=0x30d42/0xfffffe actions=group:225000
(checks the VRF id and forwards to a group
that outputs to the external interface)
The flow is in fact written by ODL but rejected by OVS because
group:225000 is not present at the time the flow is written.
Group:225000 is not written because at the time that is triggered
(twice, actually) there is no /elan-interfaces/elan-interface for the
external network (trunk) port because OVS has not yet connected.
Create a default NAT group(225000) before installing flow the
21->group:225000. If elan-interface(for external-interfaces) are missing
during this group creation, then create this group with an drop action.
Once elan-interfaces are available, this group will be updated with proper
action values.
Steps perfomed
--------------
1) Shutdown ODL (logout)
2) wipe data store (rm -rf $KARAF_HOME/journal/* &
$KARAF_HOME/snapshots/*)
3) disconnect OVS and clear groups/flows
sudo ovs-ofctl del-flows -O Openflow13 br-int
sudo ovs-ofctl del-groups -O Openflow13 br-int
sudo ovs-vsctl del-manager
sudo ovs-vsctl del-controller br-int
4) restart ODL (./karaf)
5) Wait for net-odl full sync from neutron
- waited until DS gets poulatedi
- (ex : GET http://192.168.56.1:8181/restconf/config/neutron:neutron/ports)
6) reconnect OVS
sudo ovs-vsctl set-manager "tcp:192.168.56.1:6640"
sudo ovs-vsctl set-controller br-int "tcp:192.168.56.1:6653"
Change-Id: Iad89b3ff7935846b0bf1a3b9b3a4690ff87fcd9c
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
Gowri R [Tue, 24 Oct 2017 12:13:16 +0000 (17:43 +0530)]
NETVIRT-926 - Maxpath value should be between 1 to 64 in BGP multipath
Adding a check to ensure maxpath value for BGP multipath is in the range 1 to 64
Change-Id: I6797caca05efe35242ed6a44b73ca28827b5edfe
Signed-off-by: Gowri R <gowri.r@ericsson.com>
(cherry picked from commit
b48fb802cbfbb7f5fa39a6a3e39dc50f97897e98)
ehvkand [Tue, 17 Oct 2017 06:05:25 +0000 (11:35 +0530)]
Bug9245: Table=21 related exceptions fixes
https://jira.opendaylight.org/browse/NETVIRT-940
Change-Id: I66ae23bd3fd9ad1e2a80648672f8120ffd3beea3
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Shashidhar Raja [Tue, 10 Oct 2017 16:47:00 +0000 (22:17 +0530)]
Updated to use bind-service update instead of bind and unbind in Acl VPN
listener
This commit has a dependency on below genius commit:
https://git.opendaylight.org/gerrit/#/c/64123/
Depends-On: Ib05a8fcfac8e74fa5a925edd0db49b7254bbed6a
Change-Id: I3acfe6f7f3f3e98139eb2413774d559ba8c25f8d
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
kiranvasudeva [Wed, 6 Sep 2017 10:03:58 +0000 (15:33 +0530)]
Handle usecase when ELAN is null, and ACL service BIND/ADD fails due to NPE
(a) Added ElanInterface Listener for Acl service, if ElanInterface add event comes
after ConfigInterface or InterfaceState event's, update ElanId into aclInterface,
invoke Bind and add.
(b) Skip Bind/Add in AclInterfaceListener/AclInterfaceStateListener if Elan id is null
(c) Sync all aclInterface modifications.
Change-Id: I29969844262af9c4972d8eeaaaf8a760e91b16d9
Signed-off-by: kiranvasudeva <kirankumar.v@altencalsoftlabs.com>
jenkins-releng [Tue, 17 Oct 2017 01:39:42 +0000 (01:39 +0000)]
Bump versions by x.y.(z+1)
Change-Id: I8bf4677ee2b060d718404b0f9d8c25c6f3c4f328
Signed-off-by: jenkins-releng <jenkins-releng@opendaylight.org>
HANAMANTAGOUD V Kandagal [Mon, 25 Sep 2017 12:30:58 +0000 (18:00 +0530)]
Bug 9181: Code changes for conflicting modifications exceptions of table=19
Table=19 conflicting modification exception is seen when Router Interface
VRF entry is being created and VM is being booted at the same time.
This creates a race condition where same flow identity for table=19 is
being written into inventory configDS.
Fix:
Synchronization is being done over VpnInstance to avoid two threads trying
to write the same flow at same time.
Change-Id: I38d6b12bcec4ade471c99571028265d868a1e3a2
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
karthikeyan [Mon, 9 Oct 2017 12:42:33 +0000 (18:12 +0530)]
Bug 9246: Conflicting modification from ARP and Router-GW-Mac
Problem Statement:
==================
The following runtime exceptions was throwing from NAT module as part of
" Delete Vm Instances" in CSIT.
Exception 1:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:
264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=81}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=Arp:tbl_81:lport_11:tpa_10.10.10.3}]
Exception 2:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:
264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=19}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=fa:16:3e:ce:fd:00.100003.
2644421268113
01.19}]
Solution:
==========
Whenever NAPT switch over happens DS odl-nat:napt-switches will get update
with newly elected NAPT switch ID for particular router. If there is an
update in DS CentralizedSwitchChangeListener will get triggered and
re-install the L3_GW_MAC_TABLE (19) and ARP_RESPONDER_TABLE (81) flows. As
part of doing this we were used single write transaction object for both
DELETE and ADD. This is the root cause of this throwing conflict
modification exceptions. Now we have created separate write transaction
object for ADD and DELETE.
Change-Id: I409442c07535504ba642475c17c5a787cbf2a261
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
Philippe Guibert [Thu, 5 Oct 2017 14:06:20 +0000 (15:06 +0100)]
Bug 8976 - Upstreaming fixes to master
This patch contains fix for removing spaces on two log messages.
Change-Id: I7347933d50650a10ee9092655d8503d20a6c3ef6
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Aswin Suryanarayanan [Wed, 4 Oct 2017 14:30:41 +0000 (20:00 +0530)]
Bug 8964 - Neutron test
neutron.tests.tempest.scenario.test_floatingip.FloatingIpSameNetwork.test_east_west
fails
Set the in_port to zero in NAPT_PFIB table. This prevents the packet
drop in NAPT switch when the packet originating from tunnel is send back
to the same tunnel after DNAT.(when FIP VM and NFIP VM is in same
non-NAPT switch)
Change-Id: I42d98cc411ae21b8d32e44f4bc9217e22946cdc8
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Stephen Kitt [Wed, 4 Oct 2017 12:07:16 +0000 (14:07 +0200)]
Test SNAT mostSignificantBit()
Static analysis complains that the current implementation of
mostSignificantBit() overflows int; that’s actually not the case, but
we can rewrite it more efficiently using Integer.numberOfLeadingZeros
anyway (with a unit test to ensure that the behaviour doesn’t
change).
loadStart and loadEnd can be converted to static constants.
Change-Id: I7e9068edd9d6c98e7c1a3c830ad8d7098d01dc75
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Vivekanandan Narasimhan [Thu, 28 Sep 2017 17:39:36 +0000 (23:09 +0530)]
Bug 9226: VPN Traffic fails after VM Migration
Fixes the way we handle prefix-to-interface for VM Migration.
For more information please review the comment lines added in the
patch.
Change-Id: Ib6412f8ef53fcb3c460546332cdd44b2ec19a15d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Sam Hague [Tue, 3 Oct 2017 18:43:36 +0000 (14:43 -0400)]
Bug 9237 - NPE: InternalToExternalPortMapKey
Change-Id: I40f0e07d11540480163cde2e15ec6e22583e4845
Signed-off-by: Sam Hague <shague@redhat.com>
karthikeyan [Mon, 25 Sep 2017 12:04:25 +0000 (17:34 +0530)]
Bug 9180: Conflicting modification Exception from NAT Module
Problem Description:
====================
The following runtime exceptions was throwing from NAT module as part of
"adding external router gateway set" in CSIT.
Exception 1:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:
264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=81}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=Arp:tbl_81:lport_11:tpa_10.10.10.3}]
Exception 2:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:
264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=19}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=fa:16:3e:ce:fd:00.100003.
2644421268113
01.19}]
Solution:
==========
When we do router gateway set for external network, below same flows are
getting installed from two different NAT module listeners which is
causing this runtime "Conflicting modification" exceptions.
1) L3_GW_MAC_TABLE (19) -> L3_FIB_TABLE (21) with external router GW MAC
and
External router vpn-id as match criteria.
2) ARP_RESPONDER_TABLE (81) -> EGRESS_LPORT_DISPATCHER_TABLE (220) with
external router GW MAC in ARP Responder flow.
handleRouterGwFlows() method is commented out in ExternalRoutersListener
add() method alone.
Since the same action is taken care by CentralizedSwitchChangeListener
which is listening on DS "odl-nat:napt-switches".
Change-Id: I2dece791d639b243689f24c112bf6250029de019
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
Vinh Nguyen [Sat, 5 Aug 2017 00:11:53 +0000 (17:11 -0700)]
BUG 7596 - Update to handle change in Neutron Network external attribute
Changes to handle update event when Neutron Network changes
from non-external to external and vice versa
Change-Id: I2c55272dc6e2b8473f2666b39e36b65c7e578cf0
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
Sam Hague [Mon, 2 Oct 2017 16:58:49 +0000 (12:58 -0400)]
Remove unneeded mdsal and yangtools artifacts
Change-Id: Idc837885ce8e20cc0e69d79557e8151cd977c368
Signed-off-by: Sam Hague <shague@redhat.com>
Sam Hague [Mon, 2 Oct 2017 15:21:31 +0000 (11:21 -0400)]
Remove unneeded pom version values
Change-Id: I3cce922c5bbb60220f977d5f6ceb26baffb5a698
Signed-off-by: Sam Hague <shague@redhat.com>
eupakir [Thu, 28 Sep 2017 06:20:57 +0000 (11:50 +0530)]
Undo incorrect code changes made during merge conflict.
A part of the fix pushed in by https://git.opendaylight.org/gerrit/#/c/59229
was removed unintentionally in
https://git.opendaylight.org/gerrit/#/c/57978 .
This has been rectified.
Change-Id: I19372961a30c18a454cd359138190e49d5ab7769
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
karthikeyan [Tue, 29 Aug 2017 09:56:28 +0000 (15:26 +0530)]
Bug 9066:Use Single Transaction for DNAT Flow Install and Remove
Problem Description:
===================
Use one transaction for DNAT flow install and use another single
transaction for Removing the flows from DNAT switch.
As of now each DNAT (Floating-ip) flow installation, it used separate
transaction object for each flow installation.
Solution:
==========
Used single write transaction object for all DNAT(Floating-IP) flows installation on
the switch and used other
write transaction object for removing all DNAT flows on the switch.
Change-Id: Idf8f0c9ce36b20b14ede9a423c574ee21f36d02e
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
kaoru sueda [Tue, 12 Sep 2017 05:41:06 +0000 (14:41 +0900)]
Bug 9077: Fix of issue that the existing NW communication failure when new NW is created
Issue:
The existing network communication failed after 1001 NWs were created,
as some of its ovs flows were overwritten.
Cause of this issue:
In NW creation, some ovs flows' ID were duplicated. The flow ID of the
1001th network is duplicated with the flow ID of the 1st NW, resulting
the flow of the 1st NW being deleted(overwritten).
Fix:
Avoid duplication by appending flow name.
Change-Id: I657d35d52b3fe452097294e7b3517aacf75f2fac
Signed-off-by: kaoru sueda <k-sueda@zj.nes.jp.nec.com>
Sam Hague [Thu, 28 Sep 2017 12:13:26 +0000 (08:13 -0400)]
Lower log level for non errors
Change-Id: Ifd2993d7dc4ad97281bcc889157d1ca43be671e2
Signed-off-by: Sam Hague <shague@redhat.com>
Vivekanandan Narasimhan [Tue, 26 Sep 2017 17:41:27 +0000 (23:11 +0530)]
Bug 9209: PNF learned on external networks to skip local FIB Processing
PNFs learned on external network will not have any specific DPNID
tagged to them. As a result, we need to skip local flow processing
for such entries.
The external subnet gateway ip is now learned via the PNF code.
Change-Id: I43f254b05949f0e13e5555f622cd7f9866d7856d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Somashekar Byrappa [Tue, 19 Sep 2017 06:59:16 +0000 (12:29 +0530)]
Renamed acl-impl.rst to acl-reflection-on-existing-traffic.rst
+ Updated index.rst file with the same name.
Change-Id: I002053111689c84ea515d047c6802d32dcf9504d
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
(cherry picked from commit
bf2178cb6ddc29b5293a9cfa51b3a8da6d086c0d)
David Suarez [Wed, 27 Sep 2017 08:31:23 +0000 (10:31 +0200)]
Remove explicit default super-constructor calls
The default constructor is called by default (hence its name), no need
to call it explicitly. Based on this commit [1].
[1] https://git.opendaylight.org/gerrit/#/c/63526/
Change-Id: Ia7a4ccf88c328aab9feade1252a06e2c94b660ac
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
(cherry picked from commit
d95ada0a7de3692f8d732fc2885045c3b2cf3d0b)
Sam Hague [Tue, 26 Sep 2017 21:54:23 +0000 (17:54 -0400)]
bug-9190: NullPointerException at getIsExternal
Change-Id: I2e95c71594798431259f10631cef514ef410c199
Signed-off-by: Sam Hague <shague@redhat.com>
Sam Hague [Tue, 26 Sep 2017 21:51:28 +0000 (17:51 -0400)]
Lower log level for non errors
Change-Id: I7108bb53268bf5d2513b44117d9755cf62c5aaac
Signed-off-by: Sam Hague <shague@redhat.com>
cgowdru [Tue, 5 Sep 2017 11:24:40 +0000 (16:54 +0530)]
Bug9091 : Removing uncessary MD-SAL Read Operation in NAT
Description : It's been obseved many unnecessary MD-SAL read operations
where done in NAT module. Changes done to pass them as parameters to
calling methods instead reading the same data again which is already
retrieved earlier in it caller methods.
Change-Id: If5efc57a0342caa6acf73b3f17dba033cab77e7c
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Philippe Guibert [Mon, 29 May 2017 09:45:00 +0000 (10:45 +0100)]
bgpmanager: change API of bgpmanager to add VRF IPv4 or IPv6
This change adds a change in IBgpManager API, since it adds afi and safi
parameters to VRF creation and deletion. This information is propagated
to BGP so as to create and delete VPN context tables in function of the
AFI and SAFI settings.
Instead of passing a layerType value, an AddressFamily type is used.
AddressFamily is mapped to internal afi/safi values.
The values are appended or removed to the VRF objects of BGP Manager.
The VRF object is then written to the config DS.
Subsequently, the Quagga will be called upon the various changes in the VRF object.
If the object is added or updated, the Quagga will be called with the appropriate
afi/safi values. If the object is removed, all the afi/safi values are removed from
the Quagga. If the object is added, the afi/safi values are added to the quagga.
Change-Id: Ife754ce561f69dbb67fcdf74308b5153cbde53e6
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Philippe Guibert [Wed, 20 Sep 2017 10:03:50 +0000 (11:03 +0100)]
neutronvpn: create ipv4 or ipv6 context
Add ipv4Family and ipv6Family attributes to VPN instance. Add
IpVersionChoice class, which allows to set values for these attributes
in dependency of Ethertype of added/removed to VPN subnet.
Change-Id: If5ea1a0a29d31388d7898b9e6e53bdc4aecb1cbe
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
Philippe Guibert [Tue, 11 Jul 2017 12:40:15 +0000 (13:40 +0100)]
Dualstack support for L3VPN - single router Dual stack
According to dualstack specification [0], this commit introduces changes
related to "one router solution" case.
* NeutronPortChangeListener: Create only one VPN interface instance
for one neutron port. This instance can include a list of IPv4 and/or
IPv6 subnetMaps, where addresses where allocated for spawned port.
* NeutronvpnManager: in createVpnInterface we no longer use routerId as
argument, instead we will iterate over all port IP addresses to create
according adjacencies objects and than, we pass composed adjacencies
list to writeVpnInterfaceToDs method.
Change-Id: I5f527be0ebea8f1a74e9a790aa9c3fec6291bda7
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
Signed-off-by: Sam Hague <shague@redhat.com>
(cherry picked from commit
aea0c1d4aa344551928fab24bcbddc5c170fd087)
eupakir [Mon, 25 Sep 2017 10:02:06 +0000 (15:32 +0530)]
Bug 8953 - IllegalArgumentException: vrfEntry is missing mandatory
descendant origin
Change-Id: I0978d55f09d0e9b31aa2b74e5cfac68a757c29da
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
Sam Hague [Mon, 25 Sep 2017 22:06:18 +0000 (18:06 -0400)]
lower log levels for non-errors
Change-Id: I417085e3a9547b03ffe2c74285bf8af2746d461e
Signed-off-by: Sam Hague <shague@redhat.com>
Siva Kumar Perumalla [Mon, 25 Sep 2017 23:41:32 +0000 (05:11 +0530)]
ClearBgpCli reads from socket to send/receive from bgpd
(some previous commit modifed to read from session parameters)
Change-Id: Id0f4e8294e239fee70d6b09d891d50c5c6a9237a
Signed-off-by: Siva Kumar Perumalla <sivakumar.perumalla@ericsson.com>
Gowri R [Thu, 21 Sep 2017 11:50:39 +0000 (17:20 +0530)]
Bug 9196 - Maxpath value should be between 1 to 64 in BGP multipath
Adding a check to ensure maxpath value for BGP multipath is in the range 1
to 64
Change-Id: I03786726053672d04b8ef552cb16cc45a9c4a840
Signed-off-by: Gowri R <gowri.r@ericsson.com>
(cherry picked from commit
0f1503f59962293a5bcdbe1e2a6adfc9b8afa1a6)
Yugandhar Reddy Kaku [Tue, 5 Sep 2017 12:27:04 +0000 (17:57 +0530)]
Bug 8963 - Option to configure EVPN address family
evpn can be configured as neighbor from karaf CLI with command bgp-nbr
In the bgp-nbr command, for supported address families, vpnv4 is added as
it was missing.
Change-Id: I9d8854c9a7a05f1a48836f0ae88c7934b31a14be
Signed-off-by: Yugandhar Reddy Kaku <yugandhar.reddy.kaku@ericsson.com>
Siva Kumar Perumalla [Mon, 18 Sep 2017 12:34:32 +0000 (18:04 +0530)]
bgpmanager thrift upgrade to 0.9.3
Change-Id: I5154fc5b3522313b30d647b68ed37dfd9e02f9ca
Signed-off-by: Siva Kumar Perumalla <sivakumar.perumalla@ericsson.com>
Vinh Nguyen [Thu, 10 Aug 2017 19:26:24 +0000 (12:26 -0700)]
BUG 8930 - delete Op VPN interface when deleting external network
Op VPNInterafce is removed in VrfEntryListener when the last
adjacency for the VPNInterface is removed.
The problem is VPN interface for external network doesn't
have any adjacency nor VrfEntry.
As a result, when the external Vpn interface is removed
the Op VpnInstance is not removed as it should.
Fix: Delete the Op VPN interface in VpnInterfaceManager
if the VPN interface to be deleted doesn't have any adjacency
Change-Id: Ice4b9fcb0103c6aff25053cc5b3db3b01311be06
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
Stephen Kitt [Mon, 11 Sep 2017 16:29:58 +0000 (18:29 +0200)]
elanmanager: clean up Futures collections
This patch replaces lists of Futures with singleton lists where
possible. It also removes instances of passing such lists around,
using return values instead.
This patch also cleans up the job classes generally: instance fields
are final where possible, unused fields and parameters are removed.
Change-Id: I8db42f96867b61e46eaf229f95d06c7f6b6249f0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Aswin Suryanarayanan [Wed, 20 Sep 2017 18:00:32 +0000 (23:30 +0530)]
Bug 9193 - In conntrack SNAT , flows are programmed twice on a router
g/w set.
Check is added in RouterDpnChangeListener to check if the port added is
th pseudo router interface and prevent the notification.
Fixed an exception caused by not creating VNI pool.
Change-Id: I6f5fd8f6bd35c37346a2d7780eaf0d49b2fe92cb
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Sam Hague [Wed, 20 Sep 2017 21:44:04 +0000 (17:44 -0400)]
Lower log levels for non error's
Change-Id: Ia60e0b8bc87182cc2e4ac6611b77b0f421947da9
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Fri, 15 Sep 2017 15:29:05 +0000 (17:29 +0200)]
IfMgr clean-up
* Avoid calling overridable methods in the constructor.
* Initialise fields in the declaration.
* Remove unused parameters.
* Remove null checks after new, new never returns null.
* Remove unnecessary return statements.
* Remove end-of-method null assignments for local variables.
* Use Map methods to simplify processing.
* Fix a couple of invalid null-handling constructs.
Change-Id: I144268785df2b648daa487c1eb8c63877dd13325
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Tue, 5 Sep 2017 14:56:22 +0000 (16:56 +0200)]
Restrict NeutronvpnUtils.read
As a first step towards removing NeutronvpuUtils.read, replace all
external uses with SingleTransactionDataBroker.syncReadOptional and
adjust the exception handling accordingly (which also allows us to
clean up a number of disabled Checkstyle warnings).
Change-Id: Ibad4aa194657cdb8c56ccd993c9182dbf4225f02
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Vinh Nguyen [Mon, 14 Aug 2017 22:19:11 +0000 (15:19 -0700)]
BUG 8969 - Fix Exeption when clearing external router GW
When clearing the router GW, the flow entry for router GW
on the NAPT primary switch is also removed.
Exception occurs when we try to delete the router GW
but there is no NAPT primary switch.
Fix: check for existence of NAPT primary switch
before deleting the router GW flow on the switch.
Also downgrade ERROR to DEBUG log level when primary
NAPT switch can not be found since this could
happen when no internal network attaches to the router yet.
Change-Id: I7ebc0d60183954044aeb8a4e8f062b4d227f6c76
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
Sam Hague [Wed, 20 Sep 2017 15:29:16 +0000 (11:29 -0400)]
bug-9190: NullPointerException at getIsExternal
Change-Id: If79a282989206bafe8d6c90e1bc089d820d6f0d2
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Tue, 12 Sep 2017 08:54:22 +0000 (10:54 +0200)]
Bug 9105: close removeElanInterface transaction
Cancel the interface transaction if we return early from
removeElanInterface. Initialise the flow transaction after the early
return so we don’t need to handle it specially.
Change-Id: I317925cef806c792038299b74d73f18861e40bd8
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Thu, 27 Jul 2017 15:07:26 +0000 (17:07 +0200)]
ElanUtils clean-up: ElanL2GatewayUtils
This patch initialises ElanL2GatewayUtils using BluePrint. This
involves adding static variants to a small number of methods in order
to break the dependency cycle involving ElanInstanceManager,
ElanInterfaceManager, ElanUtils and ElanL2GatewayUtils.
Change-Id: Icf17e0fb7683b871b8246b148d905e51bad4e598
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Thu, 27 Jul 2017 13:48:02 +0000 (15:48 +0200)]
ElanUtils clean-up: L2GatewayConnectionUtils
This turns L2GatewayConnectionUtils into a self-carrying bean, instead
of relying on ElanUtils to initialise it.
Change-Id: I2c5c8330e57a46048651a1f6b656fb34b099afe3
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Thu, 27 Jul 2017 08:29:38 +0000 (10:29 +0200)]
ElanUtils clean-up: remove unnecessary references
A number of classes reference ElanUtils instances even though they no
longer need them, or they call static methods via an instance. This
patch cleans them up.
Change-Id: I29bf1454e7a56ac474ef9198a48114b0b0447aea
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Tue, 25 Jul 2017 08:09:47 +0000 (10:09 +0200)]
ElanUtils clean-up: ElanL2Gateway{Multicast,}Utils
Extract various utility methods to ElanDmacUtils, ElanEtreeUtils and
ElanItmUtils, so that ElanL2GatewayMulticastUtils’ dependency on
ElanL2GatewayUtils (which needs to be post-filled after
initialisation) can be removed.
Change-Id: Iec71e32ea61ff1789537bcb1e7e35fa3253f8363
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Mon, 24 Jul 2017 13:05:53 +0000 (15:05 +0200)]
ElanUtils clean-up: more ElanL2GatewayMulticastUtils
Moving installDpnMacsInL2gwDevice from ElanL2GatewayUtils to
ElanInterfaceManager allows ElanL2GatewayUtils’ dependency on
ElanL2GatewayMulticastUtils to be removed.
Change-Id: I1af5c31f516f4dfe7121c16e797339b60a1d03ca
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Mon, 24 Jul 2017 12:40:56 +0000 (14:40 +0200)]
ElanUtils clean-up: ElanL2GatewayMulticastUtils
elanUtils.getInvolvedDpnsInElan is a very simple wrapper around
elanInstanceManager.getElanDPNByName, which isn’t even needed any more
since the latter never returns null. Using the latter directly in
ElanL2GatewayMulticastUtils means we no longer need ElanUtils there,
which simplifies initialisation (although not perfectly yet because of
the loop between ElanL2GatewayMulticastUtils and ElanL2GatewayUtils).
Change-Id: Ie4ef925d5e0c02e5476141430f844dc2b0a0647e
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Mon, 24 Jul 2017 11:36:16 +0000 (13:36 +0200)]
ElanUtils clean-up: make read() static
It turns out no callers use the variant of read() which relies on
ElanUtils’ own broker, so we can drop that and make read() static,
which reduces the requirement for ElanUtils instances.
Change-Id: I75841497b4247abb9f10c216956ba534bc5068ce
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
eaksahu [Wed, 16 Aug 2017 12:33:48 +0000 (18:03 +0530)]
Bug 8998 - L2GW:Vlan bindings missing on reboot
Vlan bindings are missing upon cluster reboot.
While processing physical switch node add event , its global node
is not available yet.
Enqueued this job to global node add pending job wait list so that
eventually after the global node is added this gets processed.
Handled the tunnel ip change of the physical switch.
When the tunnel ip changes delete old itm tunnels
create new tunnels with new tunnel ip
retrigger the l2gw connection processing to take affect of the
new tunnel ip.
Handled the local ucast macs that are added to the southbound device
while odl is down.
When odl comes up as part of processing its l2gw connections
it pulls the added local ucast macs from the southbound device.
Change-Id: Id6fdbbfe852a6fc0d89f360eb498fece8f00bdb5
Signed-off-by: eaksahu <a.k.sahu@ericsson.com>
Stephen Kitt [Mon, 11 Sep 2017 13:28:30 +0000 (15:28 +0200)]
aclservice: clean up Futures collections
This patch replaces lists of Futures with singleton lists where
possible.
Change-Id: I5d3445c488599f28b920a2296e0d2ab439761a43
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Mon, 11 Sep 2017 14:06:46 +0000 (16:06 +0200)]
dhcpservice: clean up Futures collections
This patch replaces lists of Futures with singleton lists where
possible. It also removes instances of passing such lists around,
using return values instead.
This patch also cleans up the job classes generally: instance fields
are final where possible, unused fields and parameters are removed.
Change-Id: Idd1add34a0ac75aaf7ae0afc137904cebfb7e741
Signed-off-by: Stephen Kitt <skitt@redhat.com>
eaksahu [Fri, 11 Aug 2017 09:47:18 +0000 (15:17 +0530)]
Bug 8978 - Network deletion issue.
Elaninstance after deletion was clearing l2gateway connection
configuration , but was not deleting l2gatewayConnection object itself
from neutron config tree. This leads to reconfiguration of
l2gatewayconnection upon reboot / device reconnect also.
Fixed the above case.
Added way to cancel logical switch deletion , so that if the same
network is reconfgured while deletion is going on , it can be cancelled.
Calling logical switch delete cancel when associating the same network
to l2gw.
Change-Id: I530c4b87becf3043eb8c4ba03226447731b2db0b
Signed-off-by: eaksahu <a.k.sahu@ericsson.com>
Michael Vorburger [Wed, 20 Sep 2017 16:16:00 +0000 (18:16 +0200)]
Remove un-used SynchronousEachOperationNewWriteTransaction
replaced by SingleTransactionDataBroker which is now widely adopted
Change-Id: I09c4f64941bdd4398cbda28d339449b43ba8e10a
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Sam Hague [Tue, 19 Sep 2017 23:19:48 +0000 (19:19 -0400)]
cleanup sync
Change-Id: I6c712e5efa8bd633356327c5aa31c735d91b4509
Signed-off-by: Sam Hague <shague@redhat.com>
K.V Suneelu Verma [Mon, 21 Aug 2017 11:21:27 +0000 (16:51 +0530)]
bug 9018 l2gw designated dhcp fix
Instead of listening for logical switch creation, listen for
mcast mac creation and update the mcast mac to avoid race of updating the
mcast mac.
while updating mcast mac read the existing mac and add designated dhcp tep
ip to the existing locators.
Change-Id: Id4d99471ae0b3be306a5511ee7cea975606deaa3
Signed-off-by: K.V Suneelu Verma <k.v.suneelu.verma@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Kency Kurian [Thu, 10 Aug 2017 11:45:23 +0000 (17:15 +0530)]
Bug 8973 : DHCP fixes
1. For SR-IOV vm dhcp request:
After controller restart it was found that the DHCP flows were being installed
as drop on the designated DPN.
Added a check to see if the DPN being added is already a designated DPN
then, drop flows need not be installed.
2. Added a null check for gateway ipaddress and also whenver getIpv4Address
is called.
3. Added a null check for l2gwdevice in installRemoteMCastMac.
Change-Id: I2fae322af07b582fa4e5a03522513976dd2c55e5
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Wed, 13 Sep 2017 12:28:55 +0000 (14:28 +0200)]
Fix cloud-servicechain YANG
This corrects the YANG revision, which becomes 160711.
Change-Id: I32b619cc29d89c0d3adb06fc264c3f26c04d50c0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
eupakir [Tue, 22 Aug 2017 05:47:52 +0000 (11:17 +0530)]
BUG 9014 : Remove unnecessary log statements in VPN Engine
Change-Id: I501beac66cc8f9ffc44d5f12b22514d7d3b03d22
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
(cherry picked from commit
9f924b40e048ec1967f6a7b2c6d32064f1ea3887)
Sam Hague [Tue, 19 Sep 2017 22:28:33 +0000 (18:28 -0400)]
Remove aggregator from artifactId
Change-Id: Iad35ffa4987ac0ef8d0bb1b5feedb75a3a70fdc3
Signed-off-by: Sam Hague <shague@redhat.com>
Sam Hague [Tue, 19 Sep 2017 22:17:03 +0000 (18:17 -0400)]
rm it module
Change-Id: I0865195683a45adcef787365c4e91e217eb7e514
Signed-off-by: Sam Hague <shague@redhat.com>
eaksahu [Wed, 9 Aug 2017 14:22:09 +0000 (19:52 +0530)]
Bug 8965 - L2gw update is not suported
Currently l2gw once created , no update are on that are supported.
With this patch following use case has been supported.
Update existing l2gw vlanbindings
Update existing l2gw with new ports / device .
It takes care of configuring w.r.t associated l2gwconnection .
Change-Id: I37dda9cf366b1fe59ccf95f64f0574448f156d47
Signed-off-by: eaksahu <a.k.sahu@ericsson.com>
Vivekanandan Narasimhan [Wed, 30 Aug 2017 16:56:32 +0000 (22:26 +0530)]
Bug 7380: service-binding exceptions from ACL
Exceptions are thrown when ACL tries to bind/unbind
ports that it's not supposed to handle.
The fix ensures that AclInterfaceStateListener
does not create ACLInterfaces for interfaces
that donot have port-security-enabled.
This also addresses issue observed with a scenario where a neutron port
is created with SG
disabled and was later enabled.
Change-Id: I2b7d6468b36fdc43d4ac1a91c16563d8d675ca3f
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Vivekanandan Narasimhan [Mon, 18 Sep 2017 17:08:38 +0000 (22:38 +0530)]
Bug 8953: Fix exceptions raised due to PNF confused with FIP
Both FIP and discovered PNF IP VrfEntries
use an RD value of external-subnet-id and
thereby the below review resulted in FloatingIP (FIP)
processing being done for PNF incorrectly.
This situation happened vide review:
https://git.opendaylight.org/gerrit/#/c/62957/
In here we fix that confusion, by pushing a new
enumeration to clearly distinguish various type
of prefixes within the prefix-to-interface and use
the same in FibManager (VrfEntryListener) to unambiguously
handle processing for such prefixes (or VrfEntries).
Change-Id: I5143c603d96657e7db0db38a955a4a14f0413e0c
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Somashekar Byrappa [Tue, 22 Aug 2017 08:10:27 +0000 (13:40 +0530)]
Bug 9026: ACL issue in handling port-create
Problem:
When a VM is booted by creating a port with commands [1] & [2], ACL
service is bound to the interface which shouldn't have happened as [2]
explicitly sets --port-security-enabled False.
+ During [1], ACL bind service is performed as flag
port-security-enabled=True by default.
+ During [2], ACL unbind service should be performed as flag
port-security-enabled=False is set explicitly. This was not happening.
Solution:
During port-update, ACL unbind service was called only during interface
up. Now this is changed to unbind ACL service irrespective of interface
state (up/down).
Also, handled cache update correctly during port-update.
Commands:
[1] neutron port-create net10 --no-security-groups
[2] neutron port-update <port id> --port-security-enabled False
Change-Id: I73d299fc61e02bee8aafe0370cdf0a4874533ee9
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
eupakir [Mon, 11 Sep 2017 10:08:12 +0000 (15:38 +0530)]
Bug 8953 - IllegalArgumentException: vrfEntry is missing mandatory
descendant origin.
Change-Id: I8ac129ae16fdb259fc2c54f3230b67038b9a2530
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
(cherry picked from commit
b061b817877fe1c529bc0e2d3a0c95b9bbef368c)
Aswin Suryanarayanan [Mon, 18 Sep 2017 10:03:16 +0000 (15:33 +0530)]
Remove learn mode from aclserivce.
Change-Id: Ia85ed76bc753dd67d1ecc5efb9b9aa3a6690151c
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Michael Vorburger [Wed, 13 Sep 2017 17:56:57 +0000 (19:56 +0200)]
Fix exception handling in neutronvpn shell
see
https://wiki.opendaylight.org/view/BestPractices/Coding_Guidelines#IllegalCatch
motivated by/while reviewing
https://git.opendaylight.org/gerrit/#/c/62711/3/vpnservice/neutronvpn/neutronvpn-impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronvpnManager.java
Change-Id: I8ebc913e66d2fe33ffadf361214bb82263aec149
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
(cherry picked from commit
72bef67d06d2793aee07979d6ef0df7d715115f0)
Abhinav Gupta [Thu, 14 Sep 2017 09:51:42 +0000 (15:21 +0530)]
Bug 8860 : Populate elantag at time of elanInstance creation
This patch eliminates the delay in elantag being available for use by
SubnetRoute Engine.
Change-Id: I0c3e28758c49d5a600f1213b94172fb532c7a77c
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
Aswin Suryanarayanan [Tue, 8 Aug 2017 07:44:16 +0000 (13:14 +0530)]
Remove transparent mode from aclservice.
Depends on https://git.opendaylight.org/gerrit/#/c/60737/ , which adds
port_security disable tests.
Change-Id: Icf83af877cdf9965b24db38573453a6433d7eca6
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Josh [Sun, 27 Aug 2017 10:55:09 +0000 (13:55 +0300)]
BUG-8893 patch port mysteriously deleted
This happens sporadically when br-int exists prior to ODL
managing the OVS node. If the event notifying ElanOvsdbNodeListener
of the existence of the br-int bridge happens BEFORE the event
notifying about the OVS node the following occurs:
1. Netvirt gets event for br-int
2. Writes patch ports
3. Netvirt gets event for the ovs node
4. Creates br-int...which already exists and this over-writes the
patch ports
Fix:
a) clean up code so that br-int is configured with a controller
and patch ports only once we receive the notification for br-int
in operational.
b) when receiving a notification for the OVSDB node in operational,
check if br-int is in operational. If it is not, create it in
config.
c) when receiving a notification for br-int in operational, check if it
is also in config. If it is not, copy br-int fields from operational
to config. The proceed to step (a).
Change-Id: I11739ccc847e65c4179ff1f73493159bd4effcd2
Signed-off-by: Josh <jhershbe@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Aswin Suryanarayanan [Fri, 8 Sep 2017 11:52:00 +0000 (17:22 +0530)]
Bug 8964 - Neutron test
neutron.tests.tempest.scenario.test_floatingip.FloatingIpSameNetwork.test_east_west
fails
1)Added FIB(Table21) flow in NON-NAPT switch to send the traffic to
the SNAT IP to the NAPT switch over the tunnel.
2)Added Tunnel table(Table 36) in NAPT switch to send the to SNAT IP to
the Inbound SNAT(Table 44) table.
table=21, n_packets=49, n_bytes=4802,
priority=42,ip,metadata=0x30d42/0xfffffe,nw_dst=192.168.56.31
actions=set_field:0x186a1->tun_id,group:225001
table=36, n_packets=22, n_bytes=2156, priority=42,ip,tun_id=0x186a1
actions=load:0x30d42->OXM_OF_METADATA[0..23],resubmit(,44)
Change-Id: I829400a1479752dd9963ac8931ca662f4f51bed2
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
vinothb [Thu, 20 Jul 2017 18:06:08 +0000 (14:06 -0400)]
Spec for Acl change reflection on existing communication
Change-Id: Id8b2e3c9bf321248a6e55f6830078b4fd6acde14
Signed-off-by: vinothb <vinothb@hcl.com>
David Suarez [Thu, 7 Sep 2017 19:40:03 +0000 (21:40 +0200)]
Remove deprecated CheckedFuture
Remove deprecated CheckedFuture.
Change-Id: I69b6378867f68e18d69a23c25e14780ad305370c
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
(cherry picked from commit
bbfc50ca13ba5b8db07ef27db3acfb49bcaaed4e)
Tom Pantelis [Wed, 30 Aug 2017 01:40:15 +0000 (21:40 -0400)]
Remove unused references to DataChangeListener
Change-Id: I78e8c32bd76536fd420d31b6e7b0bd2b026d7a49
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
(cherry picked from commit
7f9a7a608934fd687748a913706181d165e146ce)
karthikeyan [Thu, 31 Aug 2017 12:50:21 +0000 (18:20 +0530)]
Bug7380:CSIT FIP ping is getting failed for Ext Flat/VLAN Network
Problem Description:
=======================
FIP Ping TC is getting failed for external FLAT/VLAN network on single
node setup.
For Single node setup VXLAN TEP is not at all required for external
network with provider type as FLAT/VLAN.
Current Implementation on FIP handling, it is
expected nextHop IP should not be null before programming FIP local flow
entry L3_FIB_TABLE (21) -> PDNAT_TABLE (25). This validation is not
required for external provider type as FLAT/VLAN networks.
Solution:
==========
NextHopIP validation is already existing in NatUtil.addPrefixToBGP()
method before FIP advertising to BGP. Hence removing unnecessary
validation from VpnFloatingIpHandler.
This will resolve FIP local flow entry L3_FIB_TABLE (21) -> PDNAT_TABLE
(25) installation on corresponding DPN for external FLAT/VLAN network on
Single Node setup (Without VXLAN TEP Configured)
Change-Id: I6653c78733e037310827ffbcd4498097b19a2abf
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
A Vamsikrishna [Mon, 11 Sep 2017 03:35:07 +0000 (09:05 +0530)]
Bug 9136 - Suspected ReadOnlyTransaction leak in QosNeutronUtils
Description:
Bug 9136 - Suspected ReadOnlyTransaction leak in QosNeutronUtils
Fix:
Fixed ReadOnlyTransaction leak by using try-with-resources statement for automatic resource management.
Change-Id: Ib4e03a425b840427d7133f40d5a72d4bf5f85605
Signed-off-by: A Vamsikrishna <a.vamsikrishna@ericsson.com>
Sam Hague [Fri, 8 Sep 2017 13:41:25 +0000 (09:41 -0400)]
Bug 7380: service-binding exceptions from ACL
Change-Id: Ifb4d096bb58bfa5e7670a5b0f2b8718067366c5c
Signed-off-by: Sam Hague <shague@redhat.com>
Aswin Suryanarayanan [Mon, 7 Aug 2017 09:24:36 +0000 (14:54 +0530)]
Remove stateless mode from AclService.
Change-Id: I6307007ef23c4f58e8c543a22550109d8c778ce4
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Arun Sharma [Wed, 6 Sep 2017 17:28:52 +0000 (22:58 +0530)]
Minor code cleanup in QoS
- Corrected log messages
- Renamed QosAlertEosHandler to QosEosHandler because same eos handler
is used by QoS service as well.
Change-Id: I160f500ba40ed5cfb471d4023adf04c35cbc7bf2
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
Sam Hague [Thu, 7 Sep 2017 14:39:44 +0000 (10:39 -0400)]
Cleanup cherry-pick of 61888
Change-Id: I475dc18033f85e41414cc9b8c62b27145d015e00
Signed-off-by: Sam Hague <shague@redhat.com>
Kency Kurian [Wed, 6 Sep 2017 11:43:17 +0000 (17:13 +0530)]
Bug 9100 : tx leak in DhcpExternalTunnelManager
Change-Id: I14a6ff3310214362fcd51cb36a0ceb509b386ee1
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
David Suarez [Thu, 17 Aug 2017 07:50:18 +0000 (09:50 +0200)]
Replace <? extends Object> by <?>
Replace <? extends Object> by <?> since they are equivalent.
Change-Id: I548338da4bbc1da2c7b7401f456d08d74cec5111
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
(cherry picked from commit
cf20625b79d9e79ed22d617cd1107b2fa0797865)
Vyshakh Krishnan CH [Thu, 31 Aug 2017 05:54:17 +0000 (11:24 +0530)]
Bug 9012 : BGP not connecting to config server
Issue was there with previos commit where config_server_updated flag was
never set to false. Making it to false at correct place now
Change-Id: I5c49bf02dac8cb66033eb8a38d453ac0922cbca9
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
Arun Sharma [Tue, 29 Aug 2017 08:41:49 +0000 (14:11 +0530)]
Cluster support for netvirt QoS
-Changed QoS policy configuration change listeners from
AsyncDataTreeChangeListenerBase to
AsyncClusteredDataTreeChangeListenerBase so that all nodes receive
QoS configuration change notifications.
-Rate limit and DSCP marking is done only by QoS entity owner. Other
nodes just update the cache. This ensures that cache is always in
sync between all the nodes.
Change-Id: Id2215e4b98cfcb238c437402a02ece640db11413
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
Michael Vorburger [Wed, 12 Jul 2017 21:34:36 +0000 (03:04 +0530)]
vpnmanager DJC enqueueJob without using AbstractDataStoreJob API
because when we moved genius.DJC to infrautils.JC we had concluded that
this method does not need to be exposed publicly, and (at the time) was
only used in 1 place (here).
In order to be able to eventually remove genius.DJC and switch to
infrautils.JC, adjusting this use to be compatible with the new API is a
first step.
Change-Id: Ia025cc542096ce417b35f57cdc723ebc9528ab14
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
(cherry picked from commit
b0f59bfd464a34cd216b7ece1090e05df7f747bd)
Jaime Caamaño Ruiz [Mon, 14 Aug 2017 17:45:56 +0000 (19:45 +0200)]
BUG 9003: Fix classifier entry processing order
Change-Id: Icfafe3ef3a77bd48e3ddcf249f6c1e41b3e57aa5
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
8c376c716a8ec01eee8fbfa0990aa46fcabd0c6c)
Jaime Caamaño Ruiz [Mon, 14 Aug 2017 17:46:29 +0000 (19:46 +0200)]
BUG 9003: Fix port chain event triggered two times
Change-Id: I4dd83824808d3faa2f515901d9171bb8e812d681
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
db101c10d767b236a15acd653eec8fb53094ed46)
Manuel Buil [Thu, 10 Aug 2017 14:47:31 +0000 (16:47 +0200)]
BUG: Adapt SFC translator to SFC code in Nitrogen
BUG: 8966
SFC Translator must start using logical SFF otherwise it will not work
Change-Id: Iec8dd6ae757d230464162dd1612bcda3a8fd0f26
Signed-off-by: Manuel Buil <mbuil@suse.com>
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
3bc2fda73b17db517e34a7efd864ea5af2100dcf)
Jaime Caamaño Ruiz [Fri, 1 Sep 2017 15:11:48 +0000 (17:11 +0200)]
BUG9094 Bind to last SF interface if origin node
If the last SF is in one of the possible origin nodes for the
classified traffic, bind the classifier on it's port. This is to be
to handle the possible scenario where origin, last SF and destination
of traffic are on the same node. On this scenario, SFC on last hop will
not de-encapsulate the traffic, instead it will be handed off to the
dispatcher table for the egress classifier function to handle it. To be
able to do this, it needs to be bound to the last SF port.
Change-Id: I97f60e8cc409ea42c830e408b4df91051b50689c
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
9509d783b6c9fe5a348e0f39e86b8ae72cc53c3f)
Jaime Caamaño Ruiz [Fri, 1 Sep 2017 17:33:55 +0000 (19:33 +0200)]
BUG9095 Capture SFC tunnel traffic for path egress
On scenarios where origin and destination of traffic are on the same
node, but last SF is on a different node, SFc on last hop will not
de-encapsulate the traffic, instead it will the encpsulated traffic
to the node indicated via IP address on NSH C1 metadata.
There an egress classifier function will handle the traffic. In order
to do this, since port binding in tunnel ports is still not being used
and there is no dispatch service on tunnel ports, this egress
classification function needs to take SFC traffic (VNI=0) with priority
to handle the possible chain egress. If chain egress function is not
applied, it will resubmit this SFC traffic to the SFC pipeline.
The egress classifier function is aslo updated to match SFC traffic on
on the specific ending index of each possible path.
Change-Id: I2c6131b727c17e4a36d2b5fb931c84719f4a077b
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
64160b249a54deb31cac3021a8343b9b03006a83)
Jaime Caamaño Ruiz [Mon, 14 Aug 2017 14:21:28 +0000 (16:21 +0200)]
BUG 9003: Support source-logical-port acl match
Neutron flow classifier includes acl matches for source and destination
neutron ports. Added support for source port, and updated the model to
also include destination port although not supported yet.
Change-Id: I83f8cc362869d046cdce756b5cbe4b13215b75f0
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit
ef7ca0ab0840c1c7a51de172beb178560ec2291d)
David Suarez [Wed, 9 Aug 2017 15:08:06 +0000 (17:08 +0200)]
Replace size()==0 by isEmpty()
Replace size()==0 by isEmpty(). It improves readability and avoid "=0".
Based on Change-Id: I4bba45bea95a234734079376c7439395ae38e981
Change-Id: Ibbb75b0525695bbf9be572c9042ed0dab4c9c05e
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
Signed-off-by: Sam Hague <shague@redhat.com>
David Suarez [Sun, 3 Sep 2017 14:51:16 +0000 (16:51 +0200)]
Cleanup
- Remove dead code
- Final class & private constructor for utility classes
- Return variables directly
- Add method qualifiers
- Join some if statements
Change-Id: I2ca3cc08cbe10e4885510f9fc6bcb7f684e48922
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
(cherry picked from commit
8f82f79603968deefd1e9b80443588c646075381)
vinothb [Thu, 31 Aug 2017 22:55:58 +0000 (18:55 -0400)]
Bug 9035: - NPE at org.opendaylight.netvirt.elan.arp.responder.ArpResponderUtil.getMatchCriteria
Problem Description:
=======================
The following exception was observed from ArpResponderUtil
Error while installing ARP responder flow
java.lang.NullPointerException
at org.opendaylight.netvirt.elan.arp.responder.ArpResponderUtil.getMatchCriteria(ArpResponderUtil.java:178)[307:org.opendaylight.netvirt.natservice-impl:0.5.0.SNAPSHOT]
Solution:
=========
We need to enhance the pre-condition check in ArpResponderUtil before
installing the flow.
Change-Id: I9558080dc41df15164d2b189168c56c83b63c6ac
Signed-off-by: vinothb <vinothb@hcl.com>
Sam Hague [Tue, 5 Sep 2017 14:49:59 +0000 (10:49 -0400)]
Add missing null check
Change-Id: Id57c1555339b65b017cbea548022826abe76680f
Signed-off-by: Sam Hague <shague@redhat.com>