controller.git
8 years agoMake stable/lithium the default branch 95/20195/4
Moiz Raja [Tue, 12 May 2015 23:47:09 +0000 (16:47 -0700)]
Make stable/lithium the default branch

Note : this should not be cherry picked to master

Change-Id: Idda3ce01773772c67e10b0d5c898d88c1e644834
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoBUG 3125 : Set Rate Limit just before acquiring a permit to avoid contention 63/20063/11
Moiz Raja [Mon, 11 May 2015 22:43:43 +0000 (15:43 -0700)]
BUG 3125 : Set Rate Limit just before acquiring a permit to avoid contention

During perfomance test performance is hampered by the rate limiting code. To
avoid the penalty of possible contention when setting the rate limit in a
separate thread from the one acquiring a rate permit this patch calculates the
new rate limit and sets it on the rate limiter on the same thread which
acquires the rate limit.

Moving the setting of the rate limit into the same thread which does the
acquiring of the permit did not have any discernable effect on performance so
I continued playing around and found that simply calculating the rate limit
can cause issues with performance. This happens because the Coda Hale metrics
Timer that we use to help calculate the rate limit is also synchronized
internally with a read write lock and that causes contention.

To fix the situation with the rate limit calculation I do not calculate the rate
limit everytime someone tries to acquire a permit but only after acquiring about 1/2 of
the last calculated rate limit.

To make it easier to understand/test the rate limiting code I have slightly refactored
the code. All the transaction rate limiting code is now in TransactionRateLimiter.

After making these changes I was able to get the same performance in the dsBenchmark
test as you would get from not using a rate limiter at all.

Change-Id: Ia7639ac3acdc08140fbf5eef03120f857dc44994
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoCDS: make sure to assert non-null Exception in test 47/19447/10
Robert Varga [Fri, 1 May 2015 19:57:32 +0000 (21:57 +0200)]
CDS: make sure to assert non-null Exception in test

The exception can be potentially null, make sure we fail the test if it
is.

Change-Id: I6b987e2962abfaa8afa570791e3500fa4916e5c2
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agohotfix Bug 3226 - unable to configure flows 22/20522/2
Vaclav Demcak [Fri, 15 May 2015 14:24:37 +0000 (16:24 +0200)]
hotfix Bug 3226 - unable to configure flows

* NormalizedNodeContainer has NodeIdentifierWithPredicates which
has to contain the map of all node keys
* (new codecs [xml,json] don't populate Attributes)

Change-Id: I5befc6d8ad5a63a04c11ad9102610be9508df672
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
8 years agoBug 3020: Add version to AppendEntries and AppendEntriesReply 65/19165/4
Tom Pantelis [Fri, 24 Apr 2015 15:17:27 +0000 (11:17 -0400)]
Bug 3020: Add version to AppendEntries and AppendEntriesReply

To handle backwards compatibility, a leader needs to know the version of
its followers wrt to the derived RaftActor's payload data. This will
enable
the derived RaftActor to translate its payload data to an older version.
So I added a version field to AppendEntriesReply which the leader stores
in the FollowerLogInformation.

In addition, a follower needs to know the version of its leader so we
can handle backwards compatibility wrt to transactions since we no
longer send the CreateTransaction message to the leader (currently only
for write-only). This patch adds a version field to AppendEntries - a
subsequent patch will utilize it.

Change-Id: I41632024a270206153e7c5d363ee1c79800e4200
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoCDS: Implement front-end support for local transactions 61/20461/4
Robert Varga [Fri, 24 Apr 2015 11:33:24 +0000 (13:33 +0200)]
CDS: Implement front-end support for local transactions

Implemented support on the TransactionProxy front-end for optimizations
where the Shard is local to the controller instance. In this mode, the
Shard's DataTree obtained from the FindPrimaryShard message is used to
prepare the modifications completely on the front-end. On ready, the
DataTreeModification instance is passed to the Shard via
the ReadyLocalTransaction message. The Shard then does a direct commit,
eliding the 3PC from the front-end (it's a no-op as it is for remote
write-only txns).

TransactionContext instances are now obtained via an
AbstractTransactionContextFactory passed to TransactionProxy of which
there are 2 kinds: one for single, unchained txns and one for chained
tnxs. Each creates a different DOM transaction instance to handle
preperation of modifications. The DOM transacton is wrapped in a
LocalTransactionContext which the TransactionProxy interfaces with.

Change-Id: I0322b586f394e4b6c7793b8287ac804b41964378
Signed-off-by: Robert Varga <rovarga@cisco.com>
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoBug-2704:Clustering: Fix akka-raft TestDriver logging to run with slf4j 11/20311/3
Kamal Rameshan [Thu, 14 May 2015 00:19:07 +0000 (17:19 -0700)]
Bug-2704:Clustering: Fix akka-raft TestDriver logging to run with slf4j

Change-Id: I5634914b086d87557afb9a851c47958744301253
Signed-off-by: Kamal Rameshan <kramesha@cisco.com>
8 years agoAdd AuthHandler to stresstool 16/19816/3
Tomas Cere [Tue, 5 May 2015 09:21:18 +0000 (11:21 +0200)]
Add AuthHandler to stresstool

Stop bundling BouncyCastle into strestool uber-jar,
JCE certificate gets wiped this way and Oracle JDK refuses to use it.
Instead export them into target/lib dir and setup stresstool jar classpath to point to this directory.

Change-Id: I3c7ab9ea0f5faba2f02f4e0cfa21adda6bce2e4e
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoBug 2981 - POST mismatching IDs data vs URI possibility 81/19681/6
Vaclav Demcak [Fri, 24 Apr 2015 13:14:27 +0000 (15:14 +0200)]
Bug 2981 - POST mismatching IDs data vs URI possibility

fix forgotten validation for check IDs from data and Uri

Change-Id: I465a3550399c5d2d4fcb546b608a9b47e3d97e63
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
8 years agoBUG 3030 - reconnect netconf event source 11/20011/3
Marian Adamjak [Wed, 6 May 2015 10:46:05 +0000 (12:46 +0200)]
BUG 3030 - reconnect netconf event source
   - replay notification
   - publish notification about connection status

(cherry picked from commit 4c147b35d298b281afccb53c7fb8b83b1b96ddfc)
Change-Id: Ia6ead39a2e1a81135dcd86163fb7adb40a3d7d5c
Signed-off-by: Marian Adamjak <madamjak@cisco.com>
8 years agoBUG 3213: Add missing netconf-tcp dependency to mdsal-netconf-connector 58/20358/2
Tomas Cere [Thu, 14 May 2015 10:32:02 +0000 (12:32 +0200)]
BUG 3213: Add missing netconf-tcp dependency to mdsal-netconf-connector

Change-Id: I6d9839e24e994d28f0059c7dfbd2a9e3ab4b4c05
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoBUG 3200 : Serialize a child node even when it is UNMODIFIED 10/20310/1
Moiz Raja [Thu, 14 May 2015 00:11:39 +0000 (17:11 -0700)]
BUG 3200 : Serialize a child node even when it is UNMODIFIED

Change-Id: If1220cd2a84d770ca02bca6a5f070032188b5e21
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoIntroduce DOMNotificationRejectedException 98/20198/2
Robert Varga [Tue, 12 May 2015 23:54:29 +0000 (01:54 +0200)]
Introduce DOMNotificationRejectedException

DOMNotificationPublishService.REJECTED wraps a throwable, which may
cause problems with code which attempts to unwind it, as frameworks tend
to propagate Throwables rather than wrapping them.

Change-Id: I77d7ceeef8213425636dab92f6994fcd3f1443e9
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoFix newly-broken javadocs 97/20197/2
Robert Varga [Tue, 12 May 2015 23:54:07 +0000 (01:54 +0200)]
Fix newly-broken javadocs

Self-closing elements are not allowed.

Change-Id: I9d9c655d04c420b575e6ace51aaf2b0af931ecef
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoBUG 3156 : Recreating CDS should not fail 57/19957/6
Moiz Raja [Thu, 7 May 2015 01:43:31 +0000 (18:43 -0700)]
BUG 3156 : Recreating CDS should not fail

When CDS is recreated it can fail because we try to
create actors on a datastore that is already terminated.

To address this issue I have enhanced DistributedDataStoreFactory
as follows,

- Simplified the actor system creation code by synchronizing
  all static methods. Since these methods are anyway not used in
  any fast paths - it is a fair enough solution.
- Added another static field in DistributedDataStoreFactory to
  track the createdInstances. This is so that we can properly
  cleanup the actor system as instances of the data store are destroyed.
- The actor system is now shutdown when there are no datastrore instances.
- Removed actor system shutdown from ActorContext to ensure that we
  use the symmetric method destroyInstance

Now that we do not shutdown actor system till both the data stores
are destroyed it may so happen that we may have a situation where we are
trying to create an actor on the old actor system with an already used name
like shardmnanager-config or shardmanager-operational. To avoid this
I have added a loop when creating shardmanager which catches the thrown
exception and retries 100 times after waiting for 100 milliseconds. This
is to give some time for the actor to properly die.

Change-Id: I3c8b2b3b21a1519610bf2ed5e1af8be93f3120ce
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoBug 3161: Create new UpdateElectionTerm class 69/19969/3
Tom Pantelis [Fri, 8 May 2015 21:18:36 +0000 (17:18 -0400)]
Bug 3161: Create new UpdateElectionTerm class

Deprecated inner class RaftActor.UpdateElectionTerm and created a new
stand-alone UpdateElectionTerm class with serialVersionUID set.

Change-Id: Idf9a67656f0103e4f8e668e0812a80687423bfdd
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoBug 3161: Remove serialVersionUID to maintain backwards compatibility 67/19967/2
Tom Pantelis [Fri, 8 May 2015 20:32:41 +0000 (16:32 -0400)]
Bug 3161: Remove serialVersionUID to maintain backwards compatibility

The serialVersionUID field was added earlier in Lithium for
RaftActor.DeleteEntries and RaftActor.UpdateElectionTerm however it
breaks backwards compatibility. We need to remove serialVersionUID.

DeleteEntries has already been deprecated for a new class that has
serialVersionUID set and is not an inner class. I will do that same for
UpdateElectionTerm in another patch.

Change-Id: I8180de5865d89d3fea190e48ebeb825743af959d
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoBUG-3183: Extend notification publisher API 91/20091/8
Michal Rehak [Tue, 12 May 2015 08:36:26 +0000 (10:36 +0200)]
BUG-3183: Extend notification publisher API

 - offer methods of notificationPublishService now return ListenableFuture
 - added exception for notification rejected outcome

Change-Id: Iff17e1edd754d49e6c53f97e357c34f5eac6a8ef
Signed-off-by: Michal Rehak <mirehak@cisco.com>
8 years agoAdd missing copyright text 88/19788/3
Thanh Ha [Mon, 19 Jan 2015 02:08:29 +0000 (21:08 -0500)]
Add missing copyright text

Change-Id: Icff91333434dcdcd226327c796b8ab91ce425a8d
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
(cherry picked from commit eee7641cc93aa82b9769c6e8799163ef102ace35)

8 years agoBug 2983 - POST operation to list only accepts data for keys 70/19770/2
Jan Hajnar [Thu, 23 Apr 2015 07:15:43 +0000 (09:15 +0200)]
Bug 2983 - POST operation to list only accepts data for keys

* added catch for ResultAlreadySetException in JsonNormalizedNodeBodyReader

Change-Id: I07d8b8b63e5c2de84b0ee7ec66013d38c58c7b49
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
(cherry picked from commit ae1583bfe01bdc3f43fdb6d590ab7c6a32e0be5a)

8 years agoCustom BufferedWriter implementation without newLine() 84/19684/2
Maros Marsalek [Fri, 24 Apr 2015 09:02:45 +0000 (11:02 +0200)]
Custom BufferedWriter implementation without newLine()

This BufferedWriter does not provide newLine() method and does not read the
line.separator property via AccessController when its initialized. Whithout this
expensive call, its allocation is much faster. Used in netconf message encoder
to make the netconf serialization faster.

Change-Id: I88a65c7a82ff7c44b9ad3a3adfe7d7482a5fdc70
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoFix racecondition in AsyncSshHandlerWriter 96/19996/2
Tomas Cere [Thu, 7 May 2015 11:39:51 +0000 (13:39 +0200)]
Fix racecondition in AsyncSshHandlerWriter

Fixed racecondition between releasing of netty ByteBuff and removing the msg from pendingWrites.

Change-Id: I40eff55d9c7858534d105a242d3ec6feb9d950d0
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoUse callbacks while parsing to NormalizedNodes. 26/19226/5
Tomas Cere [Tue, 28 Apr 2015 12:45:42 +0000 (14:45 +0200)]
Use callbacks while parsing to NormalizedNodes.

Implemented custom parsing strategies that handle netconf operations
and manipulation of the data tree in NetconfMDSal.

Change-Id: I99d7f049710393743714d90ac3123041e87040cd
Signed-off-by: Tomas Cere <tcere@cisco.com>
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoAdd NetconfXmlUnitRecursiveQualifier to netconf-util. 10/20010/1
Tomas Cere [Mon, 11 May 2015 08:03:18 +0000 (10:03 +0200)]
Add NetconfXmlUnitRecursiveQualifier to netconf-util.

XmlUnit's RecursiveElementNameAndTextQualifier has trouble with non-trivial xml's and
element order in bigger depths.
This adds our own qualifier based on XmlUnit's implementation.

Change-Id: Ie89e84813e11cb2af7c9d3c0c6d80377816f79a7
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoCDS: add backend support for local transactions 55/19255/10
Robert Varga [Sat, 25 Apr 2015 08:44:13 +0000 (10:44 +0200)]
CDS: add backend support for local transactions

Add the message for submitting a DataTreeModification from the frontend
and the logic to apply it to the Shard's DataTree instance. This is
similar to BatchedModifications, except is is always considered ready.

The ReadyLocalTransaction is not directly serializable, but we create a
new serializer, which turns it into BatchedModifications when
serializing to byte stream.

Change-Id: I23a39c7b5997b48a355af73287d19bbf3ab0ae20
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoChange http port for NorthBoundIT tests 77/19977/2
Tom Pantelis [Sat, 9 May 2015 03:36:50 +0000 (23:36 -0400)]
Change http port for NorthBoundIT tests

The NorthBoundIT tests are failing on jenkins due to port http 8080
already in use. I don't know what else would be running on port 8080
on the build machines - maybe a remnant of another test that didn't
cleanup or didn't finish cleaning up in the background. In any event,
I changed the port to 8180 to hopefully avoid the issue so verify
builds can succeed.

Change-Id: Ia11ef1d69c8cd5948063ec6dbfc08fab2492319c
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoBug 3148 - Fixed binding.api.NotificationListener support 29/19829/1
Tony Tkacik [Thu, 7 May 2015 17:24:15 +0000 (19:24 +0200)]
Bug 3148 - Fixed binding.api.NotificationListener support

Change-Id: I5017e502a23f9cdb7d35dc393e84db7c2989f491
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoMerge "BUG-3095 Add EventTime attribute to DOMNotification from netconf" into stable...
Tony Tkacik [Thu, 7 May 2015 10:25:44 +0000 (10:25 +0000)]
Merge "BUG-3095 Add EventTime attribute to DOMNotification from netconf" into stable/lithium

8 years agoMerge "Bug 3135 - Fixed support for InterestListener" into stable/lithium
Ed Warnicke [Wed, 6 May 2015 15:13:00 +0000 (15:13 +0000)]
Merge "Bug 3135 - Fixed support for InterestListener" into stable/lithium

8 years agoMerge "BUG 2954 : Thread local DocumentBuilder's for XmlUtil" into stable/lithium
Tony Tkacik [Wed, 6 May 2015 12:43:19 +0000 (12:43 +0000)]
Merge "BUG 2954 : Thread local DocumentBuilder's for XmlUtil" into stable/lithium

8 years agoBUG-3095 Add EventTime attribute to DOMNotification from netconf 45/19645/2
Maros Marsalek [Tue, 5 May 2015 16:47:37 +0000 (18:47 +0200)]
BUG-3095 Add EventTime attribute to DOMNotification from netconf

Introduced new interface DOMEvent and DOMNotifications from
sal-netconf-connector implement this interaface. The eventTime is parsed from
the the notification xml.

Change-Id: I833d86d91f752be55fef3e641a6c8654d2f65a28
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoBug 3135 - Fixed support for InterestListener 02/19702/3
Tony Tkacik [Wed, 6 May 2015 10:42:28 +0000 (12:42 +0200)]
Bug 3135 - Fixed support for InterestListener

InterestListener was one of undocumented beta MD-SAL APIs
which was not intented for public support, but accidentally
was public since Hydrogen and as it turned out other Opendaylight
projects started to using it.

Added support to affected components in order to still support
this API even when using new Notification Broker.

Change-Id: I060474f68a6c37ed05b262a9b46923f668ca3c8b
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoMerge "Fix test to return PrimaryShardInfo when retrieving primary shard" into stable...
Moiz Raja [Tue, 5 May 2015 20:52:52 +0000 (20:52 +0000)]
Merge "Fix test to return PrimaryShardInfo when retrieving primary shard" into stable/lithium

8 years agoMerge "Bug 1773: Use new Binding Notification Broker by default." into stable/lithium
Ed Warnicke [Tue, 5 May 2015 15:15:17 +0000 (15:15 +0000)]
Merge "Bug 1773: Use new Binding Notification Broker by default." into stable/lithium

8 years agoMerge "Add netconf-tcp feature into odl-netconf-mdsal." into stable/lithium
Tony Tkacik [Tue, 5 May 2015 14:49:20 +0000 (14:49 +0000)]
Merge "Add netconf-tcp feature into odl-netconf-mdsal." into stable/lithium

8 years agoMerge "Bug 3068 - checkRpcResponse - CancellationException" into stable/lithium
Tony Tkacik [Tue, 5 May 2015 13:49:48 +0000 (13:49 +0000)]
Merge "Bug 3068 - checkRpcResponse - CancellationException" into stable/lithium

8 years agoMerge "BUG 3057 - notify added event source by topics created before" into stable...
Tony Tkacik [Tue, 5 May 2015 13:49:12 +0000 (13:49 +0000)]
Merge "BUG 3057 - notify added event source by topics created before" into stable/lithium

8 years agoMerge "Bug222:Comments incorporated for response based Restconf statistics" into...
Tony Tkacik [Tue, 5 May 2015 13:48:55 +0000 (13:48 +0000)]
Merge "Bug222:Comments incorporated for response based Restconf statistics" into stable/lithium

8 years agoMerge "Fixed export package section of sal-binding-broker." into stable/lithium
Tom Pantelis [Tue, 5 May 2015 12:41:44 +0000 (12:41 +0000)]
Merge "Fixed export package section of sal-binding-broker." into stable/lithium

8 years agoFix test to return PrimaryShardInfo when retrieving primary shard 74/19274/3
Moiz Raja [Wed, 29 Apr 2015 04:00:30 +0000 (21:00 -0700)]
Fix test to return PrimaryShardInfo when retrieving primary shard

Without these changes the tests log a lot of ClassCastExceptions when
run.

I also removed one method in the test that was unused

Change-Id: I9501dc7cd6be461297052182de79dae831409a8c
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoFixed export package section of sal-binding-broker. 24/19524/2
Tony Tkacik [Mon, 4 May 2015 12:55:23 +0000 (12:55 +0000)]
Fixed export package section of sal-binding-broker.

Change-Id: I09a0c50f8c6a96992ccca2648bec6759c85ff02a
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoBug222:Comments incorporated for response based Restconf statistics 22/19522/1
bhavesh.kumar1 [Mon, 27 Apr 2015 04:18:44 +0000 (09:48 +0530)]
Bug222:Comments incorporated for response based Restconf statistics

Added response based restconf statistics which counts
the reponse of get, put, post and delete on the success and
failure response for config and operational datastore.

Change-Id: If423da08e2c5793e68398beb69575b7cf214f57e
Signed-off-by: bhavesh.kumar1 <bhavesh.kumar1@tcs.com>
(cherry picked from commit f26ff841fe0cb5c56e8e9278a328dcb548e8e129)

8 years agoBUG 3057 - notify added event source by topics created before 15/19515/1
Marian Adamjak [Fri, 24 Apr 2015 10:50:05 +0000 (12:50 +0200)]
BUG 3057 - notify added event source by topics created before

Change-Id: I97d49e830af6c360bb2d2b24880aa07e2e47c0a6
Signed-off-by: Marian Adamjak <madamjak@cisco.com>
(cherry picked from commit 08d14bd2821233d6f2eb6f03e143745393f530bc)

8 years agoUse MoreExecutors.directExecutor() 72/19472/5
Robert Varga [Sat, 2 May 2015 03:02:07 +0000 (05:02 +0200)]
Use MoreExecutors.directExecutor()

Remove open-coded equivalent of the direct executor. We do not need an
ExecutorService, so it is sufficient and does precisely what our class
did.

Change-Id: Ib9424a1b4d3ba56f32ef5aec525de4026be0970a
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoCDS: split TransactionType from TransactionProxy 57/19257/6
Robert Varga [Sat, 25 Apr 2015 15:05:01 +0000 (17:05 +0200)]
CDS: split TransactionType from TransactionProxy

The type is used outside, too, so split it out into its own file.

Change-Id: I00589bc46b724ae5b0de3852056111a3f1bcb897
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoCDS: Introduce ChainedTransactionIdentifier 58/19258/7
Robert Varga [Mon, 27 Apr 2015 12:40:45 +0000 (14:40 +0200)]
CDS: Introduce ChainedTransactionIdentifier

Conceptually the identifier of a a transaction is an extension point,
which allows passing of arbitratry, extensible identifier. It can thus
be reused to track the chain identifier as well as the normal source
coordinates.

Introduce ChainedTransactionIdentifier to carry the transaction chain ID
attached to the transaction on the frontend. This is not used in this
commit directly, but rather in the follow-up patch.

Change-Id: Iad24a1b59c6231e003579bb25149b73b11d6db25
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoCDS: do not propagate SchemaContext 56/19256/6
Robert Varga [Sat, 25 Apr 2015 14:46:50 +0000 (16:46 +0200)]
CDS: do not propagate SchemaContext

TransactionContext implementations do not need, so remove the
constructor argument and adjust callers.

Change-Id: I7f6644e3e673057586a1ec6cfbe93b6e258ca9ad
Signed-off-by: Robert Varga <rovarga@cisco.com>
8 years agoBug 3068 - checkRpcResponse - CancellationException 07/19507/1
Jan Hajnar [Tue, 28 Apr 2015 11:14:46 +0000 (13:14 +0200)]
Bug 3068 - checkRpcResponse - CancellationException

* added catch for CancellationException in RestconfImpl

Change-Id: I3ebb2c4fd2a521ed0977075975a1302301b801fa
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
(cherry picked from commit 4414dc397b49c928635187fa99361b28f5ad6ee3)

8 years agoMerge "Fix mac address generator in stress client" into stable/lithium
Tony Tkacik [Mon, 4 May 2015 08:22:32 +0000 (08:22 +0000)]
Merge "Fix mac address generator in stress client" into stable/lithium

8 years agoMerge "Modify multiple physical address atributes in stress-client payload." into...
Tony Tkacik [Mon, 4 May 2015 08:22:25 +0000 (08:22 +0000)]
Merge "Modify multiple physical address atributes in stress-client payload." into stable/lithium

8 years agoMerge "Multiple clients for stresstool" into stable/lithium
Tony Tkacik [Mon, 4 May 2015 08:22:16 +0000 (08:22 +0000)]
Merge "Multiple clients for stresstool" into stable/lithium

8 years agoBug 3010: Improve restconf error clarity. 48/19448/1
Evan Zeller [Thu, 30 Apr 2015 21:59:25 +0000 (14:59 -0700)]
Bug 3010: Improve restconf error clarity.

Change-Id: Ib54e96f1a70a187d940f843ed624f4a0f3c4ead0
Signed-off-by: Evan Zeller <evanrzeller@gmail.com>
(cherry picked from commit b504aaac922e244a24f708f82342e4ce14b29532)

8 years agoMerge "Remove "Unavailable" properties from ShardStats" into stable/lithium
Moiz Raja [Fri, 1 May 2015 03:26:08 +0000 (03:26 +0000)]
Merge "Remove "Unavailable" properties from ShardStats" into stable/lithium

8 years agoBUG 3049 : Upgrade from akka 2.3.9 to 2.3.10 16/19416/2
Moiz Raja [Thu, 30 Apr 2015 21:41:17 +0000 (14:41 -0700)]
BUG 3049 : Upgrade from akka 2.3.9 to 2.3.10

akka 2.3.10 has fixes related to the kind of issues reported in BUG
3049.

Change-Id: I51c094ff939ca0f4b31d685bae3e195d22ddb518
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoRemove "Unavailable" properties from ShardStats 20/19420/1
Tom Pantelis [Fri, 1 May 2015 00:26:16 +0000 (20:26 -0400)]
Remove "Unavailable" properties from ShardStats

There's several property getters in ShardStats that don't apply anymore
and return null. They display as "Unavailable" in JConsole but cause an
NPE when queried via jolokia. We should remove them.

Change-Id: I6da8f331e007246c655a982b9cd335de553195aa
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoAdd netconf-tcp feature into odl-netconf-mdsal. 68/19368/4
Tomas Cere [Thu, 30 Apr 2015 07:48:58 +0000 (09:48 +0200)]
Add netconf-tcp feature into odl-netconf-mdsal.

Improve logging in tcp module for netconf mdsal.

Change-Id: I3b2f00ad02ce59effd10b3f4b3357db8800c29bf
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoBug 2853 : Adding Remote RPC MX bean 59/19359/1
Harman Singh [Thu, 30 Apr 2015 01:26:44 +0000 (18:26 -0700)]
Bug 2853 : Adding Remote RPC MX bean

This bean gives three attributes - bucket versions,local registered routed rpc names and global rpc
bucket versions will give information of latest version of remote rpc buckets on all nodes of cluster.
Name of locally registered RPCs can be found in other two attributes.

Two Search operations - findByRpcName and findByRpcRoute helps to search RPCs registered in cluster
via name or route keyword. Search happens in both local and remote bucket.

Change-Id: Ief08eb2e42deafdf2627c61e58c2e2a50f7dcd09
Signed-off-by: Harman Singh <harmasin@cisco.com>
8 years agoMerge "Bug 2932: NPE on bundle activation" into stable/lithium
Tony Tkacik [Wed, 29 Apr 2015 16:57:19 +0000 (16:57 +0000)]
Merge "Bug 2932: NPE on bundle activation" into stable/lithium

8 years agoMerge "Bug 2351 Speed-up Binding-to-Binding routed RPC Invocation." into stable/lithium
Tom Pantelis [Wed, 29 Apr 2015 15:12:22 +0000 (15:12 +0000)]
Merge "Bug 2351 Speed-up Binding-to-Binding routed RPC Invocation." into stable/lithium

8 years agoBug 2932: NPE on bundle activation 09/19309/1
Marian Dubai [Wed, 22 Apr 2015 07:53:21 +0000 (09:53 +0200)]
Bug 2932: NPE on bundle activation

Error might occured when value containing YangStoreContext
is overwritten to null by refresh method, executed within another thread.
After fix, in case context is null, context is calculated again.

Change-Id: Icefe2a5970ec2ce0b67d5b3b386a35f781fc4156
Signed-off-by: Marian Dubai <mdubai@cisco.com>
8 years agoFix mac address generator in stress client 07/19307/1
Maros Marsalek [Wed, 29 Apr 2015 14:45:58 +0000 (16:45 +0200)]
Fix mac address generator in stress client

Change-Id: Ibe016728fb2be3693c1b9f7899d0933932c37138
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Tomas Cere <tcere@cisco.com>
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoModify multiple physical address atributes in stress-client payload. 06/19306/1
Maros Marsalek [Wed, 29 Apr 2015 14:39:45 +0000 (16:39 +0200)]
Modify multiple physical address atributes in stress-client payload.

Change-Id: Ic719c519eb0735d00014e51851dd958db5098ff0
Signed-off-by: Tomas Cere <tcere@cisco.com>
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoMerge "Make TCP netconf endpoint configurable" into stable/lithium
Tony Tkacik [Wed, 29 Apr 2015 14:37:34 +0000 (14:37 +0000)]
Merge "Make TCP netconf endpoint configurable" into stable/lithium

8 years agoMultiple clients for stresstool 04/19304/1
Maros Marsalek [Wed, 29 Apr 2015 14:37:04 +0000 (16:37 +0200)]
Multiple clients for stresstool

Added new parameter(--thread-amount) for stresstool that splits edits
between multiple threads.

Change-Id: I87a81a5442e32833c0c49dfd98b6475f8e699a2b
Signed-off-by: Tomas Cere <tcere@cisco.com>
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoMerge "Add {PHYS_ADDR} attribute to netconf stress client tool" into stable/lithium
Tony Tkacik [Wed, 29 Apr 2015 14:31:43 +0000 (14:31 +0000)]
Merge "Add {PHYS_ADDR} attribute to netconf stress client tool" into stable/lithium

8 years agoBug 1773: Use new Binding Notification Broker by default. 03/19303/1
Tony Tkacik [Wed, 22 Apr 2015 13:01:48 +0000 (15:01 +0200)]
Bug 1773: Use new Binding Notification Broker by default.

New Binding Notification Broker is required in order
to forward Notifications from Binding producers
to DOM Broker, so these notifications could be exposed
via netconf / restconf or in future releases via
clustering.

Change-Id: I520eb0b31512ec5f2114f0a5ee9492f5d9210679
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoBug 2351 Speed-up Binding-to-Binding routed RPC Invocation. 46/19146/5
Tony Tkacik [Mon, 27 Apr 2015 12:16:06 +0000 (14:16 +0200)]
Bug 2351 Speed-up Binding-to-Binding routed RPC Invocation.

Current RPC Broker uses LazySerializedContainerNodes
when going thru DOM RPC broker, so in case
RPC is returned it can by-pass deserialization and
use Binding DTO directly.

In case of routed RPCs full serialization to normalized
node was triggered when DOM RPC broker tried to
read RPC route.

This patchset introduces support for LazySerializedContainerNode
to precompute this value and do not use full serialization
when DOM Rpc Broker reads only routing context.

Change-Id: I6d949b5257d40a96ae9edce3bf15c4c3ff932c27
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoMake TCP netconf endpoint configurable 78/19278/1
Maros Marsalek [Fri, 24 Apr 2015 08:13:20 +0000 (10:13 +0200)]
Make TCP netconf endpoint configurable

Allow users to configure netconf endpoint for md-sal to use pure TCP instead/or along with SSH.

Change-Id: I03d067322b0c02ba335d554da51c56db77c22bfb
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoMerge "BUG 3066 : Optimistic lock failed, on NetconfStateUpdate" into stable/lithium
Tony Tkacik [Wed, 29 Apr 2015 07:04:37 +0000 (07:04 +0000)]
Merge "BUG 3066 : Optimistic lock failed, on NetconfStateUpdate" into stable/lithium

8 years agoMerge "Bug 2983: Added support for creation of multiple list entries" into stable...
Tony Tkacik [Wed, 29 Apr 2015 06:59:21 +0000 (06:59 +0000)]
Merge "Bug 2983: Added support for creation of multiple list entries" into stable/lithium

8 years agoBUG 2954 : Thread local DocumentBuilder's for XmlUtil 30/19230/1
Tomas Cere [Tue, 7 Apr 2015 13:49:33 +0000 (15:49 +0200)]
BUG 2954 : Thread local DocumentBuilder's for XmlUtil

Increases performance by reusing cached DocumentBuilder instances.

Change-Id: I5aab6b4caa960878b647e6868377d62dd6262cd9
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoBUG 3066 : Optimistic lock failed, on NetconfStateUpdate 29/19229/1
Tomas Cere [Tue, 28 Apr 2015 09:09:50 +0000 (11:09 +0200)]
BUG 3066 : Optimistic lock failed, on NetconfStateUpdate

Fixed race condition between commit of NetconfState and
opening of a new transaction in NetconfMonitoring state update.

Change-Id: I2f56a0e432e630e56a35409c56e4198a3e278594
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoAdd {PHYS_ADDR} attribute to netconf stress client tool 24/19224/1
Tomas Cere [Mon, 27 Apr 2015 14:02:32 +0000 (16:02 +0200)]
Add {PHYS_ADDR} attribute to netconf stress client tool

{PHYS_ADDR} is a wildcard and will be replaced by a physical address based on
current edit indes. Suitable for testing edit-config performance with models
containing physical address.

Change-Id: I48a0a6eb2ccf903dadc02c87d9eb9dfcfe7bac07
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Tomas Cere <tcere@cisco.com>
8 years agoBug 2983: Added support for creation of multiple list entries 18/19218/1
Tony Tkacik [Fri, 24 Apr 2015 12:59:07 +0000 (14:59 +0200)]
Bug 2983: Added support for creation of multiple list entries

JSON payload for POST allows user to specify multiple list
entries to be created. This resulted in confusing behaviour
where only one entry was allowed.

Updated RESTCONF to allow multiple entry creation via POST
for lists only.

Change-Id: I7dc11098676d4e761e1b31a0504f3e5af75157f3
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
(cherry picked from commit 12df4c8c678ce58aa0f82c34d0ce8e6cccc15dca)

8 years agoBUG 3029 - netconf event source modification 30/19130/1
Marian Adamjak [Wed, 22 Apr 2015 06:04:32 +0000 (08:04 +0200)]
BUG 3029 - netconf event source modification
   - add TopicId into published notifications

Change-Id: I9ff95935fd37c2978a7e41d77646546adc30d4d2
Signed-off-by: Marian Adamjak <madamjak@cisco.com>
(cherry picked from commit 75a7b88f4b97e59fc53de293a0d6f0f5ab1396b9)

8 years agoBug 3063 - Notification brokers does not properly scans notification listeners for... 04/19104/1
Martin Bobak [Sun, 26 Apr 2015 14:00:33 +0000 (16:00 +0200)]
Bug 3063 - Notification brokers does not properly scans notification listeners for implemented interfaces

Change-Id: Ie3b136bd40c443191d22bfbfd0ea532b65f717c2
Signed-off-by: Martin Bobak <mbobak@cisco.com>
8 years agoMerge "Add documentation in akka.conf on how to specify location of persistent data...
Tom Pantelis [Sun, 26 Apr 2015 04:12:45 +0000 (04:12 +0000)]
Merge "Add documentation in akka.conf on how to specify location of persistent data" into stable/lithium

8 years agoReturn local shard tree from FindPrimaryShard 97/19097/4
Tom Pantelis [Tue, 21 Apr 2015 20:09:20 +0000 (16:09 -0400)]
Return local shard tree from FindPrimaryShard

Added a new ShardLeaderStateChanged message that includes the Shard's
DataTree as an Optional. If the shard is the leader, it returns it's
local DataTree, oherwise returns absent.

The ShardManager now returns a LocalPrimaryShardFound response to
FindPrimary if the shard's DataTree is present. Otherwise it returns
RemotePrimaryShardFound (renamed from PrimaryFound).

Change-Id: I4413aacfff3d3d2ee89df7c4a3a1d7f7c3d2c486
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
8 years agoBUG 3054 : Check readiness status of datastore when receiving MemberUp. 53/19253/2
Moiz Raja [Tue, 28 Apr 2015 18:15:51 +0000 (11:15 -0700)]
BUG 3054 : Check readiness status of datastore when receiving MemberUp.

A Follower knows who the Leader is when it receives an AppendEntries message,
however it does record the address of the leader, that is supplied by the
ShardManager when the ShardManager receives a MemberUp. The Follower cannot
be considered ready till it knows both who the leader is and what is it's
address. This patch ensures that the ShardManager counts down the readiness
latch only when the follower knows both.

This also ensures that FindPrimaryShard will only return a primary if the Leader
is truly known.

Change-Id: I1cd6b62124d50c9eca37368d0379b0c75168bb76
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoBUG 3054 : Move ShardManager ready check into a single method. 52/19252/2
Moiz Raja [Tue, 28 Apr 2015 17:58:08 +0000 (10:58 -0700)]
BUG 3054 : Move ShardManager ready check into a single method.

Small refactoring to move code which checks for readiness into a
private method instead of duplicating it inline

Change-Id: I60cd603cb015c8602591769f1f931ae8580cfbd8
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoAdd documentation in akka.conf on how to specify location of persistent data 51/19051/1
Moiz Raja [Thu, 26 Mar 2015 22:21:47 +0000 (15:21 -0700)]
Add documentation in akka.conf on how to specify location of persistent data

Change-Id: I085656d2b060aca2eae78dc85a9c0f660dcb9e3c
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoMerge "Fix ReplicationAndSnapshotsIntegrationTest failure"
Tony Tkacik [Fri, 24 Apr 2015 21:15:56 +0000 (21:15 +0000)]
Merge "Fix ReplicationAndSnapshotsIntegrationTest failure"

8 years agoMerge "Remove local override of odlparent version for org.eclipse.persistence.version"
Moiz Raja [Fri, 24 Apr 2015 17:57:10 +0000 (17:57 +0000)]
Merge "Remove local override of odlparent version for org.eclipse.persistence.version"

8 years agoRemove local override of odlparent version for org.eclipse.persistence.version 37/19037/1
Ed Warnicke [Fri, 24 Apr 2015 17:13:25 +0000 (10:13 -0700)]
Remove local override of odlparent version for org.eclipse.persistence.version

Change-Id: I297cc9ddae7958ba2d1c72c76e1b5b6d19ebc290
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
8 years agoMerge "NPE in RaftActor#onGetOnDemandRaftStats"
Tom Pantelis [Fri, 24 Apr 2015 16:12:30 +0000 (16:12 +0000)]
Merge "NPE in RaftActor#onGetOnDemandRaftStats"

8 years agoMerge "Fix NoSuchElementException thrown when transaction is empty"
Tom Pantelis [Fri, 24 Apr 2015 15:57:37 +0000 (15:57 +0000)]
Merge "Fix NoSuchElementException thrown when transaction is empty"

8 years agoMerge "Use ImmutableNodes.fromInstanceId in netconf"
Tony Tkacik [Fri, 24 Apr 2015 15:43:20 +0000 (15:43 +0000)]
Merge "Use ImmutableNodes.fromInstanceId in netconf"

8 years agoMerge "Improve performance of XmlElement.getName"
Tony Tkacik [Fri, 24 Apr 2015 15:42:27 +0000 (15:42 +0000)]
Merge "Improve performance of XmlElement.getName"

8 years agoMerge "Fix test failure in TopologyManagerImplTest#testNotifyNodeConnector"
Tony Tkacik [Fri, 24 Apr 2015 15:30:23 +0000 (15:30 +0000)]
Merge "Fix test failure in TopologyManagerImplTest#testNotifyNodeConnector"

8 years agoFix NoSuchElementException thrown when transaction is empty 24/19024/2
Moiz Raja [Fri, 24 Apr 2015 15:02:33 +0000 (08:02 -0700)]
Fix NoSuchElementException thrown when transaction is empty

Change-Id: I5d2c26a1ff3d8f5b8ace893b7206da2d23bf637c
Signed-off-by: Moiz Raja <moraja@cisco.com>
8 years agoMerge "Fix CloseTransactionChain NotSerializableException"
Moiz Raja [Fri, 24 Apr 2015 14:08:01 +0000 (14:08 +0000)]
Merge "Fix CloseTransactionChain NotSerializableException"

8 years agoMerge topic 'li/cleanup/javassist'
Tom Pantelis [Fri, 24 Apr 2015 13:43:21 +0000 (13:43 +0000)]
Merge topic 'li/cleanup/javassist'

* changes:
  Removed unused implementation code from Binding MD-SAL.
  Migrated Hydrogen Notification Broker to not use Javassist.

8 years agoMerge "Stop SubtreeFitler from rereading reply even if no filter element is present."
Tony Tkacik [Fri, 24 Apr 2015 13:17:43 +0000 (13:17 +0000)]
Merge "Stop SubtreeFitler from rereading reply even if no filter element is present."

8 years agoMerge "Tests for CDS DataTreeChangedListener"
Tom Pantelis [Fri, 24 Apr 2015 11:58:19 +0000 (11:58 +0000)]
Merge "Tests for CDS DataTreeChangedListener"

8 years agoMerge "Use ImmutableNodes.fromInstanceId in restconf"
Tony Tkacik [Fri, 24 Apr 2015 11:47:01 +0000 (11:47 +0000)]
Merge "Use ImmutableNodes.fromInstanceId in restconf"

8 years agoRemoved unused implementation code from Binding MD-SAL. 56/18256/5
Tony Tkacik [Wed, 8 Apr 2015 12:40:25 +0000 (14:40 +0200)]
Removed unused implementation code from Binding MD-SAL.

Change-Id: I9da77e3bb10b70dba1d97429f06cde31831d62d5
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
8 years agoUse ImmutableNodes.fromInstanceId in netconf 02/18802/7
Maros Marsalek [Wed, 22 Apr 2015 07:32:31 +0000 (09:32 +0200)]
Use ImmutableNodes.fromInstanceId in netconf

Build normalized node strcuture from Yang Instance Id using new utilities from
yang-data-impl.

Change-Id: I1862d17e2356b965d4875ce5e715891cf94b17fb
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
8 years agoMerge "BUG 3045 : Use non-strict parsing in hello message."
Tony Tkacik [Fri, 24 Apr 2015 10:18:05 +0000 (10:18 +0000)]
Merge "BUG 3045 : Use non-strict parsing in hello message."

8 years agoMerge "Create transaction on the backend datastore only when neccessary"
Tony Tkacik [Fri, 24 Apr 2015 10:09:48 +0000 (10:09 +0000)]
Merge "Create transaction on the backend datastore only when neccessary"

8 years agoMerge "Reduce non-existent Tx chain logging on close in ShardDataTree"
Moiz Raja [Fri, 24 Apr 2015 10:03:18 +0000 (10:03 +0000)]
Merge "Reduce non-existent Tx chain logging on close in ShardDataTree"