controller.git
14 months agoMigrate to expectNoMessage() 71/75371/1
Robert Varga [Wed, 22 Aug 2018 09:43:53 +0000 (11:43 +0200)]
Migrate to expectNoMessage()

expectNoMsg() has been deprecated, move to its replacement.

Change-Id: I51fc5dc28fd8131b76ca00d254de06403e06de69
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
14 months agoCache reflection operations in AbstractSchemaAwareTest 32/75332/9
Robert Varga [Mon, 20 Aug 2018 16:11:28 +0000 (18:11 +0200)]
Cache reflection operations in AbstractSchemaAwareTest

The design of AbstractSchemaAwareTest requires reflection-based
loading of SchemaContext for each test case, which is slow.

Instantiate weak caches to speed up tests which are co-located
on the same class loader.

Change-Id: I1a79d7e99f6efcccab37445f3de25a74cb6f02b6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
14 months agoFix findbugs warnings 51/75351/4
Robert Varga [Mon, 20 Aug 2018 23:07:54 +0000 (01:07 +0200)]
Fix findbugs warnings

Upgraded findbugs finds these, fix them up.

Change-Id: Id5a008cddc6616c3a93f0528efca00b86843fc3c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
14 months agoMigrate to UntypedAbstractActor 02/65902/12
Robert Varga [Fri, 6 Apr 2018 12:15:35 +0000 (14:15 +0200)]
Migrate to UntypedAbstractActor

As per the 2.4-to-2.5 migration guide using UntypedAbstractActor
UntypedActor is our cheapest migration option. This requires
updating MeteringBehavior to integrate with Receive.

Change-Id: I692f723dffc966bb7e117124b7a0cd714572ab4f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSpeed up DistributedDataStoreTest 51/74951/3
Robert Varga [Wed, 8 Aug 2018 14:36:20 +0000 (16:36 +0200)]
Speed up DistributedDataStoreTest

Sharing SchemaContext shaves off about .5 seconds.

Change-Id: I628af3b577ca53fc9f5ace05dc825f7324b71b8f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSpeed up AbstractModificationTest 50/74950/3
Robert Varga [Wed, 8 Aug 2018 14:30:43 +0000 (16:30 +0200)]
Speed up AbstractModificationTest

Sharing SchemaContext here shaves off about 2 seconds from
test run time.

Change-Id: I5e7fa63dd061ee6e1a16831aeae59f61deaccb5f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSpeed up AbstractTransactionProxyTest 49/74949/3
Robert Varga [Wed, 8 Aug 2018 14:26:48 +0000 (16:26 +0200)]
Speed up AbstractTransactionProxyTest

Sharing SchemaContext here shaves off about 2 seconds from
test run time.

Change-Id: Ic32bbd2e57aa5a56910377422fd3ab34a3120d89
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSpeed up ClientBackedDataStoreTest 48/74948/3
Robert Varga [Wed, 8 Aug 2018 14:21:46 +0000 (16:21 +0200)]
Speed up ClientBackedDataStoreTest

Sharing the SchemaContext shaves off about half a second.

Change-Id: I2db8c7d25d50b9ea3c4a8fd411d4eee7d5d5b429
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSpeed up ShardManagerTest 47/74947/3
Robert Varga [Wed, 8 Aug 2018 14:17:37 +0000 (16:17 +0200)]
Speed up ShardManagerTest

We can share a single SchemaContext for all tests, which shaves off
some 4 seconds from test run time.

Change-Id: Ic3cba6343d7f4e08a00aa17e90738b62c686b4f5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoRemove references to mdsal-model-artifacts 14/75114/2
Robert Varga [Sat, 11 Aug 2018 07:21:48 +0000 (09:21 +0200)]
Remove references to mdsal-model-artifacts

This artifact is going away, remove references to it.

Change-Id: I381b0fc6aaff72bbdf9e0d0192a0ca26a3b74e56
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoBump versions by x.(y+1).z for next dev cycle 88/74988/1
Anil Belur [Thu, 9 Aug 2018 12:40:14 +0000 (18:10 +0530)]
Bump versions by x.(y+1).z for next dev cycle

Change-Id: Ib2fae0d3ecc0b7d95a51ffb43a006685825738a6
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
15 months agoBump yangtools to 2.0.10 80/74880/2
Robert Varga [Mon, 6 Aug 2018 15:44:25 +0000 (17:44 +0200)]
Bump yangtools to 2.0.10

This fixes an issue with actions, hence we need it in Fluorine.

Change-Id: I4b312e3e8ca2eafdd8a63781e78c0c019f4f7a4a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoRemove RoutingLogic interface 53/74853/1
Tom Pantelis [Mon, 6 Aug 2018 12:56:43 +0000 (08:56 -0400)]
Remove RoutingLogic interface

This is no longer used...

Change-Id: I167eed99d7e457a7d6b1d53f39c07a1dfc6c5bf3
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoSimplify ListenableFuture translation 27/74827/4
Robert Varga [Sat, 4 Aug 2018 01:09:51 +0000 (03:09 +0200)]
Simplify ListenableFuture translation

We can forgo instantiation of immediate futures by using a simple
.transform(Optional::fromJavaUtil).

Change-Id: If33247bc473852d739f593bb7e752323b3ac6583
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoFix deprecation warnings and checkstyle in benchmarks 14/71214/13
Robert Varga [Mon, 23 Apr 2018 13:49:28 +0000 (15:49 +0200)]
Fix deprecation warnings and checkstyle in benchmarks

This fixes up warnings/checkstyle and flips the enforcement switch.

Change-Id: I22754c767ef643d703286a30252cf57006062ade
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoAdd MappingCheckedFuture 26/74826/3
Robert Varga [Sat, 4 Aug 2018 01:02:41 +0000 (03:02 +0200)]
Add MappingCheckedFuture

This class is moved here from MD-SAL, as CheckedFutures are not
used there anymore.

Change-Id: I84cda1d543a5bebdb17249943ee26ca8fe3f97bf
JIRA: MDSAL-229
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoConvert dsbenchmark to mdsal APIs 04/74804/3
Robert Varga [Fri, 3 Aug 2018 15:31:22 +0000 (17:31 +0200)]
Convert dsbenchmark to mdsal APIs

With controller interfaces deprecated, move benchmark to use MD-SAL
interfaces instead.

Change-Id: I79f52260171e3f4f770511f389bbc773e86e6939
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoReduce use of deprecated methods 03/74803/2
Robert Varga [Fri, 3 Aug 2018 15:12:49 +0000 (17:12 +0200)]
Reduce use of deprecated methods

We do not really need the old semantics in a lot of sites, so
migrate them over to replacement methods.

Change-Id: Ib60e395dd9da82934d1591555c9ad46c05dac0e7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoAllow DataObjectModification to address grouping nodes 06/74606/4
Robert Varga [Sat, 28 Jul 2018 08:50:19 +0000 (10:50 +0200)]
Allow DataObjectModification to address grouping nodes

This adds the API and implementation required to address child
nodes introduced in cases by the use of a grouping.

JIRA: MDSAL-342
Change-Id: I70871dcaa3441fbef81dfb15bfd965d133aa0894
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoChange log to warn in LocalThreePhaseCommitCohort 01/74701/1
Tom Pantelis [Tue, 31 Jul 2018 18:22:14 +0000 (14:22 -0400)]
Change log to warn in LocalThreePhaseCommitCohort

Change-Id: Ieeb60989eb3665cad9cc4dc4d25c7ab7e0983437
JIRA:CONTROLLER-1855
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoAllow filtering transaction traces with a minimum 52/74652/3
Michael Vorburger [Mon, 30 Jul 2018 13:25:05 +0000 (15:25 +0200)]
Allow filtering transaction traces with a minimum

This adds a "minimum open number of transactions" option to
trace:transactions and print out a clear final message indicating
whether any leaks were found or not.

JIRA: CONTROLLER-1765
Change-Id: Ie9f4ee263ed7defcb84c8b82dc8ec6f1f81ba07d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Signed-off-by: Stephen Kitt <skitt@redhat.com>
15 months agosimplify a statement in NormalizedNodeInputStreamReader 76/74476/2
Michael Vorburger [Wed, 25 Jul 2018 21:47:46 +0000 (23:47 +0200)]
simplify a statement in NormalizedNodeInputStreamReader

and fix a JavaDoc warning in NormalizedNodeOutputStreamWriter

Change-Id: I471dc3d4c8d1327fa8adaca89b8ca1d46036929d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
15 months agoAdd Action(Provider)Adapters 10/74610/2
Robert Varga [Sat, 28 Jul 2018 11:13:52 +0000 (13:13 +0200)]
Add Action(Provider)Adapters

This adds adapters based on MD-SAL to sal-binding-broker, allowing
actions to be invoked.

Change-Id: I7efa0ef81c239d12e7d61097daa6a36391e7b89b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoAdd (DOM)Action(Provider) bridges 09/74609/3
Robert Varga [Sat, 28 Jul 2018 10:56:34 +0000 (12:56 +0200)]
Add (DOM)Action(Provider) bridges

We need to add bridge interfaces which allow NETCONF to expose
DOMActionService through Controller's mountpoints. Also add binding
equivalents, so users of Controller Binding have access to them.

JIRA: MDSAL-283
Change-Id: Ie6b0819345928637df29c5a15bf1634f8932de19
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoImprove ProgressTracker class javadoc 80/74580/3
Vratko Polak [Mon, 26 Jun 2017 16:58:07 +0000 (18:58 +0200)]
Improve ProgressTracker class javadoc

Previously it was mentioning only "frontend" and "backend".
Now it also mentions "users", to distinguish opening and closing tasks
(which happens on user-frontend boundary) from reconnect scenarios
(which happen on frontend-backend boundary).

Change-Id: I2e1739ac40d9e1b0661d9de42099fd97e816585c
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
15 months agoConvert sal-remoterpc to mdsal APIs 97/74597/1
Tom Pantelis [Fri, 27 Jul 2018 21:12:04 +0000 (17:12 -0400)]
Convert sal-remoterpc to mdsal APIs

Change-Id: I161be27bce6f5f453e7324a737c4057493d80fa2
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoBump yangtools to 2.0.9 73/74573/2
Robert Varga [Fri, 27 Jul 2018 12:09:03 +0000 (14:09 +0200)]
Bump yangtools to 2.0.9

This patch bumps yangtools to latest release.

Change-Id: If5342423112cd39f82232bf2379002e8cc08daed
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoDeprecate controller APIs 82/74582/2
Tom Pantelis [Fri, 27 Jul 2018 14:23:15 +0000 (10:23 -0400)]
Deprecate controller APIs

Deprecated the high-level interfaces, eg DataBroker.

Change-Id: I754e3a5059c05d70616f3bd4ff3a00a05115fead
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoAdjust to mdsal CursorAware API changes 79/74479/3
Tom Pantelis [Wed, 25 Jul 2018 22:26:30 +0000 (18:26 -0400)]
Adjust to mdsal CursorAware API changes

Corresponding mdsal patch: https://git.opendaylight.org/gerrit/#/c/74478/

Change-Id: I82041945b1f15c492f77d65c065068a6fab3878a
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoBump to odlparent 3.1.3 93/74193/5
Stephen Kitt [Wed, 18 Jul 2018 16:06:37 +0000 (18:06 +0200)]
Bump to odlparent 3.1.3

Change-Id: I61d53cb19006ea11fd3917e6e395ce0870b7367e
Signed-off-by: Stephen Kitt <skitt@redhat.com>
15 months agoAdjust to DOMDataTreeCommitCohort API change 71/74471/1
Tom Pantelis [Wed, 25 Jul 2018 17:17:54 +0000 (13:17 -0400)]
Adjust to DOMDataTreeCommitCohort API change

Use the new canCommit method that returns FluentFuture
instead of the deprecated CheckedFuture.

Change-Id: I110722a96c4933d32d8ff4b3237a90feddf21747
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoSimplify code using Java 8 features 44/74344/4
Stephen Kitt [Mon, 23 Jul 2018 15:31:33 +0000 (17:31 +0200)]
Simplify code using Java 8 features

* List::sort
* lambda expressions
* Comparator::comparing...
* Collection::removeIf
* method references
* Map::computeIfAbsent
* Map::merge

Change-Id: I1793591c071c7ce5465939afe8b4846b769b5953
Signed-off-by: Stephen Kitt <skitt@redhat.com>
15 months agoRemove unused exceptions 39/74339/5
Stephen Kitt [Mon, 23 Jul 2018 14:45:38 +0000 (16:45 +0200)]
Remove unused exceptions

This drops exception declarations which are never used.

Change-Id: Icc8938b9c3b437a0d5961ec1b481fd06c52d47f2
Signed-off-by: Stephen Kitt <skitt@redhat.com>
15 months agoAdjust to mdsal invokeRpc API change 66/74366/5
Tom Pantelis [Tue, 24 Jul 2018 00:07:26 +0000 (20:07 -0400)]
Adjust to mdsal invokeRpc API change

mdsal patch: https://git.opendaylight.org/gerrit/#/c/74365/

Change-Id: Ie14d9d582f5e6f141b852248f2b7cc8dca1b97b3
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoDrop unnecessary property reference 07/74407/3
Stephen Kitt [Tue, 24 Jul 2018 15:32:40 +0000 (17:32 +0200)]
Drop unnecessary property reference

maven-surefire-plugin is specified by odlparent, we don’t need to
re-specify the version here.

Change-Id: I94550466303a5839b68cd6422d742383e29d3b64
Signed-off-by: Stephen Kitt <skitt@redhat.com>
15 months agoUse moved BindingReflections 89/74389/1
Robert Varga [Tue, 24 Jul 2018 11:18:17 +0000 (13:18 +0200)]
Use moved BindingReflections

BindingReflections are being evacuated from yang-binding, use them
from their new location.

Change-Id: Ib14971102980688227f1f761c17a22362d4e7e3c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSwitch to binding-dom-adapter's NotificationListenerInvoker 33/74333/2
Robert Varga [Mon, 23 Jul 2018 12:18:33 +0000 (14:18 +0200)]
Switch to binding-dom-adapter's NotificationListenerInvoker

NotificationListenerInvoker should not be in yang-binding, consume it
from the adapter instead.

Change-Id: I30f533342e7e27a26af583a15d4baec73580f2ef
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoSwitch to binding-dom-adapter's RpcServiceInvoker 30/74330/2
Robert Varga [Mon, 23 Jul 2018 10:38:28 +0000 (12:38 +0200)]
Switch to binding-dom-adapter's RpcServiceInvoker

RpcServiceInvoker should not be in yang-binding, consume it from
the adapter instead.

Change-Id: I79b3d282b3c86ef3e49645c8782bef3fa29f9722
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoFix DOMRpcRouter breakage 12/74312/1
Tom Pantelis [Sun, 22 Jul 2018 15:18:26 +0000 (11:18 -0400)]
Fix DOMRpcRouter breakage

https://git.opendaylight.org/gerrit/#/c/74209/ broke the DOMRpcRouter
for UTs that use the empty constructor. The mdsal DOMRpcRouter no longer
implements DOMRpcProviderService directly so the SchemaContext was not
getting set via onGlobalContextUpdated.

Change-Id: Ic9381742f43b05264724eb80eef41201a1285c2a
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoFix intermittent testFlipMemberVotingStates failure 99/74299/1
Tom Pantelis [Sat, 21 Jul 2018 03:26:47 +0000 (23:26 -0400)]
Fix intermittent testFlipMemberVotingStates failure

Failure was see in auto-release:

ClusterAdminRpcServiceTest.testFlipMemberVotingStates:976->lambda$testFlipMemberVotingStates$8:978 Expected leader member-1. Actual: member-1-shard-cars-oper_testFlipMemberVotingStates

The test output showed it timed out trying to transfer leadership to member-3. The
timeout deadline is the election timeout interval which is the
heartbeatInterval * election-timeout-factor which were set to 300 and 1.
It seems 300ms is a bit too low for comfort so I changed it to 1000ms (100 * 10);

Change-Id: I1e3c79de960dcced8af71fecdf1ab8bdba433448
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoFix DOMRpcRouter breakage from mdsal 69/74269/2
Robert Varga [Fri, 20 Jul 2018 08:15:00 +0000 (10:15 +0200)]
Fix DOMRpcRouter breakage from mdsal

MD-SAL's DOMRpcRouter no longer directly implements services,
acquire them from the accessor methods.

Change-Id: Icf337e8b8183726c87bf38d3252dccb0b911ba17
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoConvert toaster to mdsal APIs 57/74257/2
Tom Pantelis [Thu, 19 Jul 2018 20:44:30 +0000 (16:44 -0400)]
Convert toaster to mdsal APIs

Change-Id: I5cbbd42bd3435686346a7945881dd0d31f13a796
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoModels should depend on odl-mdsal-binding-base 31/74231/1
Robert Varga [Thu, 19 Jul 2018 12:36:33 +0000 (14:36 +0200)]
Models should depend on odl-mdsal-binding-base

Models do not need runtime services, hence depend on base only,
which is already being pulled in by odl-mdsal-model-rfc6991.

Change-Id: I1e2a7421008bfc6ec70d45459c5486c6f2815e10
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoDo not pull in models into odl-mdsal-broker-local 81/74081/4
Robert Varga [Mon, 16 Jul 2018 18:28:05 +0000 (20:28 +0200)]
Do not pull in models into odl-mdsal-broker-local

Broker should be able to function without additional models as it
has no specific dependencies. Remove dependency on odl-mdsal-models
to allow it to load without as few models as possible.

JIRA: MDSAL-363
Change-Id: Ib230c87cbd832e16380be3b989185ac87336f30b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoAdjust to mdsal DOM read/exists FluentFuture change 28/74128/8
Tom Pantelis [Tue, 17 Jul 2018 15:05:41 +0000 (11:05 -0400)]
Adjust to mdsal DOM read/exists FluentFuture change

This patch needs to be coordinated with
https://git.opendaylight.org/gerrit/#/c/74127/.

Change-Id: Iceeff9f9f75ca40ebc31bd839b5e6a5c8639aa4c
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoUpdate odl-message-bus-collector dependencies 80/74080/2
Robert Varga [Mon, 16 Jul 2018 18:26:35 +0000 (20:26 +0200)]
Update odl-message-bus-collector dependencies

odl-message-bus-collector requires draft-clemm ietf-topology, which
it is currently pulling odl-mdsal-broker-local transitively.

Explicitly depend on the model, so odl-mdsal-broker-local can load
without additional models.

Change-Id: Ib0eb898fe3d801a937d389886ff924a0895b48c8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoLower odl-clustering-test-app 79/74079/2
Robert Varga [Mon, 16 Jul 2018 18:19:09 +0000 (20:19 +0200)]
Lower odl-clustering-test-app

This feature requires only RFC6991 ietf-{inet,yang}-types, lower
its dependencies accordingly.

Change-Id: Ic11fe663ca33297b652d160fcb8635b473c0b591
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoLower odl-controller-model-topology dependencies 78/74078/2
Robert Varga [Mon, 16 Jul 2018 18:13:52 +0000 (20:13 +0200)]
Lower odl-controller-model-topology dependencies

This feature requires only draft-clemm topology model and
odl-mdsal-model-inventory, lower feature dependencies accordingly.

Change-Id: I66c32cac8f8dbc27c59ddf91c75d807242d49fe9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoLower odl-mdsal-model-inventory dependencies 77/74077/2
Robert Varga [Mon, 16 Jul 2018 18:09:06 +0000 (20:09 +0200)]
Lower odl-mdsal-model-inventory dependencies

This model requires only RFC6991 ietf-inet-types, depend on the correct
modular mdsal feature.

Change-Id: I466a47c46c770ee7283ad720ae5b68e0852024f6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoLower odl-benchmark-api dependencies 76/74076/2
Robert Varga [Mon, 16 Jul 2018 18:04:23 +0000 (20:04 +0200)]
Lower odl-benchmark-api dependencies

We really do not need all the models, only yang-ext, hence pull
only odl-mdsal-binding-base.

Change-Id: Id2429038fbe5cdf2e3c82270e4d66211f72d0409
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoRestore binding RPC shortcut 35/74035/5
Tom Pantelis [Sat, 14 Jul 2018 01:42:46 +0000 (21:42 -0400)]
Restore binding RPC shortcut

The binding -> binding RPC serialization shortcut was broken by
recent changes so restore it. The LazyDOMRpcResultFuture from
the binding adapter is preserved by DOMRpcRouter via intermediate
DOMRpcResult adapters.

Change-Id: I98942471f4e8430d0043f5c09cb8a38ce2a5d7b9
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
15 months agoRemove sal.core.api.mount.MountProvisionListener 94/73894/6
Robert Varga [Tue, 10 Jul 2018 19:04:45 +0000 (21:04 +0200)]
Remove sal.core.api.mount.MountProvisionListener

There are no in-tree users, remove this interface.

Change-Id: I88c1b370db95db1e21bcd14bc21dbadd1f782852
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 months agoUse Binding{Data,RpcFuture}Aware 25/73825/6
Robert Varga [Mon, 9 Jul 2018 02:33:16 +0000 (04:33 +0200)]
Use Binding{Data,RpcFuture}Aware

In order to bridge mdsal and controller binding interfaces, we need
to have a common way of accessing the binding future. Companion MDSAL
patch added Binding{Data,RpcFuture}Aware interfaces, which exposes
just that, and his patch makes use of it in the controller.

JIRA: SFC-222
Change-Id: If2407f4950de1b34e809b275cc2afc4cfefc8a10
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoEliminate getSupportedExtensions() 69/73969/3
Robert Varga [Thu, 12 Jul 2018 08:13:58 +0000 (10:13 +0200)]
Eliminate getSupportedExtensions()

blueprint does not like the default method, run a straight-up
removal.

Change-Id: I2bfbc5eb2587d6cd790cc8153c357f9251ac2485
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoMove LegacyDOMDataBrokerAdapter to sal-core-compat 62/73962/2
Tom Pantelis [Thu, 12 Jul 2018 01:43:34 +0000 (21:43 -0400)]
Move LegacyDOMDataBrokerAdapter to sal-core-compat

Change-Id: I4e75bb4eda3418651d33c3d8a3852715dceeeee6
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoAdd DOMExtensibleService.getExtensions() implementations 37/73937/1
Robert Varga [Wed, 11 Jul 2018 13:22:08 +0000 (15:22 +0200)]
Add DOMExtensibleService.getExtensions() implementations

This adds implementations so we can switchover the base interface
and require getExtensions() to be implemented. Also take advantage
of the improvement introduced in getExtensions() return type.

Change-Id: I67f05782d311b895088e248119e77832a8892724
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoUse ClassToInstanceMap for extensions 35/73935/1
Robert Varga [Wed, 11 Jul 2018 13:01:25 +0000 (15:01 +0200)]
Use ClassToInstanceMap for extensions

Using a plain map was an API design mistake, make sure implementations
are serving a ClassToInstanceMap before embarking on migration.

Change-Id: I2609d08d9df9f0da8d4f23fdeb5007979db80d72
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoDeprecate sal.core.api.mount.MountProvisionListener 91/73891/4
Robert Varga [Tue, 10 Jul 2018 17:59:03 +0000 (19:59 +0200)]
Deprecate sal.core.api.mount.MountProvisionListener

This interface has an exact copy in DOMMountPointListener, deprecate
it and adjust implementations to not require it.

Change-Id: If19a3a34094a9dbbc25665967074a32e562a7dca
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoProxy DOMMountPointServiceImpl to MD-SAL API 58/73858/3
Tom Pantelis [Mon, 9 Jul 2018 17:07:56 +0000 (13:07 -0400)]
Proxy DOMMountPointServiceImpl to MD-SAL API

Change-Id: Ic16ce1a850340482688c492045101af45ca7e521
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoRemove sal.core.api.BrokerService 90/73890/1
Robert Varga [Tue, 10 Jul 2018 17:41:28 +0000 (19:41 +0200)]
Remove sal.core.api.BrokerService

This interface has been long deprecated and it is not really used
anywhere. Remove it.

Change-Id: I8dcee98f19d80df4532891f73776dc4c268ef025
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove sal.core.api.RpcRoutingContext 89/73889/1
Robert Varga [Tue, 10 Jul 2018 17:39:35 +0000 (19:39 +0200)]
Remove sal.core.api.RpcRoutingContext

This class is not used anywhere, remove it.

Change-Id: Ibaad5ad39fe1726016c87b4d1c01660b1f301613
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoProxy over MDSAL-provided IMDS 39/71439/5
Robert Varga [Thu, 26 Apr 2018 16:56:57 +0000 (18:56 +0200)]
Proxy over MDSAL-provided IMDS

This patch migrates Controller IMDS to be just a proxy over the
MDSAL's IMDS implementation.

Change-Id: I8e54ec344d010a91e06ef2f1fb63586de3b26949
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove sal.core.api.model 69/73869/5
Robert Varga [Tue, 10 Jul 2018 07:48:19 +0000 (09:48 +0200)]
Remove sal.core.api.model

This removes deprecated and unused sal.core.api.model package
along with its only implementation, migrating final stragglers
to DOMSchemaService.

Change-Id: Id355ffd96a5aaa0ffa48e018bfadea596ec58ac8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove deprecated controller.sal.core.api interfaces 67/73867/4
Robert Varga [Tue, 10 Jul 2018 07:36:14 +0000 (09:36 +0200)]
Remove deprecated controller.sal.core.api interfaces

Broker, Consumer, Provider and related classes have been deprecated
for a long time and no longer have any in-tree users. Remove them.

Change-Id: I82aab628b7612e636d2c18427e5e71f93c11083f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove use of CheckedFuture in clustering-it-provider 71/73871/2
Robert Varga [Tue, 10 Jul 2018 08:13:00 +0000 (10:13 +0200)]
Remove use of CheckedFuture in clustering-it-provider

We do not need checkedGet(), hence we can get by with a
ListenableFuture only.

Change-Id: Ie8cab5293a13041a90d275c2b67a90d06beaccad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoEliminate synthetic access to invoke0() 23/73823/1
Robert Varga [Mon, 9 Jul 2018 02:10:21 +0000 (04:10 +0200)]
Eliminate synthetic access to invoke0()

This method is invoked from InvocationStrategy, hence it being
private generates a synthetic accessor method. Change method
visibility to package-private, eliminating this inefficiency.

Change-Id: I74ee9f8c729ba8d0892316fc405a0d99830b5f04
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove netconf-node-inventory 55/73655/2
Robert Varga [Mon, 2 Jul 2018 15:10:38 +0000 (17:10 +0200)]
Remove netconf-node-inventory

This is a netconf-specific augmentation, remove it from controller.

Change-Id: I34ddcb6bdf70378d85cf8b29e5851b87623c9572
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoCleanup model-{inventory,topology} build 53/73653/3
Robert Varga [Mon, 2 Jul 2018 15:00:10 +0000 (17:00 +0200)]
Cleanup model-{inventory,topology} build

This cleans up the use of superfluous parent-based configuration.

Change-Id: I9e1432dd745f2c77396ca0ee3f0964928211bb15
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoDocument debug-transactions 24/62224/7
Robert Varga [Wed, 23 Aug 2017 18:53:45 +0000 (20:53 +0200)]
Document debug-transactions

This was left undocumented for some reason.

Change-Id: I49a7709fe7536009e5cbb9c7724e495952f9217a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove unused version 21/73621/1
Luis Gomez [Sat, 30 Jun 2018 02:28:27 +0000 (19:28 -0700)]
Remove unused version

Change-Id: Ia250eac4cc7ddb57b6ffc6438fb83627008922aa
Signed-off-by: Luis Gomez <ecelgp@gmail.com>
16 months agoAdd transaction level traces 58/72658/2
Stephen Kitt [Mon, 4 Jun 2018 13:31:15 +0000 (15:31 +0200)]
Add transaction level traces

This adds traces giving information on the locations from which
transactions are created and committed. It also traces the transaction
identifier, with the intent of making it possible to match up
transaction traces with error messages.

Change-Id: Id82a79e8e430665f6fb5433ed7bab858044eacbe
Signed-off-by: Stephen Kitt <skitt@redhat.com>
16 months agoBump to yangtools 2.0.7 50/73450/5
Stephen Kitt [Tue, 26 Jun 2018 15:58:15 +0000 (17:58 +0200)]
Bump to yangtools 2.0.7

Change-Id: I85e5eea8824f2f35170abf59ac7aeef4759ec4f5
Signed-off-by: Stephen Kitt <skitt@redhat.com>
16 months agoUse features with ranges in odl-config-netty 76/73576/1
Stephen Kitt [Thu, 28 Jun 2018 17:40:46 +0000 (19:40 +0200)]
Use features with ranges in odl-config-netty

This adds a range dependency for odl-netty-4 and odl-guava-23.

Change-Id: I9ac0758e979e8253d56609ab5efbfb990ae04f63
Signed-off-by: Stephen Kitt <skitt@redhat.com>
16 months agoTrace the originating generation in RGE 29/73529/2
Stephen Kitt [Thu, 28 Jun 2018 11:48:21 +0000 (13:48 +0200)]
Trace the originating generation in RGE

This adds the originating generation in RetiredGenerationException’s
message.

Change-Id: Ie4cb11a0cc151176d765fc6d200cd7dd295798e1
Signed-off-by: Stephen Kitt <skitt@redhat.com>
16 months agoBump odlparent to 3.1.2 88/72488/7
Stephen Kitt [Wed, 30 May 2018 13:44:06 +0000 (15:44 +0200)]
Bump odlparent to 3.1.2

Change-Id: I6a155f10ba62ccd4aea5309e5106948d34d099f0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
16 months agoprovide missing module's name via IllegalArgumentException 42/73442/2
Michael Vorburger [Tue, 26 Jun 2018 11:09:37 +0000 (13:09 +0200)]
provide missing module's name via IllegalArgumentException

by using orElseThrow() instead of get() on Optional<Module> in RpcUtil

to help understand MDSAL-354 problem

JIRA: MDSAL-354
Change-Id: If4d4f663b7cb63acea38acda73686176d27ff56f
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
16 months agoConvert blueprint extensions to MDSAL APIs 82/73382/3
Tom Pantelis [Sat, 23 Jun 2018 20:00:09 +0000 (16:00 -0400)]
Convert blueprint extensions to MDSAL APIs

Change-Id: Iabbdb2654128f0f473abba224b8c51745a6d2092
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoProxy DOMNotificationRouter to the mdsal implementation 81/73381/2
Tom Pantelis [Sat, 23 Jun 2018 19:33:37 +0000 (15:33 -0400)]
Proxy DOMNotificationRouter to the mdsal implementation

Proxying to the dom mdsal notification service(s) will allow
an easier migration path where both can co-exist.

Change-Id: I514c319d457bce3261e6f9b36cb189828800fe97
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoProxy DOMRpcRouter to the mdsal implementation 76/73376/3
Tom Pantelis [Sat, 23 Jun 2018 03:30:17 +0000 (23:30 -0400)]
Proxy DOMRpcRouter to the mdsal implementation

Proxying to the dom mdsal RPC service(s) will allow
an easier migration path where both can co-exist.

Change-Id: Ib31efc2985b24e83106e6a25d2c94c9c29850eb2
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoMake AbstractDataBrokerTestCustomizer#getDomBroker public 89/73389/1
Tom Pantelis [Mon, 25 Jun 2018 03:12:08 +0000 (23:12 -0400)]
Make AbstractDataBrokerTestCustomizer#getDomBroker public

The DOMDataBroker is exposed via createDOMDataBroker however
this creates a new instance so users don't actually get the
DOMDataBroker instance that is backing the DataBroker.
Therefore expose getDomBroker publicly.

Change-Id: Id4b53935e4c17e4a9cd4538d669a9e05d97892af
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoRemove CSS code 84/73284/3
Tom Pantelis [Wed, 20 Jun 2018 22:42:09 +0000 (18:42 -0400)]
Remove CSS code

JIRA: TSC-111
Change-Id: Ib74c1d3dfc029c2472b8834ae55ce05c8231d225
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoRemove yang-test 33/73333/2
Tom Pantelis [Fri, 22 Jun 2018 00:01:40 +0000 (20:01 -0400)]
Remove yang-test

This needs to be removed before the rest of CSS as it
uses yang-test-plugin which is hard-coded in auto-realease.
So need to remove yang-test first from controller then
remove yang-test-plugin from auto-realease.

Change-Id: I399de2684e93b267ec5fcdd5365b31384e5dded0
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoRefactor DataBroker adapter wiring 51/73151/4
Robert Varga [Mon, 18 Jun 2018 18:43:39 +0000 (20:43 +0200)]
Refactor DataBroker adapter wiring

We really want to expose a factory, which is able to create adapters
based on a codec.

Create AdapterFactory to serve as such a class and use it as
intermediary for instantiation. This removes reference to binding.impl
classes.

Change-Id: I1cf6867121af1703849db642512776d8ef790ae0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoFix shard deadlock in 3 nodes 74/72874/11
Tom Pantelis [Tue, 12 Jun 2018 11:54:30 +0000 (07:54 -0400)]
Fix shard deadlock in 3 nodes

JIRA: CONTROLLER-1836
Change-Id: I10a9cb43bcdb35f66abebb054f37c05e7fda54e7
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agomdsal-trace does not need a ClassLoadingStrategy 50/73150/1
Robert Varga [Mon, 18 Jun 2018 18:19:32 +0000 (20:19 +0200)]
mdsal-trace does not need a ClassLoadingStrategy

This blueprint does not really use classLoadingStrategy,
remove the reference.

Change-Id: Id34c3c97fed3150357c95956c6b03a398d34547e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 months agoRemove CSS features 03/73003/6
Tom Pantelis [Thu, 14 Jun 2018 14:04:49 +0000 (10:04 -0400)]
Remove CSS features

Change-Id: I963daed0f5cc379edeaa98054890dcde0b75cf54
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoFix pax exam issue 69/73069/2
Tom Pantelis [Sun, 17 Jun 2018 15:02:08 +0000 (11:02 -0400)]
Fix pax exam issue

auto-release is all of a sudden seeing these failure for the
ToasterTest:

2018-06-17T01:54:27,557 | WARN  | pool-2-thread-1  | AetherBasedResolver              | 2 - org.ops4j.pax.url.mvn - 2.5.4 | Error resolving artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.junit:jar:4.12.0.1: [Could not find artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.junit:jar:4.12.0.1 in defaultlocal (file:/tmp/r/), Could not find artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.junit:jar:4.12.0.1 in system.repository (file:/w/workspace/autorelease-release-oxygen/controller/opendaylight/md-sal/samples/toaster-it/target/exam/f302a2c9-2cc5-40dc-8c2b-02b85c0fe216/system/)]

2018-06-17T01:54:27,557 | WARN  | pool-2-thread-3  | AetherBasedResolver              | 2 - org.ops4j.pax.url.mvn - 2.5.4 | Error resolving artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.hamcrest.core:jar:1.3.0.1: [Could not find artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.hamcrest.core:jar:1.3.0.1 in defaultlocal (file:/tmp/r/), Could not find artifact org.ops4j.pax.tipi:org.ops4j.pax.tipi.hamcrest.core:jar:1.3.0.1 in system.repository (file:/w/workspace/autorelease-release-oxygen/controller/opendaylight/md-sal/samples/toaster-it/target/exam/f302a2c9-2cc5-40dc-8c2b-02b85c0fe216/system/)]

I was able to repro locally by removing the
org.ops4j.pax.tipi.hamcrest.junit and org.ops4j.pax.tipi.hamcrest.core artifacts
from ny local .m2 repo. Adding the dependencies to the mdsal-it-base pom
causes them to be downloaded and fixes the issue. However it's a mystery why
this issue all of a sudden popped up and why it seems we have to explicitly
reference those depnedencies.

Change-Id: Ic614f243d0a79aa298961a4a340d4fa3fb483843
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
16 months agoUse MD-SAL BindingToNormalizedNodeCodec for most operations 80/72880/6
Robert Varga [Tue, 12 Jun 2018 14:47:57 +0000 (16:47 +0200)]
Use MD-SAL BindingToNormalizedNodeCodec for most operations

This subclasses BindingToNormalizedNodeCodec from MD-SAL, overriding
the operations we need to have overridden. Overall this class is to
be treated as deprecated.

Change-Id: I96f5085ee0e16191855cdc4ca1ed04de6d76f6fb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
17 months agoUse (Identifiable)Item.of() 87/72887/2
Robert Varga [Tue, 12 Jun 2018 15:25:33 +0000 (17:25 +0200)]
Use (Identifiable)Item.of()

Constructors have been deprecated, use static factory methods
instead.

Change-Id: Ib456b7f4a0788d4074f73168b8b8cb73b8e0d68b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
17 months agoRemove CSS modules 74/72674/8
Tom Pantelis [Mon, 4 Jun 2018 21:46:56 +0000 (17:46 -0400)]
Remove CSS modules

The CSS features are still installed until we can work
out the ModuleInfoBackedContext/ClassLoaderStrategy situation
that is currently provided by the ConfigManagerActivator.

Change-Id: Id3b2cc287d17532482a2dd893c41e2dcd8d29ff0
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
17 months agofix FollowerInfo @ConstructorProperties for valid ShardStatsMXBean 95/72795/1
Michael Vorburger [Fri, 8 Jun 2018 13:41:01 +0000 (15:41 +0200)]
fix FollowerInfo @ConstructorProperties for valid ShardStatsMXBean

JIRA: CONTROLLER-1835
Change-Id: I563105e8af79c0687cbb99444b34b540e80cbaa5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
17 months agoexport two additional packages containing JMX *M[X]Bean 91/72791/2
Michael Vorburger [Fri, 8 Jun 2018 11:51:19 +0000 (13:51 +0200)]
export two additional packages containing JMX *M[X]Bean

required to access some information this exposes via strong
instead "stringly" typing in genius.DatastoreServiceStatusProvider; see
Ic8df4299b46a4dd21310619e295552404266fb80.

JIRA: GENIUS-138
Change-Id: Ie0cb62db5ee2dd98fa1a0e55791c9551089e6aac
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
17 months agoBUG-8858: remove sleeps from test driver 18/72718/2
Robert Varga [Tue, 22 Aug 2017 08:51:58 +0000 (10:51 +0200)]
BUG-8858: remove sleeps from test driver

This is a follow-up patch to speed up test driver, properly
chasing leader, without any sleeps incurred.

Change-Id: I55ed680ad3f45813b3ee3d8b948046c4ae34e273
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 0cb983d35266801f8c8a0f9dc106bdc3f812e599)

17 months agofix tracing ping-pong DataBroker wiring bug in trace blueprint XML 56/72656/5
Michael Vorburger [Mon, 4 Jun 2018 13:13:48 +0000 (15:13 +0200)]
fix tracing ping-pong DataBroker wiring bug in trace blueprint XML

JIRA: CONTROLLER-1834
Change-Id: I4fda43c578ee55218acc40be1fbf4427c81c73c3
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
17 months agoBump remaining yangtools 2.0.3 references to 2.0.5 99/72699/1
Tom Pantelis [Tue, 5 Jun 2018 18:22:14 +0000 (14:22 -0400)]
Bump remaining yangtools 2.0.3 references to 2.0.5

Change-Id: I284628f088aa9472eb064984d1b1cb65d96d7566
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
17 months agoBump yangtools to 2.0.5 58/72358/7
Robert Varga [Mon, 28 May 2018 10:14:23 +0000 (12:14 +0200)]
Bump yangtools to 2.0.5

This patch bumps the version pulled in to 2.0.5, adopting the fixes
it contains.

Change-Id: I275b26cd9fbb299050cf1bae8bc4db26b7a0b335
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
17 months agoFix shard commit deadlock 50/72650/3
Tom Pantelis [Mon, 4 Jun 2018 12:20:26 +0000 (08:20 -0400)]
Fix shard commit deadlock

When performing coordinated commits we need to ensure transactions
hit all shards in the same order as otherwise we could end up
with an ABBA deadlock -- which gets resolved through commits timing
out, but nevertheless it imposes a dealy of up to 30 seconds.

Make sure we always send entries to shards in the same order and
also synchronize all TransactionProxy instances so that transactions
have a total order.

JIRA: CONTROLLER-1833
Change-Id: Ia3076efde1c7cb5f115305593776ffa7422e7a09
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
17 months agoremove un-used schemaService reference in trace blueprint XML 52/72652/2
Michael Vorburger [Mon, 4 Jun 2018 12:57:15 +0000 (14:57 +0200)]
remove un-used schemaService reference in trace blueprint XML

Change-Id: I35711f70bb978d76389d1c2d3f19f6b1418f6ffe
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
17 months agoFixup Augmentable and Identifiable methods changing 49/71249/12
Robert Varga [Tue, 24 Apr 2018 10:23:17 +0000 (12:23 +0200)]
Fixup Augmentable and Identifiable methods changing

This is a fixup of the change in binding codegen, adjusting:
- getKey() -> key()
- setKey() -> withKey()
- getAugmentation() -> augmentation()

As a drive-by cleanup, some more references to CheckedFuture
are gone.

Change-Id: Ifa573f93d1776ab2db98524df4da63259e811767
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
17 months agoAdd MDSAL TRACE to Artifacts 49/72649/2
Claudio D. Gasparini [Mon, 4 Jun 2018 11:40:27 +0000 (13:40 +0200)]
Add MDSAL TRACE to Artifacts

Change-Id: I6ddc0557b4a99d7423d175b3397a60f09f73de7c
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>

©2013 OpenDaylight, A Linux Foundation Collaborative Project. All Rights Reserved.
OpenDaylight is a registered trademark of The OpenDaylight Project, Inc.
Linux Foundation and OpenDaylight are registered trademarks of the Linux Foundation.
Linux is a registered trademark of Linus Torvalds.