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>
(cherry picked from commit
63c43e481fe503a3b90c7e6c55ac21514be0f6db)
Moiz Raja [Fri, 1 May 2015 00:02:41 +0000 (00:02 +0000)]
Merge "Bug 2853 : Adding Remote RPC MX bean"
Anton Ivanov [Mon, 30 Mar 2015 12:27:38 +0000 (12:27 +0000)]
BUG 2914 TCP Options incorrect
Obvious - basic use of TCP in a double-buffering environment for command/responce protocols.
Change-Id: I4d5117039bdcdc089adb177972ab9460165d6297
Signed-off-by: Anton Ivanov <aivanov@brocade.com>
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>
Tony Tkacik [Thu, 30 Apr 2015 14:53:02 +0000 (14:53 +0000)]
Merge "BUG-2288: deprecate old binding Notification API elements"
Tom Pantelis [Thu, 30 Apr 2015 05:16:37 +0000 (05:16 +0000)]
Merge "Return local shard tree from FindPrimaryShard"
Tom Pantelis [Thu, 30 Apr 2015 03:05:10 +0000 (03:05 +0000)]
Merge "Add documentation in akka.conf on how to specify location of persistent data"
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>
(cherry picked from commit
fdddb482b07c3ee2f3ca853d09ee9a6ecdd7eb2a)
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>
(cherry picked from commit
7c209b8b08b56022b11c842c141d90d5b3d736e2)
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>
(cherry picked from commit
bc5e040c7362243607e04045ac9d9309817bb9c1)
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>
(cherry picked from commit
7159b15b0efedb548f7fae5bb1eb9e970bc2e43f)
Tony Tkacik [Wed, 29 Apr 2015 16:57:29 +0000 (16:57 +0000)]
Merge "Bug 2932: NPE on bundle activation"
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>
Thanh Ha [Wed, 29 Apr 2015 02:25:15 +0000 (22:25 -0400)]
Fix checkstyle violations caused by checkstyle 6.1.1
Change-Id: I84f356707f97184ae8708e429c6b440db8bd632f
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
Ed Warnicke [Mon, 27 Apr 2015 19:17:38 +0000 (19:17 +0000)]
Merge "Bug 2983: Added support for creation of multiple list entries"
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>
Tony Tkacik [Mon, 27 Apr 2015 08:34:09 +0000 (08:34 +0000)]
Merge "Event Source: switch from wildcards to regexs"
Tony Tkacik [Mon, 27 Apr 2015 08:30:18 +0000 (08:30 +0000)]
Merge "BUG 3029 - netconf event source modification - add TopicId into published notifications"
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>
Tom Pantelis [Fri, 24 Apr 2015 02:04:13 +0000 (22:04 -0400)]
Fix sal-akka-raft-example package directory
The sal-akka-raft-example component was created with package directory names
starting with "opendaylight.controller...". It should be
"org.opendaylight.controller...".
Change-Id: Ie6fa043fe83c8cff28bbd125eaeb79de811ca8b9
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
(cherry picked from commit
36955e19a84ad3e636c3343fec85c0cb9c3e49f6)
Tony Tkacik [Fri, 24 Apr 2015 22:09:43 +0000 (22:09 +0000)]
Merge "Bumped controller version by minor for next release cycle."
Tony Tkacik [Fri, 24 Apr 2015 21:15:56 +0000 (21:15 +0000)]
Merge "Fix ReplicationAndSnapshotsIntegrationTest failure"
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>
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"
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>
Tony Tkacik [Thu, 23 Apr 2015 14:19:33 +0000 (14:19 +0000)]
Bumped controller version by minor for next release cycle.
Change-Id: I80ea0aecf42e5ee96dcebc68af1e872b1f10e7b5
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Tom Pantelis [Fri, 24 Apr 2015 16:12:30 +0000 (16:12 +0000)]
Merge "NPE in RaftActor#onGetOnDemandRaftStats"
Tom Pantelis [Fri, 24 Apr 2015 15:57:37 +0000 (15:57 +0000)]
Merge "Fix NoSuchElementException thrown when transaction is empty"
Tony Tkacik [Fri, 24 Apr 2015 15:43:20 +0000 (15:43 +0000)]
Merge "Use ImmutableNodes.fromInstanceId in netconf"
Tony Tkacik [Fri, 24 Apr 2015 15:42:27 +0000 (15:42 +0000)]
Merge "Improve performance of XmlElement.getName"
Tony Tkacik [Fri, 24 Apr 2015 15:30:23 +0000 (15:30 +0000)]
Merge "Fix test failure in TopologyManagerImplTest#testNotifyNodeConnector"
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>
Moiz Raja [Fri, 24 Apr 2015 14:08:01 +0000 (14:08 +0000)]
Merge "Fix CloseTransactionChain NotSerializableException"
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.
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."
Tom Pantelis [Fri, 24 Apr 2015 11:58:19 +0000 (11:58 +0000)]
Merge "Tests for CDS DataTreeChangedListener"
Tony Tkacik [Fri, 24 Apr 2015 11:47:01 +0000 (11:47 +0000)]
Merge "Use ImmutableNodes.fromInstanceId in restconf"
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>
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>
Tony Tkacik [Fri, 24 Apr 2015 10:18:05 +0000 (10:18 +0000)]
Merge "BUG 3045 : Use non-strict parsing in hello message."
Tony Tkacik [Fri, 24 Apr 2015 10:09:48 +0000 (10:09 +0000)]
Merge "Create transaction on the backend datastore only when neccessary"
Moiz Raja [Fri, 24 Apr 2015 10:03:18 +0000 (10:03 +0000)]
Merge "Reduce non-existent Tx chain logging on close in ShardDataTree"
Moiz Raja [Fri, 24 Apr 2015 10:02:16 +0000 (10:02 +0000)]
Merge "Return local shard's DataTree from ActorContext#findPrimaryShardAsync"
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>
Tony Tkacik [Wed, 22 Apr 2015 11:30:54 +0000 (13:30 +0200)]
Migrated Hydrogen Notification Broker to not use Javassist.
Change-Id: Id85deca318041be5bbe97d18d484004daf5e290d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Tom Pantelis [Fri, 24 Apr 2015 02:53:32 +0000 (02:53 +0000)]
Merge "Tests for DOMDataTreeListener"
Tom Pantelis [Fri, 24 Apr 2015 02:52:17 +0000 (02:52 +0000)]
Merge "Moved legacy Notification implementation to compat package."
Tom Pantelis [Fri, 24 Apr 2015 02:51:38 +0000 (02:51 +0000)]
Merge "Replaced Helium Notification Broker with new Notifcation Broker."
Tom Pantelis [Fri, 24 Apr 2015 00:42:10 +0000 (00:42 +0000)]
Merge "Make TransactionProxy.isRootPath() static"
Tony Tkacik [Thu, 23 Apr 2015 21:15:25 +0000 (21:15 +0000)]
Merge "Bug 3024 - Restconf PUT exception when top level node is from augmentation"
Tony Tkacik [Thu, 23 Apr 2015 18:01:05 +0000 (18:01 +0000)]
Merge "IMDS: trim down commit overhead"
Tony Tkacik [Thu, 23 Apr 2015 18:00:30 +0000 (18:00 +0000)]
Merge "Publish SnapshotBacked transactions"
Jan Hajnar [Tue, 21 Apr 2015 17:11:52 +0000 (19:11 +0200)]
Bug 3024 - Restconf PUT exception when top level node is from
augmentation
* added check for PUT into JsonNormalizedNodeBodyReader. If method is
PUT then data are unwraped from augmentations/choice nodes
* added wrapping of augmentation nodes when using XmlNormalizedNodeBodyReader
* commented out check for namespace in createConfigurationData (it should be
moved to parse stage)
* both XmlNormalizedNodeBodyReader and JsonNormalizedNodeBodyReader
should now produce the same normalized node data and paths for
equivalent XML and JSON input.
Change-Id: I21f4594d20170f33177cbae00791b81f6ae640b2
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
Moiz Raja [Thu, 23 Apr 2015 17:08:12 +0000 (17:08 +0000)]
Merge "Fix ShardTest#testCreateSnapshot unit test failures"
Moiz Raja [Thu, 23 Apr 2015 17:07:28 +0000 (17:07 +0000)]
Merge "CDS: switch persistence to persisting the candidates"
Moiz Raja [Wed, 22 Apr 2015 13:42:05 +0000 (06:42 -0700)]
Create transaction on the backend datastore only when neccessary
I've borrowed a bunch of code from the data broker because I needed to modify
the code for lazy transaction creation which needed me to pass around the
factories for creating the transaction on the appropriate store.
Basic tests are in place for now which ensure
that we do not create transactions on all the stores when not needed and that on
submit we only have cohorts for the transactions that we created.
The data broker still goes through the three phase commit but since now this has
been optimized with the direct commit enhancement on the datastore itself it should
not matter if we call one method or 4 as far as message passing goes. Calling the 4 methods
may result in extra object creation and such which could be avoided. I would put that in
a follow up commit.
Change-Id: Id77bb1642748e7df15e084a3f0b5e580783f2f8d
Signed-off-by: Moiz Raja <moraja@cisco.com>
Tom Pantelis [Thu, 23 Apr 2015 13:25:11 +0000 (09:25 -0400)]
Fix ReplicationAndSnapshotsIntegrationTest failure
Saw this fail sproradically a few times on jenkins with
InvalidActorNameException trying to kill and re-create the actor with
the same name. We wait for the actor to terminate but it seems it may
not be removed from akka at that point. So I added a retry loop for
creating the actor.
Change-Id: Ia2d7388b00df329d62a4683a18f49067cfdc17a0
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Robert Varga [Thu, 23 Apr 2015 13:20:23 +0000 (15:20 +0200)]
Make TransactionProxy.isRootPath() static
Its result depends only on the argument, so make it static.
Change-Id: I8a117974a57f4f1e96d06b6223152387d33519d4
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Thu, 23 Apr 2015 11:25:43 +0000 (13:25 +0200)]
Fix TestModel whitespace and warning
Migrates the new yang parser interfaces and cleans up whitespace to
follow coding style.
Change-Id: Iefe7893e51d24192b2f4ce4da14b351d348e76ea
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Wed, 22 Apr 2015 14:17:57 +0000 (16:17 +0200)]
IMDS: trim down commit overhead
After refactoring things out it is quite obvious that we can skip adding
a listener to the commit cohort when committing a chained transaction.
Extract the inner class from InMemoryDOMDataStore so it can be reused
and subclass it in ChainedTransactionCommitImpl. That makes it also
obvious our commit cannot fail.
Change-Id: I71d9fa60cf63d826ba066c381d8db91af7f8f31e
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Wed, 22 Apr 2015 12:36:13 +0000 (14:36 +0200)]
Publish SnapshotBacked transactions
IMDS-internal transaction implementations can be used by the CDS
frontend. Fix them up for publishing and make them available in SPI as a
Beta API.
Change-Id: Iaa4cd6792db0f262ce41281280f2ccfde6146532
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Sat, 18 Apr 2015 22:35:57 +0000 (00:35 +0200)]
CDS: switch persistence to persisting the candidates
With us being in control of the DataTree, we can now use
DataTreeCandidate for replication and persistence. Add the appropriate
payload and add appropriate hooks.
Exposing the DataTreeCandidate from the cohort is actually pushing
towards having our own cohort type -- ShardDataTreeCohort. With that we
can get rid of DOMStoreThreePhaseCommitCohort, so eliminate its mention
to prevent accidental leakage.
Change-Id: I37a22b445f955330193c762894764feee94bebdb
Signed-off-by: Robert Varga <rovarga@cisco.com>
Tom Pantelis [Wed, 22 Apr 2015 06:09:15 +0000 (02:09 -0400)]
NPE in RaftActor#onGetOnDemandRaftStats
I had a 3 node setup with 1 node down and when I tried to access the
shard info via JConsole I saw this exception :
java.lang.NullPointerException: null value in entry:
member-3-shard-car-config=null
at
com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:33)[114:com.google.guava:18.0.0]
at
com.google.common.collect.RegularImmutableMap.<init>(RegularImmutableMap.java:88)[114:com.google.guava:18.0.0]
at
com.google.common.collect.ImmutableMap.copyOf(ImmutableMap.java:294)[114:com.google.guava:18.0.0]
at
org.opendaylight.controller.cluster.raft.RaftActor.onGetOnDemandRaftStats(RaftActor.java:247)[227:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
The peer address in the map for the down node was null which
ImmutableMap.copyOf doesn't like. I changed it to HashMap.
Change-Id: If9e0dfb3f7f213c11c99d98a5fd9c804c0876776
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Tom Pantelis [Thu, 23 Apr 2015 11:12:17 +0000 (07:12 -0400)]
Fix test failure in TopologyManagerImplTest#testNotifyNodeConnector
Saw a sporadic test failure on jenkins:
java.lang.AssertionError: expected:<2> but was:<1>
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.failNotEquals(Assert.java:743)
at org.junit.Assert.assertEquals(Assert.java:118)
at org.junit.Assert.assertEquals(Assert.java:555)
at org.junit.Assert.assertEquals(Assert.java:542)
at
org.opendaylight.controller.topologymanager.internal.TopologyManagerImplTest.testNotifyNodeConnector(TopologyManagerImplTest.java:835)
The test flushes the pending queue and does a 1 sec sleep before
asserting but that might not be enough time so I added a 5 sec loop to
verify the expected edges map size.
Change-Id: Id7deaab93888819b71c286ca85864068f4d5dac6
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Maros Marsalek [Wed, 22 Apr 2015 07:34:42 +0000 (09:34 +0200)]
Use ImmutableNodes.fromInstanceId in restconf
Build normalized node strcuture from Yang Instance Id using new utilities from
yang-data-impl.
Change-Id: Iee74bc0a7529b0fe7b901c04d2e26f9e2e60fac1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Tomas Cere [Wed, 22 Apr 2015 14:46:31 +0000 (16:46 +0200)]
BUG 3045 : Use non-strict parsing in hello message.
Made NetconfMessageTransformer use non-strict parsing mode when parsing
hello message.
Change-Id: I02cbaa1dccc82409292e1c3f186ad05877297135
Signed-off-by: Tomas Cere <tcere@cisco.com>
Tom Pantelis [Wed, 22 Apr 2015 10:54:07 +0000 (06:54 -0400)]
Fix ShardTest#testCreateSnapshot unit test failures
This unit test is failing on jenkins quite often due to a timing issue
with the tests resulting from recent changes. Basically akka uses a
calling thread dispatcher by default so the call to
createSnapshotProcedure in the SnapshotManager may result in a direct
call to persist which fails b/c it's still in the Idle state. Moving the
setting of currentState to CREATING prior to calling
createSnapshotProcedure fixes the issue.
Change-Id: If68333d042896e25fd3f85dd16da7b84ca56d944
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Jan Hajnar [Thu, 2 Apr 2015 15:26:46 +0000 (17:26 +0200)]
Tests for CDS DataTreeChangedListener
* implemented tests
Change-Id: I6cc8f4011a056f19991165a5b324b3999d25a951
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
Tom Pantelis [Tue, 21 Apr 2015 21:03:23 +0000 (17:03 -0400)]
Return local shard's DataTree from ActorContext#findPrimaryShardAsync
For upcoming patches to optimize local shard transactions, we need
access to the Shard's local DataTree in the TransactionProxy. This can
be returned by ActorContext#findPrimaryShardAsync along with the shard's
ActorSelection.
I added a new class PrimaryShardInfo that encapsulates the shard's
ActorSelection and an Optional whose value contains the Shard's DataTree
if the shard actor is local to the caller.
ActorContext#findPrimaryShardAsync now returns a Future<PrimaryShardInfo>.
Currently, the PrimaryShardInfo contains an absent Optional but will be
implemented to contain the local Shard's DataTree in a subsequent patch.
Another subsequent patch will utilize the DataTree in the
TransactionProxy.
Change-Id: I9bd6425d597c307391d09554fe9ccebd03593180
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Tom Pantelis [Wed, 22 Apr 2015 16:53:12 +0000 (12:53 -0400)]
Reduce non-existent Tx chain logging on close in ShardDataTree
In ShardDataTree#closeTransactionChain, if the Tx chain doesn't exist it
emits a warning. However the CloseTransactionChain message is
broadcasted to all shards so there will always be a non-existent chain
on some shards so I reduced the log level to debug.
Change-Id: Ia4243c4a2987fa4f43d272a7435a9d7b5d43445b
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Tom Pantelis [Wed, 22 Apr 2015 16:42:03 +0000 (12:42 -0400)]
Fix CloseTransactionChain NotSerializableException
In a 3 node cluster, I created a Tx chain on a follower and, on closing
the chain, I saw a NotSerializableException for the
CloseTransactionChain message. CloseTransactionChain is serializable via
protobuff but TransactionChainProxy doesn't call toSerializable.
Change-Id: I09ed1d937f766b527c0e94d02fde2aa9cf4e5e37
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Tom Pantelis [Wed, 22 Apr 2015 17:44:27 +0000 (13:44 -0400)]
Fix compile errors in NetconfDeviceSimulator
Jenkins builds are failing due to compile errors in
NetconfDeviceSimulator apparently due to recent yangtools changes.
Change-Id: If48d23f8907f848def5f448bb95f10fd5486f89e
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
Jan Hajnar [Wed, 1 Apr 2015 15:06:23 +0000 (17:06 +0200)]
Tests for DOMDataTreeListener
* added tests for DOMDataTreeListener registration on notifications
retrieval
Change-Id: I65135f77fcb09cb34579433718193873d84d3282
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
Robert Varga [Thu, 16 Apr 2015 14:30:47 +0000 (16:30 +0200)]
CDS: use internal DataTree instance
Instead of using a captive InMemoryDataStore instance, which is geared
toward interaction with a DOMDataBroker, use the baseline DataTree
instance and utility classes for implementing the data store behavior.
Since most of CDS is geared for interactions with the usual DOMStore
interfaces, this patch provides a set of bare-bone workalike classes,
but taking advantage of the safeties provided by the AKKA actor system.
Immediate benefit should be a speed up in backend processing, as we
eliminate intermediate Future instances when accessing and manipulating
data.
We also gain explicit control over DataTree lifecycle, which enables us
switching to DataTreeCandidate as the replication and persistence unit,
as opposed to individual modifications.
Change-Id: I031d0ed4d82dcc923fd377c13fefba2819923f9b
Signed-off-by: Robert Varga <rovarga@cisco.com>
Tony Tkacik [Wed, 22 Apr 2015 11:04:39 +0000 (13:04 +0200)]
Moved legacy Notification implementation to compat package.
Change-Id: Iba88a62c1d0327c69a16004b123cb0e5749f8ea8
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Tony Tkacik [Wed, 8 Apr 2015 11:54:41 +0000 (13:54 +0200)]
Replaced Helium Notification Broker with new Notifcation Broker.
Change-Id: I01b249b0e7d412d0075f7bb0727e146c2e109fc7
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Robert Varga [Sun, 19 Apr 2015 01:03:10 +0000 (03:03 +0200)]
Clustering: Expose PathArgument writer
In our upcoming clustering work we will be serializing
DataTreeCandidate, which is a PathArgument-indexed tree structure.
Expose PathArgument writer and read methods for later use. Also fix
NormalizedNodeOutputStreamWriter not calling flush() on close().
Change-Id: Ided34a8bc1bc77b5ef357346e3d5b057bffc40c1
Signed-off-by: Robert Varga <rovarga@cisco.com>
Tony Tkacik [Wed, 22 Apr 2015 08:01:07 +0000 (08:01 +0000)]
Active ennunciate for AD-SAL only on JDK 7
Change-Id: I204ea5feb6a1df103d9321c88eec958e1d1ee263
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Moiz Raja [Tue, 21 Apr 2015 20:25:27 +0000 (20:25 +0000)]
Merge "Elide front-end 3PC for single-shard Tx"
Tony Tkacik [Tue, 21 Apr 2015 13:25:28 +0000 (13:25 +0000)]
Merge "BUG-3033: DataBroker should extend DataTreeChangeService"
Robert Varga [Tue, 21 Apr 2015 11:49:40 +0000 (13:49 +0200)]
BUG-3033: DataBroker should extend DataTreeChangeService
The implementation already implements it, but users are not awat of this
capability, as they need to use an explicit cast. Fix it by requiring
all DataBroker implementations to also provide DataTreeChangeService.
Change-Id: Idf61a665b303e03106c223f9bacd9a827b2d9046
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Tue, 21 Apr 2015 11:35:19 +0000 (13:35 +0200)]
Simplify instantiation of NormalizedNodeInputStreamReader
Constructor which takes a DataInput does not need to throw, so remove
that declaration. That makes it easier for users to instantiate it.
Change-Id: Ia9267c6610fe2ebbfa2cb24a4475bba5c486f6df
Signed-off-by: Robert Varga <rovarga@cisco.com>
Tomas Cere [Tue, 7 Apr 2015 09:49:40 +0000 (11:49 +0200)]
Stop SubtreeFitler from rereading reply even if no filter element is present.
Change-Id: Ib8c28e4289aa0d8b6c228c5daecec713c1c874f3
Signed-off-by: Tomas Cere <tcere@cisco.com>
Tony Tkacik [Tue, 21 Apr 2015 10:41:20 +0000 (10:41 +0000)]
Merge "Add assertNotNull to prevent null analysis warnings"
Tony Tkacik [Tue, 21 Apr 2015 07:41:12 +0000 (07:41 +0000)]
Merge "Improve xml lookup in edit-config rpc for md-sal"
Tony Tkacik [Tue, 21 Apr 2015 07:40:38 +0000 (07:40 +0000)]
Merge "Bug 2998 - RESTCONF not recogizing top-level input."
Moiz Raja [Tue, 21 Apr 2015 07:15:45 +0000 (07:15 +0000)]
Merge "Cleanup: Remove passing around of DataPersistenceProvider"
Moiz Raja [Tue, 21 Apr 2015 07:15:35 +0000 (07:15 +0000)]
Merge "Address comment in gerrit 17266"
Moiz Raja [Tue, 21 Apr 2015 07:15:28 +0000 (07:15 +0000)]
Merge "Bug 2948: Perform create snapshot synchronously"
Tony Tkacik [Mon, 20 Apr 2015 15:23:49 +0000 (15:23 +0000)]
Merge "Netconf testtool stress client"
Tony Tkacik [Mon, 20 Apr 2015 15:12:52 +0000 (15:12 +0000)]
Merge "BUG-3018: report DataTreeChangeListener initial state"
Maros Marsalek [Sat, 18 Apr 2015 17:44:46 +0000 (19:44 +0200)]
Netconf testtool stress client
Change-Id: I4bd351fe17e596e9153a48bf233432b8c8b19ea9
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Robert Varga [Sat, 18 Apr 2015 19:26:27 +0000 (21:26 +0200)]
BUG-3018: report DataTreeChangeListener initial state
Once we have make callout to AbstractDOMStoreTreeChangePublisher, also
examine our current state to see if we should report an initial event.
Requires https://git.opendaylight.org/gerrit/18583 in yangtools.
Change-Id: If6ccdb32057d1cf54bfc83888bf1540142c3ec7f
Signed-off-by: Robert Varga <rovarga@cisco.com>
Robert Varga [Fri, 17 Apr 2015 21:29:18 +0000 (23:29 +0200)]
Improve DataExistsReply construction
DataExistsReply is immutable and has low cardinality. Pre-construct the
two possible instances and the two possible serializable instances and
expose them through a static factory method, which reuses these
instances, thus lowering garbage creation. Also remove unneeded
autoboxing of boolean to Boolean in ShardTransaction.
Change-Id: I2b1e0db5abb00a7b98eda4c3cc21ad35b9a921c6
Signed-off-by: Robert Varga <rovarga@cisco.com>
Tony Tkacik [Mon, 20 Apr 2015 08:28:55 +0000 (08:28 +0000)]
Merge "Parse Xml Netconf msgs without defer-node-expansion option"
Tony Tkacik [Mon, 20 Apr 2015 08:24:07 +0000 (08:24 +0000)]
Merge "Fix compilation with JDK8"
Jan Hajnar [Fri, 17 Apr 2015 14:42:17 +0000 (16:42 +0200)]
Bug 2998 - RESTCONF not recogizing top-level input.
* added choice resolution when top level element is from case node.
Resolved choice is then fed into parser.
Change-Id: Iadea8cc3d190afb13fa2447edd05abd8708e591a
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
Maros Marsalek [Sat, 18 Apr 2015 21:10:38 +0000 (23:10 +0200)]
Improve xml lookup in edit-config rpc for md-sal
Lookup the attributes of rpc in xml payload directly to improve lookup
performance instead of using utility XmlElement class
Change-Id: I47e8f47f279ccbd271e5ed903a352ebbc307d0f9
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Robert Varga [Sat, 18 Apr 2015 15:40:19 +0000 (17:40 +0200)]
Add assertNotNull to prevent null analysis warnings
Eclipse can perform null-derefence analysis, which triggers a warning
here.
Change-Id: I42f85f98009717214c8029b5517b1142431dfbc8
Signed-off-by: Robert Varga <rovarga@cisco.com>
Maros Marsalek [Sat, 18 Apr 2015 18:41:15 +0000 (20:41 +0200)]
Improve performance of XmlElement.getName
getLocalName on a DOM element was called 3x instead of 1.
Change-Id: Ibc758bd440f601adc76d8f62972950d30906610b
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>