genius.git
7 years agoUse polymorphism instead of Optional 66/57666/7
Stephen Kitt [Tue, 23 May 2017 09:20:50 +0000 (11:20 +0200)]
Use polymorphism instead of Optional

Optional shouldn’t be used instead of method polymorphism. This patch
deprecates
InterfaceManagerCommonUtils.createInterfaceChildEntry(String, String,
Optional) and replaces it with variants using either no transaction or
an explicit WriteTransaction.

Change-Id: If5face3a7629f71e4d004eadf2b45fb6175dc61f
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoMerge "Neutron Port Allocation For DHCP Service"
Faseela K [Mon, 12 Jun 2017 10:01:33 +0000 (10:01 +0000)]
Merge "Neutron Port Allocation For DHCP Service"

7 years agoMerge "Bug 8008: NPE detected in IfMgrRpcService.getDpnInterfaceList"
Faseela K [Mon, 12 Jun 2017 07:09:30 +0000 (07:09 +0000)]
Merge "Bug 8008: NPE detected in IfMgrRpcService.getDpnInterfaceList"

7 years agoBug 8008: NPE detected in IfMgrRpcService.getDpnInterfaceList 51/58351/5
Miguel Perez [Tue, 6 Jun 2017 14:40:16 +0000 (16:40 +0200)]
Bug 8008: NPE detected in IfMgrRpcService.getDpnInterfaceList

 + This line is throwing NPEs because rpcResultBuilder is NULL under
   certain circumstances:

   return Futures.immediateFuture(rpcResultBuilder.build());

 + I'm fixing other potential NPE for the same price

Change-Id: Ib6bf5039234f114228eb7d6a9c4f3b1882831e5d
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoFix checkstyle problems not detected by the current version 91/58191/3
David Suarez [Fri, 2 Jun 2017 22:20:47 +0000 (00:20 +0200)]
Fix checkstyle problems not detected by the current version

This change is required for overall move to new Checkstyle version, see
https://git.opendaylight.org/gerrit/#/q/topic:bumpCheckstyle

Change-Id: I800ea4c89c9c517bc5baa992c67d17b9ba79547c
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoNeutron Port Allocation For DHCP Service 46/57246/5
Vijayalakshmi Chickkamenahalli Nagaraju [Wed, 17 May 2017 08:09:59 +0000 (13:39 +0530)]
Neutron Port Allocation For DHCP Service

Adding new ARP_CHECK_TABLE constant in NwConstants for Neutron Port
Allocation For DHCP Service.

New pipeline for DHCP & Gateway IP ARP Responder in ELAN.
LPort Dispatcher Table(17) -> ARP Check Table(43) -> ARPResponder Group
-> ELAN Base Table(48), ARP Responder Table(81), Controller
-> ELAN Base Table(48) (ARP Reply), Table 220( Floating IP ARP reply)

Change-Id: I2dce5e253d3c94180dd18e51125c5c18170b5c69
signed-off-by: Vijayalakshmi Chickkamenahalli Nagaraju <vijayalakshmi.c@altencalsoftlabs.com>
Signed-off-by: Achuth Maniyedath <achuth.m@altencalsoftlabs.com>
7 years agoMigrate to odlparent 1.8.0-Carbon 00/58400/1
David Suarez [Wed, 7 Jun 2017 10:31:16 +0000 (12:31 +0200)]
Migrate to odlparent 1.8.0-Carbon

Per request of odlparent project we are downgrading all Nitrogen
projects to use the released odlparent 1.8.0-Carbon to allow for the
odlparent project to start performing semver style releases.

Jira: RELENG-159
RT: 41406

Change-Id: Id6ca083bce9475ae604a2085046b36e307a2ac26
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoMerge "@Immutable GroupEntity"
Sam Hague [Tue, 6 Jun 2017 12:33:37 +0000 (12:33 +0000)]
Merge "@Immutable GroupEntity"

7 years agoMerge "Simplify boolean expressions"
Sam Hague [Sun, 4 Jun 2017 21:53:28 +0000 (21:53 +0000)]
Merge "Simplify boolean expressions"

7 years agoMerge "Make testutils a JAR instead of a POM"
Sam Hague [Sun, 4 Jun 2017 21:51:14 +0000 (21:51 +0000)]
Merge "Make testutils a JAR instead of a POM"

7 years agoEVPN RT2 : L2VNI Demux Table id 68/58168/1
Vyshakh Krishnan CH [Fri, 2 Jun 2017 05:54:20 +0000 (11:24 +0530)]
EVPN RT2 : L2VNI Demux Table id

For EVPN RT2 a new table(table 24) is introduced to demux the l2vni from packets
coming from DC-GW

Spec is approved and is available at : https://git.opendaylight.org/gerrit/#/c/51693/

Change-Id: Ie23457df4d9d20a01f53e271c5b7ece77342225f
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agoMerge "Utility api to configure icmpv6 type"
Sam Hague [Fri, 2 Jun 2017 01:00:27 +0000 (01:00 +0000)]
Merge "Utility api to configure icmpv6 type"

7 years agoMerge "Make ActionInfo.toString() generic"
Michael Vorburger [Thu, 1 Jun 2017 18:58:33 +0000 (18:58 +0000)]
Merge "Make ActionInfo.toString() generic"

7 years agoRemove TestableDataTreeChangeListenerModule from ResourceManagerTest 18/58118/1
Michael Vorburger [Thu, 1 Jun 2017 14:05:39 +0000 (16:05 +0200)]
Remove TestableDataTreeChangeListenerModule from ResourceManagerTest

It's currently not used anyway, and (because it's not used!) it can
occasionally cause the "heisenbug" (i.e. arbitrary test failure on some
runs, but not always) problem "IllegalStateException: Test forgot an
awaitEventsConsumption()".

see also (new) doc on
https://wiki.opendaylight.org/view/BestPractices/Component_Tests#Async

Change-Id: I8140df5e06b1b35deae4d4137af768c2c275b68b
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoAdd missing @Override and serialVersionUID to genius.mdsalutil 56/58056/2
Michael Vorburger [Tue, 30 May 2017 13:10:49 +0000 (15:10 +0200)]
Add missing @Override and serialVersionUID to genius.mdsalutil

Change-Id: Ib1079a5c59390d9b902d8f6653931f9c62ecf7ac
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMerge "Add Unit Test (only) for ActionDrop equals"
Michael Vorburger [Thu, 1 Jun 2017 05:18:52 +0000 (05:18 +0000)]
Merge "Add Unit Test (only) for ActionDrop equals"

7 years agoMerge "Add yangtools:testutils to mdsalutil-testutils"
Michael Vorburger [Thu, 1 Jun 2017 05:14:19 +0000 (05:14 +0000)]
Merge "Add yangtools:testutils to mdsalutil-testutils"

7 years agoMerge "Support for moving Src/Dest IPv6 addresses in NxRegMove action"
Michael Vorburger [Thu, 1 Jun 2017 05:11:52 +0000 (05:11 +0000)]
Merge "Support for moving Src/Dest IPv6 addresses in NxRegMove action"

7 years agoMerge "Support API that configures IPv6 address as sourceAddress"
Michael Vorburger [Thu, 1 Jun 2017 05:11:42 +0000 (05:11 +0000)]
Merge "Support API that configures IPv6 address as sourceAddress"

7 years agoMake testutils a JAR instead of a POM 93/58093/1
Michael Vorburger [Thu, 1 Jun 2017 04:32:19 +0000 (06:32 +0200)]
Make testutils a JAR instead of a POM

and start to use it for holding test fakes of genius APIs

Change-Id: Iaa44b3c7031f2d5a6129354e993157f8eb82680d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoAdd yangtools:testutils to mdsalutil-testutils 85/58085/1
Michael Vorburger [Wed, 31 May 2017 23:49:31 +0000 (01:49 +0200)]
Add yangtools:testutils to mdsalutil-testutils

To make it possible to depend on mdsalutil-testutils in a new component
test for netvirt fibmanager, without having to declare a dependency to
yangtools:testutils (one should not have to).

Change-Id: Ia54921fb24edc0a37f03974be960a6b6b4bfe317
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoAdd Unit Test (only) for ActionDrop equals 57/58057/2
Michael Vorburger [Tue, 30 May 2017 16:48:01 +0000 (18:48 +0200)]
Add Unit Test (only) for ActionDrop equals

as a reminder that ActionDrop's equals actually works just fine, even
though it's not overriden (because ActionInfo's equals() has a
getClass() != other.getClass()) ... this confused me for a moment, and a
suspected a classical hashCode / equals bug - but it's actually fine as
is - this new test serves as a regression assurance - and as a "reminder
in code".

Change-Id: I0916b238d23f86e7248beefa68a5b4851da9e9ab
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMake ActionInfo.toString() generic 73/58073/2
Stephen Kitt [Wed, 31 May 2017 17:43:05 +0000 (10:43 -0700)]
Make ActionInfo.toString() generic

Subclasses don’t need to override it, so use the actual class name in
toString() (for example, ActionDrop can “just work”).

Change-Id: Idf68b65867e4cb8ba969d1db91ee5a4b03389c06
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years ago@Immutable GroupEntity 55/58055/1
Michael Vorburger [Tue, 30 May 2017 17:38:30 +0000 (19:38 +0200)]
@Immutable GroupEntity

Contrary to the earlier 3a5d1e58dadf17654064234bdeb08597b7a48fe5 which
made FlowEntity @Immutable about 3 months ago, this change has no
impacts in downstream project netvirt (because all of its GroupEntity
instantiations go through MDSALUtil, which is adjusted here as well).

Change-Id: Id862698ebd5d00c30fdb52f5230ac35046062d44
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoReplace LOGGER by LOG 57/57957/1
David Suarez [Mon, 29 May 2017 10:39:43 +0000 (12:39 +0200)]
Replace LOGGER by LOG

Replace LOGGER by LOG to follow the
OpenDaylight recommendations [1].

[1]
https://wiki.opendaylight.org/view/BestPractices/Logging_Best_Practices

Change-Id: Ib1cf70417092a120eaf11b523e54b056774fe35c
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoFix vlanIdModified test 91/57691/2
Stephen Kitt [Tue, 23 May 2017 12:45:40 +0000 (14:45 +0200)]
Fix vlanIdModified test

OvsVlanMemberConfigUpdateHelper.vlanIdModified() has an apparent
copy-paste error in its null/non-null check. The whole test simplifies
down to !Object.equals(), so this patch just uses that.

Change-Id: I6b3548da5441e8318cf20eab3f4817d162c97fa6
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoSimplify ResourceManager 74/56674/4
David Suarez [Mon, 8 May 2017 15:23:41 +0000 (17:23 +0200)]
Simplify ResourceManager

- Simplify the initialization process refactoring some methods and using
System.getProperty with default values
- Change names of constants
- Improved coverage to from 70% to 81%.

More refactoring in later change.

Change-Id: I6670355d36b7af0806fa2032178103ef3d1a0099
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoMerge "fix for indefinite wait on the resource lock"
Faseela K [Sat, 27 May 2017 16:38:22 +0000 (16:38 +0000)]
Merge "fix for indefinite wait on the resource lock"

7 years agoSimplify boolean expressions 89/57689/2
Stephen Kitt [Tue, 23 May 2017 12:47:22 +0000 (14:47 +0200)]
Simplify boolean expressions

Change-Id: I09d1f3a22a5496f3dbf8281a378c9eea4112e68f
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoMerge "Avoid extending Object"
Michael Vorburger [Wed, 24 May 2017 09:37:51 +0000 (09:37 +0000)]
Merge "Avoid extending Object"

7 years agoReplace toUpperCase().equals by equalsIgnoreCase() 10/57710/1
David Suarez [Tue, 23 May 2017 15:37:18 +0000 (17:37 +0200)]
Replace toUpperCase().equals by equalsIgnoreCase()

Change-Id: Ie6cd1797ff71d53b8f24492d97767cf5fd454153
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoAvoid extending Object 76/57676/1
Stephen Kitt [Tue, 23 May 2017 11:51:11 +0000 (13:51 +0200)]
Avoid extending Object

Change-Id: If90e0445dafb0aa0f55c4145c1958369dadb93e9
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoMerge "Bug7451 - Maintaining state information for bound-services in DS"
Sam Hague [Thu, 18 May 2017 23:37:47 +0000 (23:37 +0000)]
Merge "Bug7451 - Maintaining state information for bound-services in DS"

7 years agoMerge "BUG 8332: Inconsistent tunnel port information in Genius"
Sam Hague [Thu, 18 May 2017 19:35:58 +0000 (19:35 +0000)]
Merge "BUG 8332: Inconsistent tunnel port information in Genius"

7 years agoBug7451 - Maintaining state information for bound-services in DS 26/55926/13
Faseela K [Mon, 24 Apr 2017 11:37:53 +0000 (17:07 +0530)]
Bug7451 - Maintaining state information for bound-services in DS

Use the  bound-service-state info while unbinding service so as to avoid race conditions
when interface-state and service-unbinding happens exactly at the same
time

Change-Id: I39f6b3cef932d624de42d4cb56651fc8bb1de762
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agofix for indefinite wait on the resource lock 04/57004/7
Periyasamy Palanisamy [Sun, 14 May 2017 06:40:00 +0000 (12:10 +0530)]
fix for indefinite wait on the resource lock

* Currently idmanager manager mutates the allocated id list (to make it sorted) while writing it into datastore which causes ConcurrentModificationException.
This leads to resource lock is never released and makes release id thread to
wait indefinitley for the lock.
* added lock retry logic with timed future.get version to handle any missed signals

Change-Id: I5f271f6054a44aa50d19f3130a2d5a73230ff50c
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoBUG 8332: Inconsistent tunnel port information in Genius 54/56354/8
Vishal Thapar [Tue, 2 May 2017 09:15:05 +0000 (14:45 +0530)]
BUG 8332: Inconsistent tunnel port information in Genius

Change-Id: I40efffde720a57197c8b7a36c323dbe398f1acc8
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoBug 7451 - Leftovers in dispatcher table when unbind and ietf-state 60/55860/12
Faseela K [Sun, 23 Apr 2017 18:07:47 +0000 (23:37 +0530)]
Bug 7451 - Leftovers in dispatcher table when unbind and ietf-state
delete occurs simultaneously

Adding service-state-information to cache, whenever a service is bound to
an interface, and this information will be deleted only when the last
service on an interface is unbound. To make the first and last service
counting more robust, moving the boundservices config listener, one layer
up, at the services-info level, so that the event itself will come with
the number of services currently bound an interface. Reading the same info
from DS later on during the event processing, can cause incorrect data
being read from DS, when multiple parallel services might be getting bound
and unbound without any synchornization.

Change-Id: Iec1fcf12f71f34fed01158aae483a1d36bac6757
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoUtility api to configure icmpv6 type 72/57072/1
Sridhar Gaddam [Mon, 15 May 2017 14:55:43 +0000 (20:25 +0530)]
Utility api to configure icmpv6 type

Change-Id: I6c7f2def23e043872957d5272f0fe1217f323c8b
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoSupport for moving Src/Dest IPv6 addresses in NxRegMove action 27/57027/2
Sridhar Gaddam [Sun, 14 May 2017 20:54:24 +0000 (02:24 +0530)]
Support for moving Src/Dest IPv6 addresses in NxRegMove action

Depends-On: https://git.opendaylight.org/gerrit/#/c/56969

Change-Id: Ib4ba7baf50416b4e6e43705fbf796f65f4e00aa7
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoSupport API that configures IPv6 address as sourceAddress 26/57026/1
Sridhar Gaddam [Sun, 14 May 2017 20:16:12 +0000 (01:46 +0530)]
Support API that configures IPv6 address as sourceAddress

Change-Id: I23e2f04315ca023be9886d7e1570f78230b65dd7
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoMerge "IMdsalApiManager API simplification"
Michael Vorburger [Thu, 11 May 2017 10:26:24 +0000 (10:26 +0000)]
Merge "IMdsalApiManager API simplification"

7 years agoMerge "Incorrect handling of admin state update for interface"
Faseela K [Thu, 11 May 2017 04:55:01 +0000 (04:55 +0000)]
Merge "Incorrect handling of admin state update for interface"

7 years agoIMdsalApiManager API simplification 65/53765/4
Michael Vorburger [Fri, 24 Mar 2017 02:41:56 +0000 (03:41 +0100)]
IMdsalApiManager API simplification

Having two installFlow/removeFlow, one returning void and the other
returning CheckedFuture, is completely pointless - they do the same
thing!  The void one is NOT synchronous / blocking anyway (it internally
does NOT wait with a get() on the CheckedFuture) - so simplify.

This change, coincidentally, is fully backward API compatible.  Callers
are free to ignore the new CheckedFuture returned - that's what the code
today already does anyway (in the implementation).

PS: This is the first step of perhaps more IMdsalApiManager API
simplifications to come (e.g. re. having variants taking BigInteger dpId
arguments, given that FlowEntity already has a dpId (only Flow does
not).

Change-Id: Ic53f6b7843bed71754e204258520d0ea40eb6b99
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoRemove <prerequisites><maven> from pom.xml to avoid WARNING 97/56797/1
Michael Vorburger [Wed, 10 May 2017 17:47:52 +0000 (19:47 +0200)]
Remove <prerequisites><maven> from pom.xml to avoid WARNING

[WARNING] The project ... uses prerequisites which is only intended for
maven-plugin projects but not for non maven-plugin projects. For such
purposes you should use the maven-enforcer-plugin. See
https://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html

This (^^^) is already done in odlparent.

Change-Id: I1c128a179d24504f391e52b881c4d17227fad088
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMultiple VxLAN tunnels - egress service 41/53541/16
Olga Schukin [Sun, 19 Mar 2017 10:23:40 +0000 (12:23 +0200)]
Multiple VxLAN tunnels - egress service

- default egress service would be bound to the logical tunnel
- OF select group based on the actual list of tunnel members in the
  logical group
- set the oper status of logic tunnel according the states of the group members
- admin status of logic tunnel affects the states of the group members

Depends-On:
 https://git.opendaylight.org/gerrit/52871
 https://git.opendaylight.org/gerrit/52993
 https://git.opendaylight.org/gerrit/53603

Change-Id: Ica0801aa274615cedc36c60d661a0d5d411e1bd0
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
7 years agoIncorrect handling of admin state update for interface 51/53851/6
Faseela K [Sat, 25 Mar 2017 16:44:04 +0000 (22:14 +0530)]
Incorrect handling of admin state update for interface

Change-Id: I1ae01853375e6cb7f89516a768c3fc0d82508f7a
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agofixing junit in resourcemanager 48/56448/1
Periyasamy Palanisamy [Wed, 3 May 2017 10:38:04 +0000 (16:08 +0530)]
fixing junit in resourcemanager

There are some regression introduced in resource manager tests due to [1]
which causes junits in resourcemanager-impl to get blocked indefinitely.
It is addressed in this review

[1] https://git.opendaylight.org/gerrit/#/c/54425/

Change-Id: I261c14eefa2eb59839fa36eb0578cfe499c487bc
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoadding future.get for acquiring clustered lock 25/54425/17
Periyasamy Palanisamy [Thu, 6 Apr 2017 11:37:00 +0000 (17:07 +0530)]
adding future.get for acquiring clustered lock

* LockManager manager uses busy spin with thread.sleep to acquire a lock
if there is a contention for it.
* Now thread.sleep is replaced with future.get() using ACDTCN on the lock

Change-Id: I4ce3816e150f1e75fedf3093d96ed41efc444fa5
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoMerge "Bug 7826: Data validation failed for path"
Faseela K [Tue, 2 May 2017 09:51:01 +0000 (09:51 +0000)]
Merge "Bug 7826: Data validation failed for path"

7 years agoGenius: configurable tos option for tunnels to support QoS DSCP marking 79/51179/14
Ravindra Thakur [Mon, 30 Jan 2017 10:50:48 +0000 (16:20 +0530)]
Genius: configurable tos option for tunnels to support QoS DSCP marking

For supporting QoS DSCP marking feature, the outer header of the packets
egressing out of Ovs through vxlan/gre tunnels need to copy the DSCP bits
from the inner IP header.

The marking of inner header is done through OpenFlow rules configured on the
corresponding neutron port. For outer tunnel header, the tunnel interface tos
option in ovsdb  needs to be set as “inherit”.

For setting of tos a configurable parameter is introduced under ITM module.
By default the tos option is set to “0” as specified in Ovsdb specification.
For QoS DSCP marking feature, this should be set to “inherit"

link: https://git.opendaylight.org/gerrit/#/c/48949/
Change-Id: Ife923f74f5bd59648d40c1779478333632337952
Signed-off-by: Ravindra Thakur <ravindra.nath.thakur@ericsson.com>
7 years agoMerge "Bug 8277 : VXLAN tunnel flapping"
Faseela K [Fri, 28 Apr 2017 07:00:35 +0000 (07:00 +0000)]
Merge "Bug 8277 : VXLAN tunnel flapping"

7 years agoRemove ResourceManager.start method 49/55949/3
David [Mon, 24 Apr 2017 23:39:31 +0000 (01:39 +0200)]
Remove ResourceManager.start method

The ResourceManager.start method has been removed
to improve initialization and testability. Its content
has been moved to the constructor.

Change-Id: If8b04382c0617fc2a54a1ca02fdb356b41c50398
Signed-off-by: David <david.suarez.fuentes@ericsson.com>
7 years agoMerge "@Immutable FlowEntity"
Sam Hague [Thu, 27 Apr 2017 14:53:41 +0000 (14:53 +0000)]
Merge "@Immutable FlowEntity"

7 years agoBug 8277 : VXLAN tunnel flapping 82/55982/4
Faseela K [Tue, 25 Apr 2017 11:52:58 +0000 (17:22 +0530)]
Bug 8277 : VXLAN tunnel flapping

Change-Id: Ie1390ec7f32ce97842b1b2f2e74235a3c185afbe
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoAdd component tests for Resource Manager Service 29/56029/2
David [Tue, 25 Apr 2017 23:43:49 +0000 (01:43 +0200)]
Add component tests for Resource Manager Service

Add component tests for Resource Manager Service following this
guidelines [0].

Code coverage for resourcemanager-impl increased to more than 70%. This
coverage can improved by adding some negative test cases as well as
applying some re-factoring to the ResourceManager itself.

[0] https://wiki.opendaylight.org/view/BestPractices/Component_Tests

Change-Id: Iabbdf875301059d18e59b25312c6727b642a23c4
Signed-off-by: David <david.suarez.fuentes@ericsson.com>
7 years ago@Immutable FlowEntity 63/53763/10
Michael Vorburger [Fri, 24 Mar 2017 02:17:59 +0000 (03:17 +0100)]
@Immutable FlowEntity

This change has impacts in downstream project netvirt, which are handled
in https://git.opendaylight.org/gerrit/#/c/54390/ (must be merged
simultaneously)

Change-Id: I3d58caa5cbeafd1df2458942692b9271a650a23c
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMerge "BUG 8107: Flow based tunnels not being handled correctly"
Faseela K [Wed, 26 Apr 2017 11:20:16 +0000 (11:20 +0000)]
Merge "BUG 8107: Flow based tunnels not being handled correctly"

7 years agoBUG 8107: Flow based tunnels not being handled correctly 51/54251/4
Vishal Thapar [Thu, 30 Mar 2017 17:54:17 +0000 (23:24 +0530)]
BUG 8107: Flow based tunnels not being handled correctly

OF tunnels don't get added to interface-state which causes failures.

Change-Id: I95a4129c53c9f187d1f695f50e4b2f346780fb36
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoFix minor issues in idUtils 46/55846/2
David [Sat, 22 Apr 2017 16:23:56 +0000 (18:23 +0200)]
Fix minor issues in idUtils

- Return expressions directly.

Change-Id: I5f0a9343cd6fea21e0ffe4f5617317ebb16544c1
Signed-off-by: David <david.suarez.fuentes@ericsson.com>
7 years agoJunits failure on interfacemanager-impl due to timing issues 28/55828/2
Faseela K [Fri, 21 Apr 2017 19:13:56 +0000 (00:43 +0530)]
Junits failure on interfacemanager-impl due to timing issues

Change-Id: I6151043e26bc42ab0ed980646382b96175ea0190
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoVLAN IF in a VM gets a Trunkport IP from the DHCP if there is no SubPort 09/55209/4
Faseela K [Wed, 19 Apr 2017 11:30:00 +0000 (17:00 +0530)]
VLAN IF in a VM gets a Trunkport IP from the DHCP if there is no SubPort
created

If there is a VM which has two (2) TrunkPorts (vNICs) and both of these
TrunkPorts does have one SubPort created, and one of these ports has also 8
other VLAN interfaces defined inside the VM. These additional VLAN
interfaces which don't have matching SubPort do get IP address of the
TrunkPort from the DHCP server. Assumption is that the DHCP server (ODL)
should not answer to the DHCP request if it comes from a Trunk port with
VLAN tag / SubPort which is not defined.

Change-Id: I6fdf1deeadda71adf3dda3c00c16c2b424b62ab7
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoMerge "ArpUtil Test"
Faseela K [Mon, 24 Apr 2017 05:50:16 +0000 (05:50 +0000)]
Merge "ArpUtil Test"

7 years agoClean up ITM impl *Worker: Use "final" where possible, avoid parameters 74/54374/8
Michael Vorburger [Wed, 5 Apr 2017 17:29:15 +0000 (19:29 +0200)]
Clean up ITM impl *Worker: Use "final" where possible, avoid parameters

Just a start, there is more TBD here re. static and all; e.g. the
Itm*Tunnel*Worker private static methods could probably be made
non-static and an the workers made to have an instance, or even just be
moved into the respective Itm*Worker classes, which seem to be the only
place using them.

This change was motivated by having had a closer look at this code due
to review comment in c/52871 to make something non-static which we
cannot yet easily, because of this.

Change-Id: Ib22ef6edb86ae50b1fe91bf68b9f85ad93dc612f
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoArpUtil Test 91/55091/6
Edwin Anthony [Fri, 21 Apr 2017 06:48:31 +0000 (12:18 +0530)]
ArpUtil Test

Change-Id: I084e89b7cf8af6090b3fde30412ac8a809c24647
Signed-off-by: Edwin Anthony <n.edwin.anthony@ericsson.com>
7 years agoEnhancing junits for interface-manager phase6 55/54855/9
Faseela K [Tue, 18 Apr 2017 10:28:34 +0000 (15:58 +0530)]
Enhancing junits for interface-manager phase6

Adding junits for interface-manager APIs

Change-Id: I98bbeaef0681064eb81b487aff43f345d285d5c1
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoCleanup IdManager and LockManager info messages 18/55218/4
Alon Kochba [Wed, 19 Apr 2017 12:14:43 +0000 (15:14 +0300)]
Cleanup IdManager and LockManager info messages

These modules are very active and output a large number
of logs in INFO level, which should be DEBUG level.

Change-Id: Id260b124ffeefa8ccf58d2c021c5c75b8ac589ab
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoMerge "Fix 1 Checkstyle problem (red in Eclipse, missed in build)"
Vivek Srivastava [Thu, 20 Apr 2017 14:38:53 +0000 (14:38 +0000)]
Merge "Fix 1 Checkstyle problem (red in Eclipse, missed in build)"

7 years agoMerge "Spec Propose to utilize Ovsdb QoS queues"
Sam Hague [Thu, 20 Apr 2017 12:52:07 +0000 (12:52 +0000)]
Merge "Spec Propose to utilize Ovsdb QoS queues"

7 years agoSpec Propose to utilize Ovsdb QoS queues 61/51861/9
Konsta Pozdeev [Tue, 14 Feb 2017 12:44:14 +0000 (14:44 +0200)]
Spec Propose to utilize Ovsdb QoS queues

Change-Id: I7f6d8e4237c829b49efd4b78d072b5cbd91f174a
Signed-off-by: Konsta Pozdeev <konsta.pozdeev@hpe.com>
7 years agoAdded rpc in itm-rpc to move commonly used method. 18/55118/7
Riyazahmed D Talikoti [Mon, 17 Apr 2017 11:48:30 +0000 (17:18 +0530)]
Added rpc in itm-rpc to move commonly used method.

getEndpointIpAddressForDPN method is used by multiple modules
elanmanager, fibmanager, vpnmanager, natservice
Hence adding this method to itm-rpc.
We can use this same rpc call in all the above mentioned modules.

Change-Id: I2b0c615b3f19b8f09e212a87174ae7ed05dd40ce
Signed-off-by: Riyazahmed D Talikoti <riyazahmed.d.talikoti@ericsson.com>
7 years agoFix 1 Checkstyle problem (red in Eclipse, missed in build) 46/55246/1
Michael Vorburger [Wed, 19 Apr 2017 16:12:24 +0000 (18:12 +0200)]
Fix 1 Checkstyle problem (red in Eclipse, missed in build)

required for overall move to new Checkstyle version, see
https://git.opendaylight.org/gerrit/#/q/topic:bumpCheckstyle

see also earlier https://git.opendaylight.org/gerrit/#/c/55170/

Change-Id: Icab6986e0207f3d6b2f1b3dbd875bf73a25c26c9
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoUtils for remote acl merging metadata 98/54398/5
Slava Radune [Thu, 6 Apr 2017 07:12:51 +0000 (10:12 +0300)]
Utils for remote acl merging metadata

Change-Id: I8f7f49a5b6f57e50e13c6d4f42acabd3585de229
Signed-off-by: Slava Radune <slava.radune@hpe.com>
7 years agoBug 7826: Data validation failed for path 89/54589/13
eswanit [Mon, 10 Apr 2017 11:02:44 +0000 (16:32 +0530)]
Bug 7826: Data validation failed for path

* Modified removeGroup entity and removeFlow entity method
to fix the CSIT error of group-id not existing

* Added syncronized key-check for group and flow syncDelete

Will run the CSIT and check.

Change-Id: I6d137aa353b3e691085ba484d63a1833b140472c
Signed-off-by: eswanit <swati.udhavrao.niture@ericsson.com>
7 years agoMerge "LockManager catch (InterruptedException e) LOG error not info"
Faseela K [Wed, 19 Apr 2017 07:05:34 +0000 (07:05 +0000)]
Merge "LockManager catch (InterruptedException e) LOG error not info"

7 years agoMerge "Fix getPortsOnBridge() API"
Vishal Thapar [Wed, 19 Apr 2017 04:50:59 +0000 (04:50 +0000)]
Merge "Fix getPortsOnBridge() API"

7 years agoMinor fix for potential Tx resources leak found by static code analysis 99/54999/7
Michael Vorburger [Thu, 13 Apr 2017 17:51:47 +0000 (19:51 +0200)]
Minor fix for potential Tx resources leak found by static code analysis

and an (unrelated) Map remove null related check

Change-Id: Ibfa6f42bee741637ec1bf7f2cfcfa9a6ff6822aa
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMerge "Minor removal of useless null check in OvsdbNodeListener"
Faseela K [Tue, 18 Apr 2017 17:50:52 +0000 (17:50 +0000)]
Merge "Minor removal of useless null check in OvsdbNodeListener"

7 years agoMerge "Multiple VxLAN tunnels - remove logic tunnel group"
Faseela K [Tue, 18 Apr 2017 16:00:47 +0000 (16:00 +0000)]
Merge "Multiple VxLAN tunnels - remove logic tunnel group"

7 years agoMinor removal of useless null check in OvsdbNodeListener 64/55164/1
Michael Vorburger [Tue, 18 Apr 2017 15:29:04 +0000 (17:29 +0200)]
Minor removal of useless null check in OvsdbNodeListener

Both found by null analysis in Eclipse: "Null comparison always yields
false: The variable externalIdsInfoObj cannot be null at this location"
and "Redundant null check: The variable ovsdbNodeExternalIdsList cannot
be null at this location"

Change-Id: Ia2775254606978dc544429bfbbd5a4e5ceab04c6
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoMultiple VxLAN tunnels - remove logic tunnel group 03/53603/15
Olga Schukin [Tue, 21 Mar 2017 11:39:31 +0000 (13:39 +0200)]
Multiple VxLAN tunnels - remove logic tunnel group

Removing logic tunnel related models from DS

Depends-On:  https://git.opendaylight.org/gerrit/52871
     https://git.opendaylight.org/gerrit/52993

Change-Id: If869da809d17e805940b627c1ed0c330fe06e4e6
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
7 years agoLockManager catch (InterruptedException e) LOG error not info 23/54423/3
Michael Vorburger [Thu, 6 Apr 2017 11:35:49 +0000 (13:35 +0200)]
LockManager catch (InterruptedException e) LOG error not info

or is this intentional only info, for some reason?

If so, then it should be documented with an in-line comment...

Change-Id: I10e3c50f74a7fa866fbb67e8513974bb289570d5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoFix 2 Checkstyle problems (red in Eclipse, missed in build) 78/54978/2
Michael Vorburger [Thu, 13 Apr 2017 13:38:12 +0000 (15:38 +0200)]
Fix 2 Checkstyle problems (red in Eclipse, missed in build)

This show up as red in Eclipse, but the CLI mvn build misses these; I
suspect that this is because the exact Checkstyle version used in the
Eclipse plugin likely is a little newer, and thus stricter, than the one
we currently use in the CLI mvn build.  (I have double checked that
other Checkstyle violations do still fail the build, these appear to be
corner cases.)

We should probably upgrade the CS version we have in odlparent.

Change-Id: Ib169df06b8d96dd2b8980ed33e59fcc9f1820d81
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoFix getPortsOnBridge() API 45/54945/4
Faseela K [Thu, 13 Apr 2017 08:35:16 +0000 (14:05 +0530)]
Fix getPortsOnBridge() API

The current API tries to read bridge-interface-entry which will be missing
for non-tunnel ports.

Change-Id: If2fb677bc84c2aeca59f6020371051f45f761240
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoMerge "Tunnel showing wrong state in scale setups"
Faseela K [Mon, 17 Apr 2017 09:02:03 +0000 (09:02 +0000)]
Merge "Tunnel showing wrong state in scale setups"

7 years agoMultiple VxLAN tunnels - RPC changes 93/52993/18
Olga Schukin [Wed, 8 Mar 2017 10:22:39 +0000 (12:22 +0200)]
Multiple VxLAN tunnels - RPC changes

- Change ITM RPC calls to getTunnelInterfaceName and
  getInternalOrExternalInterfaceName to prefer the logical tunnel
  group over the tunnel members
- IFM RPC call to getEgressActionsForInterface for the logical tunnel will
  load register6 with its corresponding lport-tag and resubmit the
  traffic to the egress dispatcher table.

Depends-On:  https://git.opendaylight.org/gerrit/52871

Change-Id: I26a244225c3d82038bb92ea014b8ee35a4f5eda5
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
7 years agoTunnel showing wrong state in scale setups 50/54750/2
Faseela K [Tue, 11 Apr 2017 08:21:27 +0000 (13:51 +0530)]
Tunnel showing wrong state in scale setups

In a scaled environment, when BFD flaps continuously,
interface-manager was showing the wrong tunnel-state in the end,
This is because interface-state in cache will have stale oper-status
leading to race conditions, during frequent toggling events.
Read from cache should be avoided in such conditions.

Change-Id: I878afb51f1da41f50e7f853cf0dbce35e5b96136
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoMerge "Renaming IFM utility getInterfaceStateFromOperDS"
Faseela K [Fri, 14 Apr 2017 10:02:20 +0000 (10:02 +0000)]
Merge "Renaming IFM utility getInterfaceStateFromOperDS"

7 years agoIgnore failing merge tests 01/55001/1
Sam Hague [Thu, 13 Apr 2017 19:17:28 +0000 (15:17 -0400)]
Ignore failing merge tests

Change-Id: Ie5cb68712ebb450e653dc423199c045fcf029036
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoMerge "Enhance install egress dispatcher flow logs"
Faseela K [Thu, 13 Apr 2017 18:09:57 +0000 (18:09 +0000)]
Merge "Enhance install egress dispatcher flow logs"

7 years agoRenaming IFM utility getInterfaceStateFromOperDS 46/54746/6
Faseela K [Tue, 11 Apr 2017 05:56:14 +0000 (11:26 +0530)]
Renaming IFM utility getInterfaceStateFromOperDS

The utility was first doing a cache read, and in cache miss
cases, it tends to read from oper DS. So, ideally both the utils should
be separated so that if someone does not want to use the cache read, they
should be free to use the same.

Change-Id: Ie9b4371c466e57f75b357e7e6c39ecfb87480478
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoMerge "Add ArpConstants to arputil"
Sam Hague [Thu, 13 Apr 2017 17:45:27 +0000 (17:45 +0000)]
Merge "Add ArpConstants to arputil"

7 years agoEnhance install egress dispatcher flow logs 75/54575/3
Faseela K [Mon, 10 Apr 2017 06:50:38 +0000 (12:20 +0530)]
Enhance install egress dispatcher flow logs

Making the logs a little more readable, found it confusing
while debugging one issue

Change-Id: I486e8afa86a41a4e5a09485e1fbec16c5aff6f58
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoEnhancing lockmanager junits 77/54577/5
Faseela K [Mon, 10 Apr 2017 08:00:21 +0000 (13:30 +0530)]
Enhancing lockmanager junits

Change-Id: I87c21a7a24229b931c3cdfe2dd939a99c2aaa1e3
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoAdd ArpConstants to arputil 90/54890/2
Sam Hague [Wed, 12 Apr 2017 18:45:51 +0000 (14:45 -0400)]
Add ArpConstants to arputil

Moving all arp constants to a single file as some
of these were duplicated. This is also to help break
cylci dependencies in netvirt.

Change-Id: I99ad9110f74702f2b3e6a50b3ba524ff2f6399bb
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoMerge "Bug 8160 : getLock() in endless loop"
Sam Hague [Thu, 13 Apr 2017 14:48:53 +0000 (14:48 +0000)]
Merge "Bug 8160 : getLock() in endless loop"

7 years agoMerge "Bug 8111: Conflicting modification for path"
Sam Hague [Thu, 13 Apr 2017 14:43:58 +0000 (14:43 +0000)]
Merge "Bug 8111: Conflicting modification for path"

7 years agoBug 8160 : getLock() in endless loop 14/54414/2
Kency Kurian [Thu, 6 Apr 2017 09:57:06 +0000 (15:27 +0530)]
Bug 8160 : getLock() in endless loop

Ensured that the lock is unlocked before returning the idValue.
Depends-On: I5b4b875aabba4d434515004181521d08ba8d1867

Change-Id: I6e01e2dc63992b91f1ecd19dd42413a08932899d
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoMerge "Changing Netvirt Classifier Egress service tables"
Sam Hague [Wed, 12 Apr 2017 12:17:04 +0000 (12:17 +0000)]
Merge "Changing Netvirt Classifier Egress service tables"

7 years agoChanging Netvirt Classifier Egress service tables 69/54769/1
Brady Johnson [Tue, 11 Apr 2017 12:22:22 +0000 (14:22 +0200)]
Changing Netvirt Classifier Egress service tables

- Previously they were 110, 111, 112 but the Egress dispatcher
  table is 220 so a simple goto_table wouldnt work.
- Instead of doing a resubmit table, its better to have all the
  Egress service tables grouped together. Now using 221, 222, 223.

Change-Id: Ibaa399abb9e3dc40904c8b0d561a62a84eae8c01
Signed-off-by: Brady Johnson <brady.allen.johnson@ericsson.com>