controller.git
9 years agoMerge "Add replication capability to Shard"
Ed Warnicke [Fri, 1 Aug 2014 01:26:27 +0000 (01:26 +0000)]
Merge "Add replication capability to Shard"

9 years agoAdding the wrongly removed module back in pom.xml 52/9552/1
Harman Singh [Fri, 1 Aug 2014 00:37:13 +0000 (17:37 -0700)]
Adding the wrongly removed module back in pom.xml

Change-Id: I242bc87cbf193ed65b6a7f5ffc8e2d466a48b80e
Signed-off-by: Harman Singh <harmasin@cisco.com>
9 years agoAdding actor supervisor, more logs and tests 15/9515/2
Harman Singh [Thu, 31 Jul 2014 01:42:26 +0000 (18:42 -0700)]
Adding actor supervisor, more logs and tests

Actor Supervisor will start rpcRegistry and rpcBroker actors and will resume them in case of exception
More logs have been added along with some unit test cases of xmlutil

Change-Id: I30101bd3b8ac6821b58b3e1a2421f7f1af26bcd1
Signed-off-by: Harman Singh <harmasin@cisco.com>
9 years agoUpdating cluster RPC code making it work 60/9460/3
Harman Singh [Wed, 30 Jul 2014 02:03:08 +0000 (19:03 -0700)]
Updating cluster RPC code making it work

Added XMLUtils to serialize and deserialize instance identifier objects and the values insides path arguments with proper object type. This code use Yangtools existing utility, but modify that code to make sure
right type is picked up. We can think of adding it directly in yang tools also and remove it from here
Added Preconditions check for pojos

Change-Id: Ieb73b4ee660d2e058d0a62952799fc6f39d4c6b5
Signed-off-by: Harman Singh <harmasin@cisco.com>
9 years agoRemoving unused org.objectweb.asm from northbound.commons 49/9549/2
Madhu Venugopal [Thu, 31 Jul 2014 21:04:47 +0000 (14:04 -0700)]
Removing unused org.objectweb.asm from northbound.commons

Change-Id: Ie5789f1574ea5565be66a3a4dd007fa976a920f0
Signed-off-by: Madhu Venugopal <mavenugo@gmail.com>
9 years agoAdd replication capability to Shard 23/9523/5
Moiz Raja [Thu, 31 Jul 2014 09:02:55 +0000 (02:02 -0700)]
Add replication capability to Shard

This commit integrates the distributed data store with our Raft implementation.

Shard now extends RaftActor which provides it the replication capabilities required.

Other notable changes are,
- The FindPrimary algorithm has been changed to find the first replica for a shard.
  The shard then forwards requests to create a transaction or transaction chain to
  the leader
- Changed the package name for Raft internal messages from "internal" to "base" to be
  more BND tool friendly
- Fix some issues with Serialization of Raft messages
- Create a NoOpTransaction when no Primary can be found. The commit for this transaction
  will always fail. The NoOpTransaction returns absent for reads in all cases.
- Add PeerAddressResolution capability to Raft. What this basically does is given a static
  configuration where a shard has 'n' peers, you can pass the names of those peers
  to the shard and resolve their addresses at a later time. This allows the Shard to ensure
  consensus even in a situation where it is the first one to come up but it's peers are still
  not running

Change-Id: I3087deb5eb4418cd629a707ba14f43858db1f463
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoMerge "broken build - missing implementation of method getAnyXmlNodeSerializer"
Moiz Raja [Thu, 31 Jul 2014 14:19:12 +0000 (14:19 +0000)]
Merge "broken build - missing implementation of method getAnyXmlNodeSerializer"

9 years agobroken build - missing implementation of method getAnyXmlNodeSerializer 34/9534/1
Jozef Gloncak [Thu, 31 Jul 2014 13:47:40 +0000 (15:47 +0200)]
broken build - missing implementation of method getAnyXmlNodeSerializer

Change-Id: Ib7f22015462cb224e11c3c267cfbac7627eeb800
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoBUG-1228: Optimize AbstractForwardedDataBroker a bit 04/9504/1
Robert Varga [Wed, 30 Jul 2014 18:42:00 +0000 (20:42 +0200)]
BUG-1228: Optimize AbstractForwardedDataBroker a bit

Profiling OFP with datastore backend has revealed that we spend about 9%
of CPU in AbstractForwardedDataBroker$1.compare(). This turns out to be
a comparator, which compares two YangInstanceIdentifiers by their path
length -- and to do that it iterates fully through both of them.

We perform three optimizations:
- make the comparator itself shareable, so we do not instantiate it
  (6000 during the profiling run)
- make the .sortedEntries() smart about empty maps
- teach the comparator to abort iteration as soon as the result is
  known

At the same time we import YangInstanceIdentifier, making the code a bit
more readable.

Change-Id: I38d3629ab33dac9e2e29b092e3a89d0821d09b07
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Make Raft messages serializable"
Ed Warnicke [Wed, 30 Jul 2014 16:08:50 +0000 (16:08 +0000)]
Merge "Make Raft messages serializable"

9 years agoMerge "Serialization/Deserialization and a host of other fixes"
Ed Warnicke [Wed, 30 Jul 2014 12:05:21 +0000 (12:05 +0000)]
Merge "Serialization/Deserialization and a host of other fixes"

9 years agoMerge "Fix the build errors due to the class change of InstanceIdentifier to YangInst...
Tony Tkacik [Wed, 30 Jul 2014 08:05:09 +0000 (08:05 +0000)]
Merge "Fix the build errors due to the class change of InstanceIdentifier to YangInstanceIdentifier"

9 years agoBUG-1416 clean up flow statistic models 93/9293/4
Michal Rehak [Thu, 24 Jul 2014 15:25:32 +0000 (17:25 +0200)]
BUG-1416 clean up flow statistic models

- duplicate flow model removed from statistics augment
- statistics notification processing adapted
- sal-binding-dom-it fixed

Change-Id: I7ad5bae45b47f5ea8ed918459fc83cbd839b0e3a
Signed-off-by: Michal Rehak <mirehak@cisco.com>
9 years agoMerge "Created Network Service Functions Features"
Madhu Venugopal [Wed, 30 Jul 2014 02:24:07 +0000 (02:24 +0000)]
Merge "Created Network Service Functions Features"

9 years agoMake Raft messages serializable 00/9300/8
Kamal Rameshan [Thu, 24 Jul 2014 20:21:52 +0000 (13:21 -0700)]
Make Raft messages serializable

- Make AppendEntries a protocol buffer message
- Create the Payload extension mechanism to be used for AppendEntries by extensions
  of RaftActors to define their custom Payloads
- Modified tests etc as appropriate

Change-Id: I2d5af41b7ca8ad7a8b94515ebc5adaa78803ad15
Signed-off-by: Kamal Rameshan <kramesha@cisco.com>
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoSerialization/Deserialization and a host of other fixes 55/9455/2
Moiz Raja [Thu, 10 Jul 2014 10:39:22 +0000 (03:39 -0700)]
Serialization/Deserialization and a host of other fixes

- Hande Cluster MemberUp and MemberRemoved events in ShardManager

- Cohort messages and close listener messages switched
to use protobuff

- Distributed Datastore switch messages to use protobuff
CreateTransaction
CreateTransactionReply
CreateTransactionChain
CreateTransactionChainReply distributed datastore messages
switched to protobuff

- ShardManager messages switch to protobuff

- DataChanged and other messages switch to protobuf in
distributed datastore

- Fixed few things found during testing
1. ShardStrategy - setting of configuration
2. NodeToNormalizedNodeBuilder - leaf node/leafsetentry node checks
3. DataChanged event - passing of scope instanceidentifier used during deserialization

- Introducing JMX MBeans for distributed datastore

-Fixed issues which were preventing remote Shards from talking to each other

- Fixed a number of issues related to deserialization

- Add distributed datastore to the build

- Switch from InstanceIdentifier to YangInstanceIdentifier

Change-Id: I0d15dc482cb2b0fb2170b1344bad9fa3b421e8e0
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoMerge "Fixed unneeded wrapping of guava for karaf"
Moiz Raja [Tue, 29 Jul 2014 21:56:13 +0000 (21:56 +0000)]
Merge "Fixed unneeded wrapping of guava for karaf"

9 years agoFix the build errors due to the class change of InstanceIdentifier to YangInstanceIde... 44/9444/1
Sharon Aicler [Tue, 29 Jul 2014 16:29:55 +0000 (09:29 -0700)]
Fix the build errors due to the class change of InstanceIdentifier to YangInstanceIdentifier

Change-Id: I208aee4e916230ef87053d17f02e5096fbbc8a1d
Signed-off-by: Sharon Aicler <saichler@cisco.com>
9 years agoBUG-1092: adjust to YangInstanceIdentifier 28/9428/5
Robert Varga [Tue, 29 Jul 2014 10:15:49 +0000 (12:15 +0200)]
BUG-1092: adjust to YangInstanceIdentifier

This is a compation to I1e30a0df93d8bfb891d047c58abcb117d4006c76,
adjusting the components to use the new name.

Change-Id: I615763240581e850f7752f82e44d752c8fceb169
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Modify the FindPrimary implementation so that it works correctly with a config...
Ed Warnicke [Tue, 29 Jul 2014 11:30:19 +0000 (11:30 +0000)]
Merge "Modify the FindPrimary implementation so that it works correctly with a configuration"

9 years agoMerge "Implementation of ModuleShardStrategy"
Ed Warnicke [Tue, 29 Jul 2014 11:30:00 +0000 (11:30 +0000)]
Merge "Implementation of ModuleShardStrategy"

9 years agoMerge changes I1d768b2b,I9302e88a
Tony Tkacik [Tue, 29 Jul 2014 10:48:46 +0000 (10:48 +0000)]
Merge changes I1d768b2b,I9302e88a

* changes:
  Fix identity-ref serialization in netconf.
  BUG-1083 Netconf connector rework sal facade.

9 years agoMerge changes Ifd28301d,I38220acb,I9bad24df
Tony Tkacik [Tue, 29 Jul 2014 09:29:39 +0000 (09:29 +0000)]
Merge changes Ifd28301d,I38220acb,I9bad24df

* changes:
  WIP: Backwards compatible MountPointService
  Fix children element lookup in XmlElement
  Fix config attributes with same names for different modules.

9 years agoMerge "BUG-1410 Fix config yang generator parsing dependency containers"
Tony Tkacik [Tue, 29 Jul 2014 09:28:17 +0000 (09:28 +0000)]
Merge "BUG-1410 Fix config yang generator parsing dependency containers"

9 years agoMerge changes I442a0ee9,I11825b90
Tony Tkacik [Tue, 29 Jul 2014 08:04:05 +0000 (08:04 +0000)]
Merge changes I442a0ee9,I11825b90

* changes:
  Fix a typo
  BUG-1281: call static methods

9 years agoBUG-1410 Fix config yang generator parsing dependency containers 23/9423/1
Maros Marsalek [Tue, 29 Jul 2014 07:58:10 +0000 (09:58 +0200)]
BUG-1410 Fix config yang generator parsing dependency containers

Check if the grouping used is of type service-ref.
Until now, any container containing grouping was considered a dependency.
Add test for this case.

Change-Id: I9299b2b39e393d940c71a41f8d33d737564f2530
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoFix identity-ref serialization in netconf. 71/9371/6
Maros Marsalek [Mon, 28 Jul 2014 08:33:33 +0000 (10:33 +0200)]
Fix identity-ref serialization in netconf.

Identity-ref attributes did not contain their namespace.

Change-Id: I1d768b2b59073d9fa322b66b002eddf39270bf17
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoWIP: Backwards compatible MountPointService 50/9150/19
Maros Marsalek [Fri, 18 Jul 2014 12:29:39 +0000 (14:29 +0200)]
WIP: Backwards compatible MountPointService

Change-Id: Ifd28301ddd08d4edba93dba04a4d38c2ee13078a
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBUG-1083 Netconf connector rework sal facade. 34/9234/18
Maros Marsalek [Tue, 22 Jul 2014 13:02:25 +0000 (15:02 +0200)]
BUG-1083 Netconf connector rework sal facade.

Change-Id: I9302e88ac3e831e2966e2baec9493a03e0a96be4
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoFix children element lookup in XmlElement 11/9311/4
Maros Marsalek [Fri, 25 Jul 2014 11:13:47 +0000 (13:13 +0200)]
Fix children element lookup in XmlElement

Change-Id: I38220acbfedf8f1b8554516f6abda4c1a16dd2ee
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoFix config attributes with same names for different modules. 91/9291/9
Maros Marsalek [Thu, 24 Jul 2014 15:09:53 +0000 (17:09 +0200)]
Fix config attributes with same names for different modules.

Yang does not allow attributes in different cases to have the same name.
In yang modules for config, the configuration is located in cases and if 2 cases in same yang module contain child with same name, the transformation of data from CompositeNode to NormalizedNode

NOTE: This might break bgpcep and SP distribution, check.

Change-Id: I9bad24df9ac149da74b745ff648c72345e33deb1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Fix for -Pintegrationtest profile"
Moiz Raja [Tue, 29 Jul 2014 04:26:34 +0000 (04:26 +0000)]
Merge "Fix for -Pintegrationtest profile"

9 years agoFix for -Pintegrationtest profile 20/9420/1
Ed Warnicke [Tue, 29 Jul 2014 00:44:57 +0000 (19:44 -0500)]
Fix for -Pintegrationtest profile

The -Pintegrationtest profile was not including
the restconf config file.

Change-Id: Ic62da8f4532aeeda19a1836c08214fa795d84b98
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoModify the FindPrimary implementation so that it works correctly with a configuration 87/8887/6
Moiz Raja [Thu, 10 Jul 2014 03:18:14 +0000 (20:18 -0700)]
Modify the FindPrimary implementation so that it works correctly with a configuration

Change-Id: Ie41b688adf54de06332bbe5add7aba8107eb4264
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoImplementation of ModuleShardStrategy 83/8883/7
Moiz Raja [Thu, 10 Jul 2014 02:03:54 +0000 (19:03 -0700)]
Implementation of ModuleShardStrategy

ModuleShardStrategy finds a shard based on a module name only. This will allow it partition a single
large DOM tree into multiple shards based on configuration

Change-Id: I6e287fc48a08da58d261e80b59419d4311164aa3
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoInitial support for multiple-shards 82/8882/6
Moiz Raja [Wed, 9 Jul 2014 22:11:23 +0000 (15:11 -0700)]
Initial support for multiple-shards

Change-Id: Ic58d2dc9198b88c689143a9d85a612016b6bfa22
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoChanged RegisterChangeListener and RegisterChangeListenerReply 71/8871/6
Basheeruddin Ahmed [Wed, 9 Jul 2014 19:41:38 +0000 (12:41 -0700)]
Changed RegisterChangeListener and RegisterChangeListenerReply
in distributed datastore to be based on protocol buffer
ListenerRegistrationMessages

Change-Id: Ia1e427ca4d60336bb1cbf774c19fada4a1d0aed1
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
9 years agoReadData and ReadDataReply protobuff messages 67/8867/6
Basheeruddin Ahmed [Wed, 9 Jul 2014 17:36:48 +0000 (10:36 -0700)]
ReadData and ReadDataReply protobuff messages
in distributed datastore
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
Change-Id: Ia8353fc70d7af8589de855fee82ec79f06c7a36b
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
9 years agoMake CompositeModification serializable using protocol buffers 34/8834/7
Moiz Raja [Wed, 9 Jul 2014 00:20:55 +0000 (17:20 -0700)]
Make CompositeModification serializable using protocol buffers

Change-Id: I3e91452b0244c6adec84c000e83d7f993b2a59b7
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoSwitch to using protocol buffer serialization for the WriteData message 28/8828/7
Moiz Raja [Tue, 8 Jul 2014 21:57:48 +0000 (14:57 -0700)]
Switch to using protocol buffer serialization for the WriteData message

- This commit also fixes an issues with the NodeToNormalizedNodeBuilder where an empty container node was decode with a leaf node within
- MergeData and WriteData are passed in their serialized forms from the TransactionProxy as well

Change-Id: I22eab6059becd427a9f0fae1a9273c8c4e293ee5
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoStore schemaContext in ActorContext so that all proxy objects can have access to it 22/8822/7
Moiz Raja [Tue, 8 Jul 2014 19:44:05 +0000 (12:44 -0700)]
Store schemaContext in ActorContext so that all proxy objects can have access to it

Use it for MergeData and WriteData message construction

Change-Id: I20df92fc77c41016df7cc6f737226368b25b5a0f
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoUse Protocol Buffers to Serialize DeleteData 21/8821/6
Moiz Raja [Tue, 8 Jul 2014 19:20:12 +0000 (12:20 -0700)]
Use Protocol Buffers to Serialize DeleteData

Change-Id: I2d96007610a28929e1e046a11726b33bec67394f
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoIncluded MergeData and updated WriteData,DeleteData 18/8818/6
Basheeruddin Ahmed [Tue, 8 Jul 2014 19:03:00 +0000 (12:03 -0700)]
Included MergeData and updated WriteData,DeleteData
protobuff messages

Change-Id: Id374c10dd47f725630cf7a92e9b0b5bc9c7764d5
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
9 years agoReadData message using protocol buffer 15/8815/6
Basheeruddin Ahmed [Tue, 8 Jul 2014 18:40:40 +0000 (11:40 -0700)]
ReadData message using protocol buffer
and InstanceIdentifierUtils

Change-Id: I57100033200fc38d69ab6aa04841e8bc7546839c
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
9 years agoPattern for switching from POJO messages to Protocol Buffer messages 14/8814/6
Moiz Raja [Tue, 8 Jul 2014 18:17:52 +0000 (11:17 -0700)]
Pattern for switching from POJO messages to Protocol Buffer messages

Change-Id: I053581bc66cdd2627132af7366e01d8276a7c27e
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoNormalizedNode serialization using protocol buffer 99/8799/6
Basheeruddin Ahmed [Tue, 8 Jul 2014 14:10:55 +0000 (07:10 -0700)]
NormalizedNode serialization using protocol buffer

Utilization of CreateTransactionReply protocol buffer
message in Distributed Datastore

Subsequent commits will utilize other portocol buffer
messages in Distributed Datastore

Change-Id: I64c08d1998bab29a92351fc1fd5897d0faaf4081
Signed-off-by: Basheeruddin Ahmed <syedbahm@cisco.com>
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoFix a typo 01/9401/1
Robert Varga [Mon, 28 Jul 2014 19:31:45 +0000 (21:31 +0200)]
Fix a typo

Just a test name fix.

Change-Id: I442a0ee951475fb247eca4117ad61ed315a39dfc
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1281: call static methods 00/9400/1
Robert Varga [Mon, 28 Jul 2014 19:11:36 +0000 (21:11 +0200)]
BUG-1281: call static methods

This is just a cleanup of warnings.

Change-Id: I11825b90b415c77074ff8684feaba918876e0c95
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Introduction of XSQL"
Tony Tkacik [Mon, 28 Jul 2014 17:45:38 +0000 (17:45 +0000)]
Merge "Introduction of XSQL"

9 years agoMerge "Wiring rest-connector with config subsytem."
Tony Tkacik [Mon, 28 Jul 2014 15:05:01 +0000 (15:05 +0000)]
Merge "Wiring rest-connector with config subsytem."

9 years agoMerge "Improve RESTCONF QName parsing speed"
Tony Tkacik [Mon, 28 Jul 2014 15:02:06 +0000 (15:02 +0000)]
Merge "Improve RESTCONF QName parsing speed"

9 years agoMerge "Updated remote rpc code after integration tests. Rpc execution is failing...
Ed Warnicke [Mon, 28 Jul 2014 14:06:45 +0000 (14:06 +0000)]
Merge "Updated remote rpc code after integration tests. Rpc execution is failing because of one existing defect"

9 years agoWiring rest-connector with config subsytem. 98/9298/5
Ed Warnicke [Thu, 24 Jul 2014 19:12:18 +0000 (14:12 -0500)]
Wiring rest-connector with config subsytem.

Change-Id: If826bb7352101833acd288b81cbcf7cec2f28b43
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoImprove RESTCONF QName parsing speed 43/9343/4
Robert Varga [Sat, 26 Jul 2014 04:32:53 +0000 (06:32 +0200)]
Improve RESTCONF QName parsing speed

SchemaContext provides useful (and optimized) methods for looking up
modules. Eliminate home-grown version of findModuleByName(). Requires
https://git.opendaylight.org/gerrit/#/c/9351/ .

Change-Id: I4c4e07e23a614b46b01a87485965af0c066aa693
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoIntroduction of XSQL 04/9204/3
Sharon Aicler [Mon, 21 Jul 2014 17:47:41 +0000 (10:47 -0700)]
Introduction of XSQL

XSQL is SQL wrapper for MD-SAL Data Broker
which provides query capabilities for MD-SAL

YANG model is rendered as set of virtual tables
and where leafs are columns in that table.

For more information see

https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:XSQL

Change-Id: I9224c100ffe5e50559fc7181f1c9a79b3f7b2a32
Signed-off-by: Sharon Aicler <saichler@cisco.com>
9 years agoMerge "BUG-432: migrate users of Registration as appropriate"
Tony Tkacik [Mon, 28 Jul 2014 12:24:45 +0000 (12:24 +0000)]
Merge "BUG-432: migrate users of Registration as appropriate"

9 years agoMerge "RPC registrations should not throw"
Tony Tkacik [Mon, 28 Jul 2014 12:04:31 +0000 (12:04 +0000)]
Merge "RPC registrations should not throw"

9 years agoMerge "Deprecating unused get{Provider,Consumer} Functionality"
Tony Tkacik [Mon, 28 Jul 2014 09:01:25 +0000 (09:01 +0000)]
Merge "Deprecating unused get{Provider,Consumer} Functionality"

9 years agoMerge "Removed BundleContext from Broker.register{Consumer,Provider} (Part 2)"
Tony Tkacik [Mon, 28 Jul 2014 09:01:02 +0000 (09:01 +0000)]
Merge "Removed BundleContext from Broker.register{Consumer,Provider} (Part 2)"

9 years agoMerge "Removed BundleContext from Broker.register{Consumer,Provider}"
Tony Tkacik [Mon, 28 Jul 2014 09:00:21 +0000 (09:00 +0000)]
Merge "Removed BundleContext from Broker.register{Consumer,Provider}"

9 years agoMerge "Optimize RESTCONF module/node parsing"
Tony Tkacik [Mon, 28 Jul 2014 08:56:53 +0000 (08:56 +0000)]
Merge "Optimize RESTCONF module/node parsing"

9 years agoMerge "Improve RESTCONF thread safety when reconfiguring"
Tony Tkacik [Mon, 28 Jul 2014 08:56:39 +0000 (08:56 +0000)]
Merge "Improve RESTCONF thread safety when reconfiguring"

9 years agoMerge "Allow getChildNodes() to become a Collection"
Tony Tkacik [Mon, 28 Jul 2014 08:56:15 +0000 (08:56 +0000)]
Merge "Allow getChildNodes() to become a Collection"

9 years agoMerge "BUG-1381: do not use JavassistUtils.getLock()"
Tony Tkacik [Mon, 28 Jul 2014 08:53:03 +0000 (08:53 +0000)]
Merge "BUG-1381: do not use JavassistUtils.getLock()"

9 years agoBUG-432: migrate users of Registration as appropriate 63/9363/4
Robert Varga [Sun, 27 Jul 2014 20:27:21 +0000 (22:27 +0200)]
BUG-432: migrate users of Registration as appropriate

This patch adjust all users to the non-generic nator of Registration,
plus migrates a few to ListenerRegistration.

Change-Id: I69c1c61890f866d24a4b50e685bddba32bac7815
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRPC registrations should not throw 16/9316/2
Robert Varga [Fri, 25 Jul 2014 12:39:27 +0000 (14:39 +0200)]
RPC registrations should not throw

Change-Id: I7f7f13ea7bdce3db5e833e3532c2e5db873daf74
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoEnhance code documentation and add TODOs 04/9304/4
Moiz Raja [Fri, 25 Jul 2014 00:47:41 +0000 (17:47 -0700)]
Enhance code documentation and add TODOs

This commit is based on a code walk through done with Colin Dixon and
Abhishek Kumar.

TODOs and FIXMEs have been added to guide further development.

The major things that need to be completed are,
1. Installing snapshots
2. Adding and removing a new peer with consensus
3. Optimizing AppendEntries (faster synchronization)

Change-Id: Ic788e050fe8fa591176a927906004fd2277e29fa
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoFix bug in ReplicatedLogImpl#removeFrom and use akka-persistence for removing entries 82/9182/4
Moiz Raja [Sun, 20 Jul 2014 07:59:05 +0000 (00:59 -0700)]
Fix bug in ReplicatedLogImpl#removeFrom and use akka-persistence for removing entries

The way things were coded in removeFrom assumed that when a set of entries was deleted
from the persistent log the sequence number would be reset. This is most likely to not be
the case.

Switched to usage which is more appropriate for akka-persistence namely to persist
the operation to delete entries in the akka-persistence journal and on recovery take the
appropriate action.

Also since now we are using the akka-persistence journal purely for persistence we can safely
add other stuff to the journal and so I added UpdateElectionTerm also to the journal. This
takes care of persisting the election information in the same journal.

Change-Id: I34202535711660f19b4cdd9e71a7b55fde7433ce
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoRemove the confusion around suggestedState 81/9181/4
Moiz Raja [Sun, 20 Jul 2014 02:49:42 +0000 (19:49 -0700)]
Remove the confusion around suggestedState

The code has been refactored so that it is clear how exactly a state is
applied. Earlier the state was being passed around and the decision of which
state was returned was not clear.

Tests were modified as appropriate.

Change-Id: Ifb3d339affcc206d1358119defd4b7400e247f8b
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoFix issue when adding new peers 45/9145/4
Moiz Raja [Fri, 18 Jul 2014 12:03:48 +0000 (05:03 -0700)]
Fix issue when adding new peers

- There a couple of cases that were not being handled correctly
in Follower#handleAppendEntries this had to be fixed
- ReplicatedLogImpl#size was not properly reported

Change-Id: I8af214cb46a5bae844d1e20e8788502255ffeab5
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoTest driver and changes related to it 32/9132/6
Kamal Rameshan [Thu, 17 Jul 2014 23:43:40 +0000 (16:43 -0700)]
Test driver and changes related to it

Change-Id: I6f638dd4f4ce56be2ad31f056394568adeba165c
Signed-off-by: Kamal Rameshan <kramesha@cisco.com>
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoInitial implementation of saving and installing snapshots 87/9087/6
Moiz Raja [Wed, 16 Jul 2014 16:17:32 +0000 (09:17 -0700)]
Initial implementation of saving and installing snapshots

This commit basically sketches out how creating and installing snapshots would fit into
the overall design. This has not been tested yet.

Change-Id: I0c575049e8dbda6b63e49dab80ff0980546029d3
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoTest handling of the Replicate message by the Leader 86/9086/4
Moiz Raja [Wed, 16 Jul 2014 12:35:58 +0000 (05:35 -0700)]
Test handling of the Replicate message by the Leader

Refactored some code, added comments and a test

Change-Id: I0719dbdb4f1f6da611b090faa6cabc84b85e50df
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoTest RaftActor using a simple program 98/8998/7
Moiz Raja [Mon, 14 Jul 2014 01:52:50 +0000 (18:52 -0700)]
Test RaftActor using a simple program

Change-Id: Id0a8091c8f6ee89178bf774be398647c60a25d03
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoImplement handling of AppendEntries from a recipient perspective 73/8973/4
Moiz Raja [Sun, 13 Jul 2014 01:46:15 +0000 (18:46 -0700)]
Implement handling of AppendEntries from a recipient perspective

This commit includes everything that a recipient will do when it receives an AppendEntries
except applying of the state to the state machine

Change-Id: I9131b7b73624527efb1a7cb7f0c999fa03f90dfd
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoProperly handle RequestVote in all states 72/8972/3
Moiz Raja [Sat, 12 Jul 2014 12:39:52 +0000 (05:39 -0700)]
Properly handle RequestVote in all states

Change-Id: I31987824a2219be230e439ecb152e031c749d4ef
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoComplete Candidate behavior implementation 61/8961/3
Moiz Raja [Sat, 12 Jul 2014 00:12:59 +0000 (17:12 -0700)]
Complete Candidate behavior implementation

Change-Id: I483ec7d0a3430e186decda7ac45258b47132694b
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoMerge "Remove RaftReplicator and move hearbeat logic to the leader"
Moiz Raja [Sat, 26 Jul 2014 21:43:57 +0000 (21:43 +0000)]
Merge "Remove RaftReplicator and move hearbeat logic to the leader"

9 years agoMerge "Implement behavior common to a RaftActor in all it's states"
Moiz Raja [Sat, 26 Jul 2014 21:42:54 +0000 (21:42 +0000)]
Merge "Implement behavior common to a RaftActor in all it's states"

9 years agoMerge "Initial code/design for an Akka Raft implementation"
Moiz Raja [Sat, 26 Jul 2014 21:40:02 +0000 (21:40 +0000)]
Merge "Initial code/design for an Akka Raft implementation"

9 years agoCreated Network Service Functions Features 19/7919/7
Mathieu Lemay [Wed, 11 Jun 2014 21:11:34 +0000 (17:11 -0400)]
Created Network Service Functions Features

As discussed,
The ADSAL NSFs have a bad inter-dependencies amongst each other and the current set of Feature splits will not work.
We can consider all the interdependent (bidirectional dependencies) bundles as a whole and install them as odl-nsf-managers and not expose individual features.
Once we redesign the NSFs to become proper components, we can define individual features.

Also fixed the pom hierarchy.

Sample :
opendaylight-user@root>feature:list | grep odl
odl-nsf-all                    | 1.4.2-SNAPSHOT      | x         | nsf-1.4.2-SNAPSHOT                    | OpenDaylight :: NSF :: All Network Service Functio
odl-nsf-managers               | 1.4.2-SNAPSHOT      | x         | nsf-1.4.2-SNAPSHOT                    | OpenDaylight :: AD-SAL :: Network Service Function
odl-adsal-northbound           | 1.4.2-SNAPSHOT      | x         | nsf-1.4.2-SNAPSHOT                    | OpenDaylight :: AD-SAL :: Northbound APIs

Change-Id: Id58223686d2dd345c9bfcdf4162ad105a621b616
Signed-off-by: Mathieu Lemay <mlemay@inocybe.com>
Signed-off-by: Ed Warnicke <eaw@cisco.com>
Signed-off-by: Madhu Venugopal <mavenugo@gmail.com>
9 years agoOptimize RESTCONF module/node parsing 42/9342/2
Robert Varga [Sat, 26 Jul 2014 04:41:44 +0000 (06:41 +0200)]
Optimize RESTCONF module/node parsing

Profiling has shown that the current implementations are still not upto
par with what they should be: 189 invocations of the two consumed 64ms,
with most of the time being spent splitting and iterating.

Given that the parsing operation is really simple, we can do much better
using String.indexOf() and String.substring().

Change-Id: I06ef0403edb2c8d12cbbc3c7909091e9efc5138e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoImprove RESTCONF thread safety when reconfiguring 41/9341/2
Robert Varga [Sat, 26 Jul 2014 04:18:40 +0000 (06:18 +0200)]
Improve RESTCONF thread safety when reconfiguring

There is a race which could see us without a populated mapping while a
schemacontext change is underway. Use a immutablemap guarded by an
atomicreference to allow proper switching. Note that the fix is
incomplete, as the schema context needs to be replaced at the same time.

Change-Id: I7d64fae99a0bc0f7d1ec19f08450c1954cb7af97
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoAllow getChildNodes() to become a Collection 40/9340/2
Robert Varga [Sat, 26 Jul 2014 04:06:52 +0000 (06:06 +0200)]
Allow getChildNodes() to become a Collection

Preparatory patch for yangtools change -- getChildNodes() will start
returning a Collection, not a Set.

Change-Id: Ie7255757e3f48465e3acd9e65764f1b79a3a9511
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Bug 1417 - Removed extraneous pom dep on flow-management-compatibility"
Tom Pantelis [Fri, 25 Jul 2014 21:08:41 +0000 (21:08 +0000)]
Merge "Bug 1417 - Removed extraneous pom dep on flow-management-compatibility"

9 years agoBUG-1381: do not use JavassistUtils.getLock() 19/9319/2
Robert Varga [Fri, 25 Jul 2014 13:33:05 +0000 (15:33 +0200)]
BUG-1381: do not use JavassistUtils.getLock()

We have it now synchronized through the instance, so there's no need for
getLock().

Change-Id: I3e962f284132b376f77e9e2665b3fbb47f246514
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoDeprecating unused get{Provider,Consumer} Functionality 15/9315/3
Ed Warnicke [Fri, 25 Jul 2014 12:21:31 +0000 (07:21 -0500)]
Deprecating unused get{Provider,Consumer} Functionality

Provider.getProviderFunctionality
Consumer.getConsumerFunctionality
interface ProviderFunctionality
interface ConsumerFunctionality

are unused.  They should go away, so this patch marks
them as deprecated.

Change-Id: Icfcbf9f4cfed0186c720eab26405894183b9009f
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMerge "Bug 1178 - removed unused parameter from checkOdAction() menthod."
Tony Tkacik [Fri, 25 Jul 2014 12:25:15 +0000 (12:25 +0000)]
Merge "Bug 1178 - removed unused parameter from checkOdAction() menthod."

9 years agoRemoved BundleContext from Broker.register{Consumer,Provider} (Part 2) 14/9314/1
Ed Warnicke [Fri, 25 Jul 2014 12:05:21 +0000 (07:05 -0500)]
Removed BundleContext from Broker.register{Consumer,Provider} (Part 2)

Moved the bodies of the methods around to make the deprecated
methods just call throughs to the new methods.

Removed extra argument from private method newSessionFor

Change-Id: I748662491e6670262ecfad4122bcc7a9f831107d
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoRemoved BundleContext from Broker.register{Consumer,Provider} 13/9313/1
Ed Warnicke [Fri, 25 Jul 2014 12:00:14 +0000 (07:00 -0500)]
Removed BundleContext from Broker.register{Consumer,Provider}

Don't freak out... the old methods are still there, just
deprecated.

Change-Id: I6f37af7d93948bbf0d3b23635c73803645028ec7
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMerge "BUG-1381: make users of JavassistUtils.getLock synchronized properly"
Tony Tkacik [Fri, 25 Jul 2014 11:17:52 +0000 (11:17 +0000)]
Merge "BUG-1381: make users of JavassistUtils.getLock synchronized properly"

9 years agoMerge "Override TransactionFactor method in DataBroker to return correct TransactionC...
Tony Tkacik [Fri, 25 Jul 2014 11:16:05 +0000 (11:16 +0000)]
Merge "Override TransactionFactor method in DataBroker to return correct TransactionChain."

9 years agoMake DOMMountPointService listenable 83/9283/2
Maros Marsalek [Thu, 24 Jul 2014 11:43:09 +0000 (13:43 +0200)]
Make DOMMountPointService listenable

Change-Id: Ic44a4bf214f6f6a6d653627b6a62ab2f47bd9963
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Bug 1280: Added option to automaticly create parents"
Tom Pantelis [Thu, 24 Jul 2014 19:44:19 +0000 (19:44 +0000)]
Merge "Bug 1280: Added option to automaticly create parents"

9 years agoBug 1417 - Removed extraneous pom dep on flow-management-compatibility 96/9296/1
jameshall03885 [Thu, 24 Jul 2014 18:24:44 +0000 (14:24 -0400)]
Bug 1417 - Removed extraneous pom dep on flow-management-compatibility

Change-Id: Ie39e5328b809c4a82b3c971f02392c01cbfb1302
Signed-off-by: jameshall03885 <ghall@brocade.com>
9 years agoMerge "Bug 1378: Make sure config extender does not block bundle loading."
Ed Warnicke [Thu, 24 Jul 2014 16:10:58 +0000 (16:10 +0000)]
Merge "Bug 1378: Make sure config extender does not block bundle loading."

9 years agoBUG-1381: make users of JavassistUtils.getLock synchronized properly 95/9095/2
Robert Varga [Wed, 16 Jul 2014 21:07:27 +0000 (23:07 +0200)]
BUG-1381: make users of JavassistUtils.getLock synchronized properly

As a transition period, use both locking schemes. Once the initial
patches are in, we can then remove the use of getLock().

Change-Id: Ibf4c0ea9f420d81dfe74f7b0c5479f01b45a8d2d
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoOverride TransactionFactor method in DataBroker to return correct TransactionChain. 80/9280/2
Maros Marsalek [Thu, 24 Jul 2014 09:30:11 +0000 (11:30 +0200)]
Override TransactionFactor method in DataBroker to return correct TransactionChain.

Change-Id: Ib86159c8faa8ddd729b9abc69ea7708fd4b086f3
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBug 1378: Make sure config extender does not block bundle loading. 62/9262/2
Tony Tkacik [Wed, 23 Jul 2014 14:38:09 +0000 (16:38 +0200)]
Bug 1378: Make sure config extender does not block bundle loading.

Change-Id: Ic706ad9dd41ad951e0517e02b7f1f3b8b25ea9ea
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Bug 279, 1390: Used Guava Cache r for lazy-loading of RPC Routers"
Tom Pantelis [Wed, 23 Jul 2014 14:30:44 +0000 (14:30 +0000)]
Merge "Bug 279, 1390: Used Guava Cache r for lazy-loading of RPC Routers"