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
Ed Warnicke [Wed, 6 May 2015 15:13:00 +0000 (15:13 +0000)]
Merge "Bug 3135 - Fixed support for InterestListener" 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
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>
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>
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
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
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
Tony Tkacik [Tue, 5 May 2015 13:49:48 +0000 (13:49 +0000)]
Merge "Bug 3068 - checkRpcResponse - CancellationException" into stable/lithium
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
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
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
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>
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>
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)
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)
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>
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>
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>
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>
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)
Tony Tkacik [Mon, 4 May 2015 08:22:32 +0000 (08:22 +0000)]
Merge "Fix mac address generator in stress client" into stable/lithium
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
Tony Tkacik [Mon, 4 May 2015 08:22:16 +0000 (08:22 +0000)]
Merge "Multiple clients for stresstool" into stable/lithium
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)
Moiz Raja [Fri, 1 May 2015 03:26:08 +0000 (03:26 +0000)]
Merge "Remove "Unavailable" properties from ShardStats" into stable/lithium
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>
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>
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>
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 [Wed, 29 Apr 2015 16:57:19 +0000 (16:57 +0000)]
Merge "Bug 2932: NPE on bundle activation" 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
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>
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>
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>
Tony Tkacik [Wed, 29 Apr 2015 14:37:34 +0000 (14:37 +0000)]
Merge "Make TCP netconf endpoint configurable" into stable/lithium
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>
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
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>
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>
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>
Tony Tkacik [Wed, 29 Apr 2015 07:04:37 +0000 (07:04 +0000)]
Merge "BUG 3066 : Optimistic lock failed, on NetconfStateUpdate" into stable/lithium
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
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>
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>
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>
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)
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)
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 [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
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>
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>
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>
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>
Tony Tkacik [Fri, 24 Apr 2015 21:15:56 +0000 (21:15 +0000)]
Merge "Fix ReplicationAndSnapshotsIntegrationTest failure"
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>
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"
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 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>
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>