genius.git
6 years agoSpec for ServiceRecovery Framework 93/58693/6
Vishal Thapar [Fri, 12 May 2017 09:21:37 +0000 (14:51 +0530)]
Spec for ServiceRecovery Framework

Change-Id: I11e9867a4a5ab35a2c0b42eccdd7bd3b5349a5ff
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
6 years agoMerge "Avoid .transform() NPEs"
Michael Vorburger [Thu, 27 Jul 2017 18:12:54 +0000 (18:12 +0000)]
Merge "Avoid .transform() NPEs"

6 years agoMerge "hwvtep transaction batching separation across shards"
Michael Vorburger [Thu, 27 Jul 2017 14:53:48 +0000 (14:53 +0000)]
Merge "hwvtep transaction batching separation across shards"

6 years agoMerge "Bug 8476 Add support for logical switch replication mode"
Vishal Thapar [Thu, 27 Jul 2017 14:45:29 +0000 (14:45 +0000)]
Merge "Bug 8476 Add support for logical switch replication mode"

6 years agoMerge "Change method names to comply with naming conventions"
Michael Vorburger [Thu, 27 Jul 2017 14:39:28 +0000 (14:39 +0000)]
Merge "Change method names to comply with naming conventions"

6 years agoMerge "Guard some TRACE logs in DJC"
Vishal Thapar [Thu, 27 Jul 2017 14:35:19 +0000 (14:35 +0000)]
Merge "Guard some TRACE logs in DJC"

6 years agoMerge "Add a private constructor to avoid instantiation"
Vishal Thapar [Thu, 27 Jul 2017 14:34:10 +0000 (14:34 +0000)]
Merge "Add a private constructor to avoid instantiation"

6 years agoMerge "Remove un-used TestDataStoreJobCoordinator"
Vivek Srivastava [Thu, 27 Jul 2017 14:30:35 +0000 (14:30 +0000)]
Merge "Remove un-used TestDataStoreJobCoordinator"

6 years agoMerge "Remove un-used newWriteOnlyTransaction() in removeTerminationEndPoint()"
Vishal Thapar [Thu, 27 Jul 2017 14:29:20 +0000 (14:29 +0000)]
Merge "Remove un-used newWriteOnlyTransaction() in removeTerminationEndPoint()"

6 years agoBug 8476 Add support for logical switch replication mode 10/57210/7
Victor Pickard [Tue, 16 May 2017 20:32:07 +0000 (16:32 -0400)]
Bug 8476 Add support for logical switch replication mode

With OVS 2.6, the Logical Switch table, in the hardware_vtep schema, has
a new field, replication_mode. This bug will be used to add support to
netvirt, ovsdb, and genius for setting the replication_mode of logical
switches. The default will be for ODL to set the replication_mode
to "source_node" when creating logical switches.

Refer to [1] for more details on replication_mode.

[1] http://openvswitch.org/support/dist-docs/vtep.5.html

This patch depends on ovsdb patch:
https://git.opendaylight.org/gerrit/#/c/57209/

Change-Id: I538634a791f73d60b5a9c7cc479f4c42847889bd
Signed-off-by: Victor Pickard <vpickard@redhat.com>
6 years agoCapture flow addition to debug log 68/60268/5
Vishal Thapar [Thu, 13 Jul 2017 00:01:01 +0000 (05:31 +0530)]
Capture flow addition to debug log

debug log any flows that get added to config DS
trace log flow deletion

Change-Id: Ic15db83a08fca26b01b3c89ebf910d5dbff0be91
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
6 years agoChange method names to comply with naming conventions 73/60673/1
David Suarez [Sun, 23 Jul 2017 20:44:03 +0000 (22:44 +0200)]
Change method names to comply with naming conventions

Change method names to comply with naming conventions.

And minor cleanup.

Change-Id: Ia68f1484a4574d1a639fd93856579ff79ed19024
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
6 years agoAdd a private constructor to avoid instantiation 67/60667/1
David Suarez [Sun, 23 Jul 2017 15:44:56 +0000 (17:44 +0200)]
Add a private constructor to avoid instantiation

Add a private constructor to avoid instantiation of this utility class.

Change-Id: I0a44ac809b9a5e303b30b8927c0c1e334a7cb8c1
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
6 years agoAvoid .transform() NPEs 76/59876/3
Stephen Kitt [Mon, 3 Jul 2017 13:23:01 +0000 (15:23 +0200)]
Avoid .transform() NPEs

Guava’s Optional::transform doesn’t support null values returned by
the mapping function — it throws a NPE if that happens. java.util’s
Optional::map does support null values and returns an empty Optional.
Combined with the current YANG-based code’s ability to return null,
this means it’s better to use java.util’s method; this patch switches
all YANG-based Optional transforms to java.util.

Change-Id: I8b26820ce5627e9ee950baee6d99a315e9e3494e
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoMerge "Port Number Change on OVS restart not handled by IFM"
Faseela K [Thu, 20 Jul 2017 08:13:13 +0000 (08:13 +0000)]
Merge "Port Number Change on OVS restart not handled by IFM"

6 years agohwvtep transaction batching separation across shards 37/60237/3
Faseela K [Wed, 12 Jul 2017 09:35:07 +0000 (15:05 +0530)]
hwvtep transaction batching separation across shards

Hwvtep helpers were doing a single transaction for operations
spread across shards, which is not recommended, and hence refactoring
the same. Also, in case of continuous HWVTEP channel flap, there are
some issues observed with tunnels not getting programmed on TOR.
Fixing this by avoiding read on topology/oper DS to derive global nodeId.

Change-Id: I7153c8e30dd66d6474125b83dfd3f13f0b760d01
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years ago@Ignore flaky newl2vlanInterfaceTests InterfaceManagerConfigurationTest 24/60424/1
Michael Vorburger [Sat, 15 Jul 2017 08:54:46 +0000 (14:24 +0530)]
@Ignore flaky newl2vlanInterfaceTests InterfaceManagerConfigurationTest

Change-Id: Icca2e7ecfd93e12bc867885fd1f547a5aae0932f
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRemove un-used newWriteOnlyTransaction() in removeTerminationEndPoint() 07/60307/1
Michael Vorburger [Thu, 13 Jul 2017 19:40:46 +0000 (01:10 +0530)]
Remove un-used newWriteOnlyTransaction() in removeTerminationEndPoint()

Change-Id: If95dfdbdb777c71f19c715f96677d5f523f83eb5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRemove un-used TestDataStoreJobCoordinator 02/60302/1
Michael Vorburger [Thu, 13 Jul 2017 11:39:03 +0000 (17:09 +0530)]
Remove un-used TestDataStoreJobCoordinator

The TestDataStoreJobCoordinator is not used anymore anywhere in genius
and netvirt, and can and should thus be removed now.

It was my first take on the async test problem, but it has since been
replaced by the
org.opendaylight.genius.datastoreutils.testutils.TestableJobCoordinatorEventsWaiter,
which it *IS* actively used e.g. in genius' interfacemanager and
netvirt's aclservice component tests.

Change-Id: I882e8e943195e39399cb4c972bff85f34c91cf62
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoMerge "Fix missing getter and toString in ActionNxResubmit & tests for it"
Sam Hague [Thu, 13 Jul 2017 14:44:55 +0000 (14:44 +0000)]
Merge "Fix missing getter and toString in ActionNxResubmit & tests for it"

6 years agoFix missing getter and toString in ActionNxResubmit & tests for it 19/60219/2
Michael Vorburger [Tue, 11 Jul 2017 21:24:56 +0000 (02:54 +0530)]
Fix missing getter and toString in ActionNxResubmit & tests for it

This fixes a problem in TestIMdsalApiManager related to xtendbeans hit
in a failure of aclservice's
AclServiceStatelessTest>AclServiceTestBase.newInterface.

Also ActionLearn, ActionOutput & ActionNxConntrack, ActionSetArpOp,
ActionSetDestinationIp. ActionSetFieldDscp, ActionSetFieldMeta,
ActionSetFieldMplsLabel, ActionSetFieldPbbIsid, ActionSetFieldVlanVid,
ActionSetTunnelDestinationIp, ActionSetTunnelSourceIp all similarly
broken for xtendbeans tests due to missing getters - it would never have
correctly shown differences in these, and just silently ignored any.

as well as further missing correct overloaded toString() in ActionGroup,
ActionRegLoad, ActionLoadIpToSpa, ActionLoadMacToSha,
ActionNxLoadInPort, ActionRegMove, ActionSetDestinationIp,
ActionSetFieldEthernetDestination, ActionSetFieldEthernetSource,
ActionSetFieldTunnelId, ActionSetIcmpType, ActionSetIcmpv6Type,
ActionSetSourceIp, ActionSetSourceIpv6, ActionSetTcpDestinationPort,
ActionSetTcpSourcePort, ActionSetUdpDestinationPort and
ActionSetUdpSourcePort.

Change-Id: Id7adf0786dfda5f3be53c980a109a0d8d911ada5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoException in service-binding logic when a neutron port is deleted 13/59913/7
Faseela K [Tue, 4 Jul 2017 06:33:50 +0000 (12:03 +0530)]
Exception in service-binding logic when a neutron port is deleted

With the recent changes in ACL, deletion of a vpninterface triggers
an unbind and bind of ACL service. Parallelly interface-config
delete triggers one more unbind of ACL service, and the final unbind
results in NPEs in service-binding logic. The last unbind is anyways
a NOP, and hence returning with an ERROR message. Whenever ACL improvises
their logic, this ERROR will also automatically go away.

Change-Id: Ib28794ef5b6ace7a8759be9c6b2c8e9ef9c9793e
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoPort Number Change on OVS restart not handled by IFM 31/60231/1
Faseela K [Wed, 12 Jul 2017 07:18:58 +0000 (12:48 +0530)]
Port Number Change on OVS restart not handled by IFM

If port number for an interface changes on OVS restart, interface-manager
was not handling the same, and this results in stale entries remaining in
interface-state DS. Making the code robust to handle OF port number
updates.

Change-Id: If5cd5d9a6643a2bd67a500530ecc9f0bf2dfbd5c
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoMerge "VM Migration: Handle VM migration only for OFPT_PORT_STATUS/OFPPR_ADD"
Faseela K [Wed, 12 Jul 2017 07:14:04 +0000 (07:14 +0000)]
Merge "VM Migration: Handle VM migration only for OFPT_PORT_STATUS/OFPPR_ADD"

6 years agoMerge "Bug 8677: Bump odlparent from 2.0.0 to 2.0.2"
Sam Hague [Tue, 11 Jul 2017 21:32:57 +0000 (21:32 +0000)]
Merge "Bug 8677: Bump odlparent from 2.0.0 to 2.0.2"

6 years agoBug 8163: Use async DTCL verification in MdSalUtilTest 10/60210/2
Tom Pantelis [Tue, 11 Jul 2017 17:53:16 +0000 (13:53 -0400)]
Bug 8163: Use async DTCL verification in MdSalUtilTest

https://git.opendaylight.org/gerrit/#/c/60022/ is changing the
DTCL executor to MT so the DTCL verification in MdSalUtilTest needs
to be done asynchronously instead of assuming direct notification.

Change-Id: Ib099d0ed807ae2fe8cb978b787bef0b84c0951ff
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoGuard some TRACE logs in DJC 00/60200/3
Faseela K [Tue, 11 Jul 2017 12:26:05 +0000 (17:56 +0530)]
Guard some TRACE logs in DJC

Change-Id: I04b7496efbdb3e4859b62cf98c542262683d6052
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoMerge "Bug 8800: TestIMdsalApiManager assertFlowsInAnyOrder fail safe"
Michael Vorburger [Tue, 11 Jul 2017 09:21:13 +0000 (09:21 +0000)]
Merge "Bug 8800: TestIMdsalApiManager assertFlowsInAnyOrder fail safe"

6 years agoBug 8677: Bump odlparent from 2.0.0 to 2.0.2 22/59922/4
Michael Vorburger [Tue, 4 Jul 2017 09:26:50 +0000 (11:26 +0200)]
Bug 8677: Bump odlparent from 2.0.0 to 2.0.2

This lets Windows users build Karaf distributions
locally more easily (without requiring Git Bash/Cygwin).

see https://lists.opendaylight.org/pipermail/odlparent-dev/2017-June/001154.html

Change-Id: Idddf44e8cf63b8266ce8049cbe3a52b8a8a543ba
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoMerge "Removing unnecessary TRACE log in service-binding"
Vishal Thapar [Fri, 7 Jul 2017 15:34:49 +0000 (15:34 +0000)]
Merge "Removing unnecessary TRACE log in service-binding"

6 years agoBug 8800: TestIMdsalApiManager assertFlowsInAnyOrder fail safe 51/59951/2
Michael Vorburger [Tue, 4 Jul 2017 22:20:11 +0000 (00:20 +0200)]
Bug 8800: TestIMdsalApiManager assertFlowsInAnyOrder fail safe

It *MUST* fail in case that:

  assertThat(sortedFlows).containsExactlyElementsIn(sortedExpectedFlows);

failed but:

  assertEqualBeans(sortedExpectedFlows, sortedFlows);

passed; any such case is likely a bug in ch.vorburger.xtendbeans.

netvirt aclservice tests (or their expected flows) must be fixed before
this change can be merged.  This doesn't fix anything, it would just let
us discover this kind of problem much earlier, if things ever broke
again.

The new FlowEntityAssertBeansTest adds a non-regression test for the
reoot cause problem; it fails as of the time of writing, but will pass
once the ch.vorburger.xtendbeans dependency is bumped from 1.2.3 to the
1.3.0 in https://git.opendaylight.org/gerrit/#/c/59950.

See bug 8800 for full background and details.

Change-Id: I1e67a8cd1401d6490538742d4100a8a2be2630c5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRemoving unnecessary TRACE log in service-binding 66/60066/1
Faseela K [Fri, 7 Jul 2017 10:02:34 +0000 (15:32 +0530)]
Removing unnecessary TRACE log in service-binding

This TRACE log is printing the whole tree of a change notification.
There are other informative logs already in place after the initial
processing, and this one is not needed.

Change-Id: I5063c5b88de602065eaf294fb100ae92ba057d16
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoMaking ActionConverterUtil log to DEBUG 14/59914/2
Faseela K [Tue, 4 Jul 2017 06:40:18 +0000 (12:10 +0530)]
Making ActionConverterUtil log to DEBUG

As these logs are filling up netvirt CSIT logs

Change-Id: I3b1225d484693dad4d9dc664760a4125ff8bd20e
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoBug 8800: Prevent xtendbeans NPE warn.log in InstructionApplyActions 53/59953/1
Michael Vorburger [Tue, 4 Jul 2017 22:45:57 +0000 (00:45 +0200)]
Bug 8800: Prevent xtendbeans NPE warn.log in InstructionApplyActions

Change-Id: I0e5c018231a79a5970efe862d62aaedfc091ebfd
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRemove odl-genius-ui from artifacts and features 17/59917/3
Faseela K [Tue, 4 Jul 2017 07:18:56 +0000 (12:48 +0530)]
Remove odl-genius-ui from artifacts and features

Change-Id: Idc40abbd996ac968f35706c29de9a510abab3d4c
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoDO NOT install or deploy the karaf artifact 36/59636/1
Faseela K [Wed, 28 Jun 2017 17:42:49 +0000 (23:12 +0530)]
DO NOT install or deploy the karaf artifact

Change-Id: I664de7a1cf122b5e465df4a5c9ec1c0cf55d16d3
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoBUG 8528: Fix duplicate Apply Actions Instruction 15/57715/4
Jaime Caamaño Ruiz [Mon, 22 May 2017 14:23:26 +0000 (16:23 +0200)]
BUG 8528: Fix duplicate Apply Actions Instruction

When an egress service sends it's own Apply Actions instruction, Genius
will generate two Apply Actions instructions southbound, one of it's
own containing the action to set REG6 and a different one containing the
service supplied actions. This is not correct per Openflow specification
and OVS rejects the operation.

Fixed by bundling the set REG6 action and the service provided
actions into the same Apply Actions instruction, taking care of
not rearranging the order of the service actions.

Change-Id: I48735857418fed0025b172b73eb02be9c8e9bbbe
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoUpgrade to odlparent 2.0.0, karaf4 and Guava21 98/59298/10
Vishal Thapar [Wed, 21 Jun 2017 15:23:37 +0000 (20:53 +0530)]
Upgrade to odlparent 2.0.0, karaf4 and Guava21

1. Change odlparent-lite to 2.0.0
2. Delete genius-features and rename features4-genius to genius-features
3. Change single-feature-parent to 2.0.0
4. Cleanup in karaf/pom.xml for karaf4
5. Fixes for Guava21
6. Removed odl-genius-ui feature, removing dependency on dlux

Change-Id: I62c4a791d658e74f7347cc03aafb24c999c85a7f
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoMerge "Genius wide blueprint xml path change: /OSGI-INF/ -> /org/opendaylight/"
Michael Vorburger [Tue, 20 Jun 2017 17:58:48 +0000 (17:58 +0000)]
Merge "Genius wide blueprint xml path change: /OSGI-INF/ -> /org/opendaylight/"

7 years agoMerge "avoiding logging full stack trace in case of id doesn't exist"
Michael Vorburger [Tue, 20 Jun 2017 15:42:07 +0000 (15:42 +0000)]
Merge "avoiding logging full stack trace in case of id doesn't exist"

7 years agoGenius wide blueprint xml path change: /OSGI-INF/ -> /org/opendaylight/ 07/59207/2
Abhinav Gupta [Tue, 20 Jun 2017 08:52:55 +0000 (14:22 +0530)]
Genius wide blueprint xml path change: /OSGI-INF/ -> /org/opendaylight/

Also have removed fake "availability=optional"

Change-Id: Ia4c21bbba98f01d938c97990f2a02dd9996a8490
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoDon’t load odl-genius-ui on boot 03/59203/1
Stephen Kitt [Tue, 20 Jun 2017 08:26:13 +0000 (10:26 +0200)]
Don’t load odl-genius-ui on boot

This drops odl-genius-ui as the Karaf 4 distribution’s local feature,
so that it’s no longer loaded as a boot feature. The Genius feature
repository will still be part of the distribution.

Change-Id: I3da7ebf2771235bbd86cfa1728a80889e0e59cd4
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agochanging karaf3 to karaf4 for genius features 10/58810/11
Faseela K [Tue, 13 Jun 2017 11:19:31 +0000 (16:49 +0530)]
changing karaf3 to karaf4 for genius features

Change-Id: I5ddc6382cbe1fd1d3cc6b17ccf8b35cffe9917be
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoavoiding logging full stack trace in case of id doesn't exist 55/56755/7
Periyasamy Palanisamy [Wed, 10 May 2017 06:02:20 +0000 (11:32 +0530)]
avoiding logging full stack trace in case of id doesn't exist

* This fix is to avoid filling karaf logs exception with full of stack
trace if source of exception is known by its exception type and message.

Change-Id: I057647f9a4ac90c32476e8d9eb2494a1b9d3c4a2
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoMerge "Bug 8146:BFD tunnel monitoring interval update fix"
Faseela K [Sat, 17 Jun 2017 00:37:39 +0000 (00:37 +0000)]
Merge "Bug 8146:BFD tunnel monitoring interval update fix"

7 years agoRemove uses of Optional for conditionals 62/57662/7
Stephen Kitt [Tue, 23 May 2017 08:19:40 +0000 (10:19 +0200)]
Remove uses of Optional for conditionals

Optional instances should never be constructed just to facilitate
conditional handling of the form

    Type variable = ...
    if (variable != null) {
        ...
    }

Turning this into

    Optional<Type> variable = Optional.ofNullable(...);
    variable.ifPresent(value -> ...);

causes more GC activity and makes the code harder to read (and
analyse).

This patch doesn’t address the issue of whether the values in question
are actually nullable.

Change-Id: Ieb48152cacc721a77473f4229d595b8486561bc3
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoBug 8146:BFD tunnel monitoring interval update fix 50/59050/1
Hema Gopalakrishnan [Fri, 9 Jun 2017 06:21:55 +0000 (11:51 +0530)]
Bug 8146:BFD tunnel monitoring interval update fix

Added support for dumping more caches
Caches were not getting cleared correctly. Fix to remove tunnels from Cache whenTEPs are deleted.

Change-Id: I4bbc5e203cf90f81ba9b9b70818c4972d05ef2c6
Signed-off-by: Hema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
7 years agoMerge "Use TestEntityOwnershipService that's now in controller"
Michael Vorburger [Thu, 15 Jun 2017 15:02:10 +0000 (15:02 +0000)]
Merge "Use TestEntityOwnershipService that's now in controller"

7 years agoMerge "Listener base classes should not throw exception if close()'d "
Michael Vorburger [Thu, 15 Jun 2017 15:00:24 +0000 (15:00 +0000)]
Merge "Listener base classes should not throw exception if close()'d "

7 years agoMigrate to odlparent 1.9.0 59/58859/1
Thanh Ha [Tue, 13 Jun 2017 20:15:14 +0000 (16:15 -0400)]
Migrate to odlparent 1.9.0

Change-Id: I40a03cc92255b08e54815050d15d487ef6c081bf
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
7 years agoFixing a typo in DJC log statement 13/58813/2
Faseela K [Tue, 13 Jun 2017 12:15:59 +0000 (17:45 +0530)]
Fixing a typo in DJC log statement

Change-Id: Iff8853ea40b547235d36d495a23ce0fa055abff6
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoMerge "Bug 8555 - Too many log info print to the console"
Faseela K [Tue, 13 Jun 2017 11:12:48 +0000 (11:12 +0000)]
Merge "Bug 8555 - Too many log info print to the console"

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 agoUse TestEntityOwnershipService that's now in controller 92/58092/2
Michael Vorburger [Thu, 1 Jun 2017 03:43:51 +0000 (05:43 +0200)]
Use TestEntityOwnershipService that's now in controller

following https://git.opendaylight.org/gerrit/#/c/58089/

Change-Id: If0626ef349e16469cef14504ae6b11595030dad2
Signed-off-by: Michael Vorburger <vorburger@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 agoListener base classes should not throw exception if close()'d 57/57257/2
Michael Vorburger [Wed, 17 May 2017 10:36:46 +0000 (12:36 +0200)]
Listener base classes should not throw exception if close()'d

for AsyncClusteredDataTreeChangeListenerBase and
AsyncDataTreeChangeListenerBase, by introducing a new
ShutdownLoggingExecutorService infra util. related to -1 discussion in
https://git.opendaylight.org/gerrit/#/c/57004/

This is an alternative proposal to the ShutdownLoggingExecutorService
idea from https://git.opendaylight.org/gerrit/#/c/57156/

Change-Id: I5884a188fb5ea3581f99cc559acb158ed370ed7b
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoVM Migration: Handle VM migration only for OFPT_PORT_STATUS/OFPPR_ADD 91/58091/3
D Arunprakash [Thu, 1 Jun 2017 03:37:34 +0000 (09:07 +0530)]
VM Migration: Handle VM migration only for OFPT_PORT_STATUS/OFPPR_ADD

Trigger VM migration only for OFPT_PORT_STATUS/OFPPR_ADD event.
Ignore all the other events, which is triggering the migration.

Change-Id: I340e02301bed437910f0afda7a1f98a38e62fb33
Signed-off-by: D Arunprakash <d.arunprakash@ericsson.com>
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 agoBug 8555 - Too many log info print to the console 29/57929/5
Freeingo Sure [Sat, 27 May 2017 01:08:33 +0000 (09:08 +0800)]
Bug 8555 - Too many log info print to the console

Change-Id: I19133b5e7b2768ff5762bcf5d4a97994178a893b
Signed-off-by: 肖锋钢10072566 <xiao.fenggang@zte.com.cn>
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>