bgpcep.git
7 years agoRelease Boron-SR1 release/boron-sr1
jenkins-releng [Sun, 30 Oct 2016 23:16:43 +0000 (23:16 +0000)]
Release Boron-SR1

7 years agoBug-6737: bgp:show-stats Karaf CLI causes NPE 74/47374/2
Ajay [Fri, 21 Oct 2016 23:32:57 +0000 (23:32 +0000)]
Bug-6737: bgp:show-stats Karaf CLI causes NPE

Change-Id: I2006c119d1213b0a69ca11c0cb557dd503d69cc6
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug-6781: Inbound and outbound connection attempts from controller are not synchronized 06/47106/3
Ajay [Wed, 19 Oct 2016 06:37:57 +0000 (06:37 +0000)]
Bug-6781: Inbound and outbound connection attempts from controller are not synchronized
- created new peer session listener registry in BGPPeerRegistry for the
  outbound connection establishment logic to get notified when new peer
  session is created or destroyed
- updated outbound connection establishment logic to attempt a connection
  only when no existing session is present
- updated unit-tests

Change-Id: Ie6afb79e290c1a3c98d82af87febd6851ad200c2
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug-7004: NPE when configuring BGP peer using OpenConfig API twice 28/47228/2
Ajay [Thu, 20 Oct 2016 21:28:25 +0000 (21:28 +0000)]
Bug-7004: NPE when configuring BGP peer using OpenConfig API twice
- handle scenario where peer not having AFI-SAFI info is
  reconfigured using OpenConfig API
- updated unit-test

Change-Id: Ib9dd4550814fe861ab60efc3276cb91b45692078
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug 6622 - ClusterSingletonService registration race condition 18/47018/5
Milos Fabian [Mon, 17 Oct 2016 13:34:13 +0000 (15:34 +0200)]
Bug 6622 - ClusterSingletonService registration race condition

This is a hot fix for a race condition issue which can happen during a service lifecycle.
An application which manages services in not aware when the unregistration is finished, hence
service close is followed by immendiate service registration which may fail consequently.
This condition is handled by reatempting service regsiration after 10 ms.

Also fixes RIBImpl - create TX chain in #instantiateServiceInstance and asynchronously clean operatoinal DS.

Patch https://git.opendaylight.org/gerrit/#/c/46761/ is depending on this changes.

Change-Id: I110badc8bfb482a5b7cb6545b882cda2d0c661ae
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoDo not wrap Guava as a bundle in features' definition 24/47224/1
Alexis de Talhouët [Tue, 18 Oct 2016 21:30:19 +0000 (17:30 -0400)]
Do not wrap Guava as a bundle in features' definition

As it will refresh the bundle when the feature is loaded,
because it will certainly be already installed,and hence
will refresh all bundles depending on Guava.

Also, this is not necessary.

This patch is not directly tied to BUG-6956 but it's a result of it

Change-Id: If2fff1c6326fb8b53786d59e94c364cf0f3292c3
Signed-off-by: Alexis de Talhouët <adetalhouet@inocybe.com>
(cherry picked from commit 622a8cf869f13ad75777e39612c9a26374132e3b)

7 years agoBug-6889: BGPCEP Boron Autorelease Breaking 76/47176/2
Ajay [Wed, 19 Oct 2016 22:55:55 +0000 (22:55 +0000)]
Bug-6889: BGPCEP Boron Autorelease Breaking
- if server is not ready when client connects, wait for client reconnection
  before checking for test pass/fail criteria

Change-Id: I172d3e829f70081f0d943458dd43c6139381bf61
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBUG-6955: Fix BGP TestTool 08/47108/1
Claudio D. Gasparini [Mon, 17 Oct 2016 11:30:19 +0000 (13:30 +0200)]
BUG-6955: Fix BGP TestTool

Register BGP Extensions

Change-Id: I1fd1874d580ad922afa776d45c195118b694286f
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit ad06ba88b71504bdb80c1e66193c4871d6f56c5e)

7 years agoBUG-6954: Create Application Peer with Route Counter 86/47086/1
Claudio D. Gasparini [Mon, 17 Oct 2016 10:04:07 +0000 (12:04 +0200)]
BUG-6954: Create Application Peer with Route Counter

Create Application Peer with Route Counter

Change-Id: I41faaa0dedebb158139987617a1106ddd9c584a5
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBug 6809: PMSI attribute's mandatory leaves are always enforced 88/46688/2
Milos Fabian [Thu, 29 Sep 2016 09:21:43 +0000 (11:21 +0200)]
Bug 6809: PMSI attribute's mandatory leaves are always enforced

The PMSI Tunnel is an optional BGP path attribute.
Enforce the attribute's leaves presence only if the attribute is present in route's attributes.

Change-Id: Ifadf68ac30791614ed7695b940d3042cdca6aeb7
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 2c81d987ea7cdaad9b1dcb04c3591a8de2cd226f)

7 years agoBUG-6257: Implement PMSI tunnel attribute handler 87/46687/1
Claudio D. Gasparini [Wed, 28 Sep 2016 09:24:25 +0000 (11:24 +0200)]
BUG-6257: Implement PMSI tunnel attribute handler

-Fix pmsi tunnel attibute yang model
-Implement PMSI tunnel attribute handler
-Implement test

Change-Id: Iffc1750724c3e97d1694fba8360007741ad08d80
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 7cfbcfb35072f4b1e3ae3b02f09f7791c72f1527)

7 years agoBUG6257 Add BGP attribute PMSI tunnel to the EVPN Yang 82/46682/1
Bruce Brandon [Mon, 15 Aug 2016 14:38:31 +0000 (14:38 +0000)]
BUG6257 Add BGP attribute PMSI tunnel to the EVPN Yang

Add the BGP attribute "PMSI tunnel" to bgp-evpn.yang file and create
new pmsi-tunnel.yang file.

Change-Id: Ib4806a09a4e25721eb6a369f9617446f6645db54
Signed-off-by: Bruce Brandon <bb2697@att.com>
(cherry picked from commit 170546f6164b63bc773e7a3bad3c1dbbaeb50f89)

7 years agoBug-6889: BGPCEP Boron Autorelease Breaking 34/46634/1
Ajay [Thu, 6 Oct 2016 18:33:12 +0000 (18:33 +0000)]
Bug-6889: BGPCEP Boron Autorelease Breaking

Increased timeout in BmpMockTest using Mockito#timeout
(it waits till timeout only if needed)

Change-Id: I8151757aa29a46c30b674398efeddc711189ac93
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug 6788: peer singleton service closed just after initialization 77/46477/1
Milos Fabian [Mon, 26 Sep 2016 14:21:55 +0000 (16:21 +0200)]
Bug 6788: peer singleton service closed just after initialization

In case of HA failover scenario, configured peer is not getting initiated on
new singleton group master node, as the neighbor is removed from configuration when
default example-rib-impl is initiated (OpenConfig BGP configuration written to config DS).
To avoid overriding neighbors configuration after failover, minimize scope of rib-impl
representation from "protocol" to "global" node.

Change-Id: If4df2a070e0cbceae1c42cbe0d0c5a2258388092
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 533415c23f2dc2115e529594be8673ea087d1264)

7 years agoBug 6811: wrong namespace for binding-codec-tree-factory 00/46400/1
Milos Fabian [Thu, 29 Sep 2016 10:59:17 +0000 (12:59 +0200)]
Bug 6811: wrong namespace for binding-codec-tree-factory

Set correct type of binding-codec-tree-factory in initial BGP configuration.

Change-Id: Ic35a0089157f02be9d5d45bc08e23f377c2dd649
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBug 6835: Missing "simple-routing-policy" knob in OpenConfig BGP Neighbor configuration 89/46389/1
Milos Fabian [Fri, 30 Sep 2016 09:28:27 +0000 (11:28 +0200)]
Bug 6835: Missing "simple-routing-policy" knob in OpenConfig BGP Neighbor configuration

Enables to configure simple routing policy (learn-none/advertise-none) via OpenConfig BGP API.

Change-Id: I1de260e57e603d5abf09f891a5fc971861217e0d
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 4a9a75cbfd84be6a1d42f6555ab14ff3af11be18)

7 years agoBug 6675: add missing cluster-id configuration knob 64/46364/2
Milos Fabian [Wed, 28 Sep 2016 10:57:49 +0000 (12:57 +0200)]
Bug 6675: add missing cluster-id configuration knob

Enables global cluster identifier configuration for local RR.

Change-Id: I810ffcd097795ea4296a89a624f762863fea6526
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 2f71869e1eea0cb65ee87a602502d888fa0fe073)

7 years agoBUG-6616: BGP synchronization can happen after the session was closed 43/46343/1
Claudio D. Gasparini [Tue, 27 Sep 2016 09:37:36 +0000 (11:37 +0200)]
BUG-6616: BGP synchronization can happen after the session was closed

Fix by handle message only when session is up.
-Handle exception in synchronation mode.
-Sort close of the session, removal of the peer
and send close reason message.

Change-Id: I21328f9a63d5360603f219cd3699b08874da318b
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6747: Race condition on peer connection 87/46287/1
Claudio D. Gasparini [Tue, 20 Sep 2016 09:23:38 +0000 (11:23 +0200)]
BUG-6747: Race condition on peer connection

Race condition is observed under Loc rib when new peer is connected.
There is a chance that Eff-rib-in changes are notified before
than changes under supported tables, therefore none existing route
is announced to the  peer.
Fix by implement a unique ExportPolicyPeerTrackee per TableType and
per Rib.
On session stablished, peer will register itself to supported tables,
and remove himself when session down. This allow us to remove
CacheDisconnected peer, since it wont be longer required.
Also LocRib will be exclusively updated only related routes.

-Implement Base Path selection test
-Implement ExportPolicyPeerTrackerImpl test

Change-Id: I38b72f0ac9db09c64c4acdfeeb8eabade6ed046c
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6647 Increase code coverage and clean up IV 08/46208/2
Claudio D. Gasparini [Sun, 18 Sep 2016 14:00:34 +0000 (16:00 +0200)]
BUG-6647 Increase code coverage and clean up IV

-Implemet Rib-impl test

Change-Id: Idc952503dddae027e5a48d7b866ed8e94771287f
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6647 Increase code coverage and clean up III 07/46207/3
Claudio D. Gasparini [Wed, 7 Sep 2016 17:55:51 +0000 (19:55 +0200)]
BUG-6647 Increase code coverage and clean up III

-Implement Openconfig Tests
-Implement testtool-util tests
-Implemet Rib-spi test

Change-Id: I85d45ef84f37b8e00249e3a462c8ee9c9c5f5a60
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6734: Generate correct L3VPN route key 37/46237/2
Claudio D. Gasparini [Tue, 27 Sep 2016 07:59:24 +0000 (09:59 +0200)]
BUG-6734: Generate correct L3VPN route key

VPN label should no be a part of the L3VPN route key

Change-Id: I004be87834f60bd4d10d7d2f64d9775a1d06bd3c
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 018100bab78fa6d9e2284df63ed9b604f9ad682a)

7 years agoBUG-6799: IllegalAccessException on install bgp 09/46209/1
Claudio D. Gasparini [Tue, 20 Sep 2016 14:20:21 +0000 (16:20 +0200)]
BUG-6799: IllegalAccessException on install bgp

Fix by remove final on reflected #close method of
TopologyReferenceSingletonServiceImpl

Change-Id: I0cca40aa1925348812a573d61022253243f731aa
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6647 Increase code coverage and clean up II 61/46061/2
Claudio D. Gasparini [Wed, 7 Sep 2016 09:55:04 +0000 (11:55 +0200)]
BUG-6647 Increase code coverage and clean up II

Remove unused methods, parameters.

Change-Id: I14fdf71afc08a5c85fd86ea4a40c9b15993157e1
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit f0f2090ce6b2d7c204737352b784275a908d300f)

7 years agoBUG-6647 Increase code coverage and clean up I 60/46060/2
Claudio D. Gasparini [Wed, 7 Sep 2016 08:43:33 +0000 (10:43 +0200)]
BUG-6647 Increase code coverage and clean up I

-Remove unused imports

Change-Id: Ib930f52f961a262acc33e720c51c2e5bbe8792bc
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 76742780c07a29fe3d22759863ca20b7965e0710)

7 years agoBUG-6784 - Failed to fully assemble schema context for .. 59/46059/1
Claudio D. Gasparini [Thu, 22 Sep 2016 11:48:09 +0000 (13:48 +0200)]
BUG-6784 - Failed to fully assemble schema context for ..

Failed to fully assemble schema context for ..
when installing odl-bgpcep-bgp-linkstate
Fix by sort bundle import of the feature

Change-Id: Ie9398dfab8500a06cddd38f0761d68f1e6971658
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBug-6662: On connection reset by peer, sometimes re-connection attempt stops after... 66/45766/1
Ajay [Fri, 16 Sep 2016 05:07:32 +0000 (05:07 +0000)]
Bug-6662: On connection reset by peer, sometimes re-connection attempt stops after HoldTimer expired error

This issue happens when the neighbor config is removed from peer router while retaining the BGP router config.
Under this scenario, since BGP router config is still present, router is listening on BGP port. So when ODL
tries to connect, the connection succeeds. However the BGP negotiation fails as neighbor config has been removed
from router.

BGPReconnectPromise.ClosedChannelHandler#channelInactive triggers the reconnect, but the actual connection
retries as per the connection stragegy are done from BGPProtocolSessionPromise.BootstrapConnectListener#operationComplete

In failure scenario, since connection succeeds but negotiation fails, failure is not detected in BGPProtocolSessionPromise.BootstrapConnectListener#operationComplete
and so no reconnection attempts are made.

When negotiation fails, AbstractBGPSessionNegotiator#negotiationFailedCloseChannel is called, which causes BGPReconnectPromise.ClosedChannelHandler#channelInactive
to get called. Fix involves detecting negotiation failure here, and calling BGPProtocolSessionPromise#reconnect.

The scheduled job in AbstractBGPSessionNegotiator to detect hold-timer expiry during negotiation is also being cancelled
from AbstractBGPSessionNegotiator#negotiationFailedCloseChannel as the job is not needed when channel is closed.

Change-Id: Ie4aecd1f99312476abd75f008c0a3ee4ce1d44a6
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 8b8556445b106974cb438244330e5ab68134f898)

7 years agoBug 4827 - BGP add-path unit tests 20/45420/3
Milos Fabian [Tue, 16 Feb 2016 08:49:30 +0000 (09:49 +0100)]
Bug 4827 - BGP add-path unit tests

N Paths selection mode test
All Paths selection mode test

Change-Id: Ide97bea2e8af21aba82305e0422038e7552e0df8
Signed-off-by: Brian Freeman <bf1936@att.com>
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 390c052e1b5fb768d351c5d8333fb135865b859d)

7 years agoOpenConfig BGP more defensive 64/45764/1
Milos Fabian [Mon, 5 Sep 2016 21:59:40 +0000 (23:59 +0200)]
OpenConfig BGP more defensive

Add null checks and set default values to allow to configure BGP with
minimalistic configuration.

Change-Id: Id7f4c4014832054100e9148f575e215d493c3bb7
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 6efa3c0d6a4490a7e898519e3905847284803f2c)

7 years agoBUG-6651: Route Advertisement improvement 45/45345/2
Claudio D. Gasparini [Tue, 6 Sep 2016 16:35:56 +0000 (18:35 +0200)]
BUG-6651:  Route Advertisement improvement

When N/All Paths
-advertise only the new best path selected.
When Best Paths selected are updated
-Don't send a withdrawal for removed path from the best ones.
-Only send thew withdrawal when route is removed by owner

Change-Id: Ia5051ac97e26cfe7cf9f28a5bc6ddb21cf87670a
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 2193f98741659d1bf7cb77fde78cf685bfa091b5)

7 years agoBumping versions by 0.0.1 for next dev cycle 57/45657/1
Anil Belur [Thu, 15 Sep 2016 22:43:01 +0000 (08:43 +1000)]
Bumping versions by 0.0.1 for next dev cycle

Change-Id: I8bb120f25aa3efeeb28a9b4d995387d7ba24da59
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
7 years agoBug 6585: BGP ChannelOutputLimiter waits forever 70/45170/1
Milos Fabian [Wed, 31 Aug 2016 15:40:49 +0000 (17:40 +0200)]
Bug 6585: BGP ChannelOutputLimiter waits forever

After a while (when an output buffer reach upper bound),
BGP's ChannelOutputLimiter handler get stacked waiting for the channel to become writable again.
The writability change never happen, however socket flush is invoked,
so the session peer dies on holdtimer expiration.

Looks like calling #flush when writability changes to non-writable has no effect.
Invoking #flush in #ensureWritable makes the expected action.

Change-Id: I95681d87c30aff82ec360a2d13fc01fe35873507
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 684d75cb36f3b34b2691b374166f1bbc9ef52de5)

7 years agoBug-6621: ModifiedNodeDoesNotExistException encountered while building Linkstate... 41/45141/1
Ajay [Fri, 2 Sep 2016 06:10:59 +0000 (06:10 +0000)]
Bug-6621: ModifiedNodeDoesNotExistException encountered while building Linkstate topology
- added null check in BGP topology builder removeObject() method to
  gracefully handle issue created by BUG-6577
- when destroying operational topology to recover from a failure,
  flush the internally stored topology info as well so that both are in sync

Change-Id: Id239d74738d43dd63177aa3b2ba1d3d9136c3338
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit b4657f9d04a5e0d30fa6d275ef933c420d9016c8)

7 years agoBug 6604 - Fix NPE in AbstractBgpTopologyProvider#topologyTypeFilter 61/45061/2
Milos Fabian [Thu, 1 Sep 2016 08:39:52 +0000 (10:39 +0200)]
Bug 6604 - Fix NPE in AbstractBgpTopologyProvider#topologyTypeFilter

The BGP topology provider is not the only ODL component which is writing to
config DS network-topology node (i.e. netconf-topology).

Make the code more defensive to avoid NPE when filtering topologies' configuration
without topology-type container.

Change-Id: I493759ce23277ac6b4c5f15653708c853426e56b
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 9cfa9f12dbc439cc8fde08794db823de534d5366)

7 years agoBUG-6497: fixup augmentation lookup 98/44998/2
Robert Varga [Wed, 31 Aug 2016 21:41:05 +0000 (23:41 +0200)]
BUG-6497: fixup augmentation lookup

This fixes the augmentations being looked up so they correspond
to the model. It also makes sure we squash them to minimum required
interface, as that is all we require.

Change-Id: I227e35a3cba596d41bcedaddf3b0196c18b0874b
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 2cdf4dece347e8570241fbc78638f7a7ba577bbf)

7 years agoBug 6497 - Wrong augmentations used in BGP 41/45041/2
Milos Fabian [Thu, 1 Sep 2016 14:04:39 +0000 (16:04 +0200)]
Bug 6497 - Wrong augmentations used in BGP

Fix BGP OpenConfig augmentations usage after changes in
yangtools parser.

Change-Id: Idfe474f6e2fd345934d3d7e74e581d8fb9547868
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 321f65d08a97de037a9b6f3b18e44c1db5242357)

7 years agoBug 5685: Integate BGP topology provider with cluster singleton service. 74/44974/3
Milos Fabian [Wed, 27 Jul 2016 10:27:14 +0000 (12:27 +0200)]
Bug 5685: Integate BGP topology provider with cluster singleton service.

The BgpTopologyDeployer service is responsible for a topology builder instances creation.
In clustered environment, this service is running on all three nodes, consuming the same
configuration, create the same topology builder instance and register it to the cluster singleton service
provider on all nodes, but only one instance become active.
This integration allows fail-over scenarios and avoids confilicting datastore modifications for
topology builders with the same topology-id.
Provide backwards compatility for CSS modules, where instance is created and configuration
is written to DS when instance become active.

Change-Id: Id1af5368f5d9fad04243e2ab909c5948632626d7
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit e1a2ab99146c6e345f4e9911e51595eea5cdea11)

7 years agoBug 6568 - Termination Point Type is never set in BGP-LS topology 01/44901/4
Milos Fabian [Mon, 29 Aug 2016 12:41:04 +0000 (14:41 +0200)]
Bug 6568 - Termination Point Type is never set in BGP-LS topology

Change-Id: Ic7695b821f34c93826b8cde78921122222725e65
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBug-6468: Duplicate cleanup and connected-peer-counter decrement during BGP session... 36/45036/1
Ajay [Mon, 29 Aug 2016 20:56:34 +0000 (20:56 +0000)]
Bug-6468: Duplicate cleanup and connected-peer-counter decrement during BGP session cleanup
1. Add synchronized to BGPPeer#releaseConnection to avoid race condition
2. Add check to BGPSessionImpl#closeWithoutMessage so that it's body does not
   get executed twice, even if it does get called twice during session cleanup

Change-Id: I78d89de2c9c0fa8968bbb6a019d568a539a8c5f7
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 78b58179e6ef65fae98b134112e7aa0bbe7e1a91)

7 years agoBUG-6497: fixup for shifted augmentations 15/45015/1
Robert Varga [Thu, 1 Sep 2016 14:20:16 +0000 (16:20 +0200)]
BUG-6497: fixup for shifted augmentations

With the numbering scheme fixed in yangtools, this patch
adjusts the code to use correct augmentation.

Change-Id: I50a9fa058bbff9d58a52eff39c0a750410b5fe8b
Signed-off-by: Robert Varga <rovarga@cisco.com>
7 years agoBug 5061: Move BGP topology providers configuration to config DS 84/44784/3
Milos Fabian [Mon, 25 Jul 2016 15:48:25 +0000 (17:48 +0200)]
Bug 5061: Move BGP topology providers configuration to config DS

Allow to configure BGP topology provider from config DS Topology subtree.
The BGP topology provider configuration consists of topology-id,
rib-id (where topology provider is listening) and topology-type (identifies the type
of the BGP topology provider - IPv4/6 reachability, linkstate).
Services are wired with Blueprint, while CSS module based configuration
is still preserved.

Change-Id: I94e27c6cdf7f3f5c55b6972324ddb486d2ac185d
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 6681efdbd8d819d56236517d684978c7af237e0e)

7 years agoRemove duplicate dependencies 34/44934/1
Robert Varga [Wed, 31 Aug 2016 12:01:42 +0000 (14:01 +0200)]
Remove duplicate dependencies

These trigger maven warnings, remove them.

Change-Id: I775653ed89f3052952adb1832671573c29161110
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 5b60a2503c6600bf207582f71c7a7b1de656f295)

7 years agoBug 6530 - ApplicationPeer's CSS configuration not visible in OpenConfig BGP 37/44837/1
Milos Fabian [Fri, 26 Aug 2016 19:54:01 +0000 (21:54 +0200)]
Bug 6530 - ApplicationPeer's CSS configuration not visible in OpenConfig BGP

Write Neighbor, representing application peer module configuration, when
singleton service is initiated.
Added missing "group name" augmentation of neighbor's configuration.

Change-Id: I7dd558648c3ec275e05ec3245309c7f3473b721c
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 3f047616c1e26d6b28d047f26bc7230506c70509)

7 years agoBUG-6020: FlowspecL3vpn RIBSupportTest 96/44796/2
Claudio D. Gasparini [Wed, 22 Jun 2016 07:07:30 +0000 (09:07 +0200)]
BUG-6020: FlowspecL3vpn RIBSupportTest

FlowspecL3vpn RIBSupportTest

Change-Id: Ia3c057b9e0e2166eb9771ee05f4a9891d6dd053c
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit eb83f3dbb47f3a8f0bf1af58d89d341cf7b3c825)

7 years agoBUG-6409: Fix L3vpn flowspec routes model 89/44789/1
Claudio D. Gasparini [Sat, 13 Aug 2016 13:34:27 +0000 (15:34 +0200)]
BUG-6409: Fix L3vpn flowspec routes model

Fix L3vpn flowspec routes model to fit with
corresponding destination route model.

Change-Id: I4c60d4550b423b42848912da6acde787ebe17661
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 7ff8942ba27c9c9da54d0520439287146ce5e7b7)

7 years agoBug 6337 - Handle string route-key from App Routes when Binary route-key is expected 46/43946/3
Milos Fabian [Tue, 9 Aug 2016 09:49:10 +0000 (11:49 +0200)]
Bug 6337 - Handle string route-key from App Routes when Binary route-key is expected

Change binary typed route keys to string. Modify RIB support extensions to
encode key with Base64.

The binary type is decoded with Base64, where length is restricted.
The BGP application RIB allows user to originate a route
and binary typed route key is limiting user defined route keys to a
specific length (cut-off when does not fit).
Also using plain text for binary typed route keys is not correct.

The route-key type change is invisible in restconf output.

Change-Id: Ieab24705ceebe0b527b4ddae81a4109c9c250de0
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit eca666c067d809426fcb5936d559b3e08271f48f)

7 years agoBUG-4808: Improve caching of effective attributes 82/44782/1
Om Prakash [Tue, 16 Aug 2016 13:24:54 +0000 (09:24 -0400)]
BUG-4808: Improve caching of effective attributes

Instead of reusing effective attributes for a particular update, maintain a cache for the duration of peer's role.
This way attributes are cached across multiple messages, maintaining memory efficiency in face of fragmented updates.
The cache maintains weak references only, hence does not prevent garbage collection of stale entries.

Change-Id: I625d2b129814772030ff478b4ec99b71e9b98d37
Signed-off-by: Om Prakash <op317q@att.com>
(cherry picked from commit 5d0d40aec50b865604bd419bbeb0930808207765)

7 years agoBUG 6541: Switch the Epoll mode in PCEP and PCC-mock to level-triggered 80/44780/1
Omair [Sun, 28 Aug 2016 00:48:21 +0000 (17:48 -0700)]
BUG 6541: Switch the Epoll mode in PCEP and PCC-mock to level-triggered

PCEP and PCC-mock are depending on round-robin processing of incoming messages.
Therefore when using epoll native transport, switch the mode to "level-triggered".

Change-Id: I51537b7b0ecf9465f21186e78ca8c37e1433bf19
Signed-off-by: Omair <of8826@att.com>
(cherry picked from commit 1cc38735ca380f75153f291a695b0d28916553fb)

7 years agoBug-5922: inbound IPv6 connection fails if address has zero groups in it 58/44658/1
Ajay [Thu, 25 Aug 2016 03:10:34 +0000 (03:10 +0000)]
Bug-5922: inbound IPv6 connection fails if address has zero groups in it
- Convert the remote IPv6 address to normalized notation (full-form and leading 0s removed)
  so that comparision with configured BGP Peer address works
- BGP Peer address is converted to this form in BGPPeerModule#getNormalizedHost

Change-Id: I9ce0b5a925a0599e7cca52adf2ec2f2a331026c5
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 2074c9147bd3eed95865de32ad6531993423acd3)

7 years agoBug 6442: Keepalive not send by BGP ODL 36/44536/1
Milos Fabian [Tue, 23 Aug 2016 09:33:02 +0000 (11:33 +0200)]
Bug 6442: Keepalive not send by BGP ODL

When ODL BGP is reading a bigger amount of data using
native epoll transport, scheduled KA hndler task is getting executed.
As a result, remote peer's holdtimer expires -> connection is dropped.

Switch the Epoll mode to "level-triggered", as we want to use MAX_MESSAGES_PER_READ
channel option (round-robin processing).

Ref.: https://netty.io/4.0/api/io/netty/channel/epoll/EpollChannelConfig.html#setEpollMode(io.netty.channel.epoll.EpollMode)

Change-Id: If4a6ac3e3fc9d006cd6ba54c1606731add8bfa2c
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBug 6442: Use pingpong DOM data broker in BGP 11/44411/1
Milos Fabian [Thu, 18 Aug 2016 12:18:57 +0000 (14:18 +0200)]
Bug 6442: Use pingpong DOM data broker in BGP

Missed when converting to blueprint wiring.

Change-Id: I199ef90bdecbb74cb740e4141763d1ff7bb798d2
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit ece5feef2cdb15c308a45f52d302a288f3f59152)

7 years agoBUG-6470 Fix deadlock in BGP session creation 82/44382/1
Kevin Wang [Thu, 11 Aug 2016 22:23:51 +0000 (15:23 -0700)]
BUG-6470 Fix deadlock in BGP session creation

- Fix intermittent error in BGPDispatcherImplTest. In AbstractBGPSessionNegotiator,
  handleMessage() was able to be invoked by channel.pipeline().replace(..) recursively.
  So when handling a BGP message, it could happen that this.state gets out of sync
  and exception got thrown.

Change-Id: I346ab56fc85d1705099a69084cb89d660d8e1f61
Signed-off-by: Kevin Wang <kevixw@gmail.com>
(cherry picked from commit e06d8be10658d9a4d40b10a8d2fa324052aa2d05)

7 years agoBUG-6437: Fix race condition when closing singleton group I 02/44302/2
Claudio D. Gasparini [Wed, 17 Aug 2016 10:09:56 +0000 (12:09 +0200)]
BUG-6437: Fix race condition when closing singleton group I

Fix
- sort when singleton instances are registered.
- remove configuration when App module close

Change-Id: I5547acb36285c56793564451fcb678ed4e047414
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit d981514fabdac8fd4a056e239d732ea6556e5ed4)

7 years agoBug-6453: NPE reported in RibImpl class during controller shutdown when debugs enabled 04/44204/2
Ajay [Wed, 17 Aug 2016 18:44:42 +0000 (18:44 +0000)]
Bug-6453: NPE reported in RibImpl class during controller shutdown when debugs enabled
- Log message before calling RIBImpl#close()
- Add null check to RIBImpl#toString()

Change-Id: I5eb4bd834f346bec379d888615cb2c522af923a8
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBUG-6460: Fix Neighbor Comparison 53/44253/1
Claudio D. Gasparini [Wed, 17 Aug 2016 10:09:56 +0000 (12:09 +0200)]
BUG-6460: Fix Neighbor Comparison

Fix comparison of neighbor by fix
-Neighbors can have same AfiSafi but with different sort.
-Also add default values to Neighbour builder fromBgpPeer.

Change-Id: I0f3118741aae2448ec980ada14dc58be59a4c2c9
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 63cde5c485d15ac52cfbfac1f5091fdb9f5572e9)

7 years agoBUG-5685: Register BGP Application Peer Cluster Singleton Service 24/44124/1
Claudio D. Gasparini [Wed, 10 Aug 2016 12:53:28 +0000 (14:53 +0200)]
BUG-5685: Register BGP Application Peer Cluster Singleton Service

Register BGP Application Peer Cluster Singleton Service.
When running on clustering, it was need it to have different
configuration per instance to avoid conflicts.
Now all instance can have same configuration,
since cluster service provider take cares of make active
the one is running on Leader Cluster. If Leader goes down,
the instance from the new Leader will become active.

Change-Id: I5316a50b5ceaf54c838018860baefc5ae326465b
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 0aabee8976574d2765248f134d4292e345adcb83)

7 years agoBUG-5685: Register BGP Peer Cluster Singleton Service 98/44098/1
Claudio D. Gasparini [Wed, 10 Aug 2016 12:51:42 +0000 (14:51 +0200)]
BUG-5685: Register BGP Peer Cluster Singleton Service

Register BGP Peer Cluster Singleton Service.
When running on clustering, it was need it to have
different configuration per instance to avoid conflicts.
Now all instance can have same configuration,
since cluster service provider take cares of make active
the one is running on Leader Cluster. If Leader goes down,
the instance from the new Leader will become active.

Change-Id: Ia4a95123e50fcb962c217b21967acf5a8820727d
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 259daaeb2ad7ebf70308abc0a098ab2ba096b375)

7 years agoBUG-6427: Application peer doesnt announce routes 31/44031/3
Claudio D. Gasparini [Mon, 15 Aug 2016 18:51:11 +0000 (20:51 +0200)]
BUG-6427: Application peer doesnt announce routes

Application peer doesnt announce routes.
Fix by add Internal Role group to Exporgroup.
Also filter routes by peer destination role, to
avoid unnecessary do remove to a non-existing
route.

Change-Id: I3619b93d6d511bd6b4ef353b8a2f62a9b4a9b661
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit b01b7ff7bc40416b401f8398f07764c18ef23f0c)

7 years agoBug 5061: Support remote port number configuration 82/44082/1
Milos Fabian [Wed, 27 Jul 2016 16:00:13 +0000 (18:00 +0200)]
Bug 5061: Support remote port number configuration

Augment OpenConfig Neighbor transport configuraton to
support remote port configuration (default 179).

Change-Id: I0ab2f34aa5faa522d343a168e7c164696b31177f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 75396514e3d8c9088c76f0d3aaa5a537424f83a0)

7 years agoBug 5061 - introduce peer restarting 69/44069/2
Milos Fabian [Tue, 26 Jul 2016 14:04:52 +0000 (16:04 +0200)]
Bug 5061 - introduce peer restarting

When RIB configuration is modified all related
peer are supposed to be restart with modified RIB.
Introduce such function for BgpPeer/App, preserve
current Neighbor configuration internally.

Change-Id: I608a564a956f255bdb89603e736dd78cd60fef62
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 19a3a5142a0f34d1eba29250c9787e69f3d2cbbf)

7 years agoBug 6370 - unable to start BMP feature 58/44058/2
Milos Fabian [Wed, 10 Aug 2016 13:31:09 +0000 (15:31 +0200)]
Bug 6370 - unable to start BMP feature

Add missing dependency features, which are required
to start BMP successfully.

Change-Id: Id89d21ea9e4d72f59959eee5fcd224644047acc6
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit eda848636f70d8d0c07cd70a5d9e70064c551595)

7 years agoBug 6365 - Bad handling of unknown AFI/SAFI in Open Message 46/44046/1
Milos Fabian [Tue, 9 Aug 2016 11:37:31 +0000 (13:37 +0200)]
Bug 6365 - Bad handling of unknown AFI/SAFI in Open Message

Skip unsupported AFI/SAFI when parsing Open Message, instead of throwing
exception, which resulted in dopped connection.

Change-Id: Ib3a47ca9722ecf0f0d6eacd84b7fab168c5860a1
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit ba17fbc05002d6980ab41476696b134d46871ac3)

7 years agoBug 5061: Integrate ApplicationPeerModule with blueprint 08/44008/2
Milos Fabian [Thu, 21 Jul 2016 10:56:10 +0000 (12:56 +0200)]
Bug 5061: Integrate ApplicationPeerModule with blueprint

Instead of instance creation in ApplicationPeerModule,
write BGP OpenConfig configuration into the config DS and BGP deployer takes care of instance creation.
Add mapping function ApplicationPeerModule -> OpenConfig Neighbor to BGPOpenConfigMappingService.

Change-Id: I393ddf7d1f6efad78abb4f64188fcdd49bc3f6b9
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit e449830aba426de955bd2da5a487b9149486be3a)

7 years agoBug 6331 - BMP does not show routes 14/44014/1
Milos Fabian [Mon, 8 Aug 2016 12:07:25 +0000 (14:07 +0200)]
Bug 6331 - BMP does not show routes

Wapped BGP messages are not serialized, because the
BGP codecs activator is not initiated.
Make sure the activator is started before BMP activator
is initiated.

Change-Id: I29d7893342d89d53470da07a2986e8bb9ed700c1
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 3dae73b0df2a6d08ba2f10483afc438972300937)

7 years agoBug 5061: Introduce BGP Application Peer deployer 83/43983/1
Milos Fabian [Thu, 21 Jul 2016 10:37:33 +0000 (12:37 +0200)]
Bug 5061: Introduce BGP Application Peer deployer

Enhance BGP deployer service to handle Application Peer
instance creation. Like BGP Peer, Application Peer
configuration is represented as OpenConfig's Neighbor,
however the Application peer is distinguished by specific
peer group.

Change-Id: I078f76a3815c4bd10171b9c97a545479bfd7eca0
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit bfe85df5277c15670ef57694778d7f9245782820)

7 years agoBUG-6411: Fix RibImpl global comparison 52/43952/2
Claudio D. Gasparini [Mon, 15 Aug 2016 08:40:39 +0000 (10:40 +0200)]
BUG-6411: Fix RibImpl global comparison

Fix RibImpl global comparison by compare Ipv4
by comparing value instead of both obj

Change-Id: I922219085662baa7f99f77d1e4797c5d84f640b1
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit b9c848cd7bc1270ed64c36006d27c22a04e4ec54)

7 years agoBUG-6111 Fix the AbstractTopologyBuilder to reset PingPongTransactionChain 28/43928/2
Kevin Wang [Fri, 22 Jul 2016 00:42:26 +0000 (17:42 -0700)]
BUG-6111 Fix the AbstractTopologyBuilder to reset PingPongTransactionChain

When an exception was thrown when applying route change
in OnDataTreeChanged(), the transaction chain should be reset
so that the following new transactions can be create

Change-Id: Ie88f3cb0570cfdaf5dc3436cea8447b121c553e1
Signed-off-by: Kevin Wang <kevixw@gmail.com>
(cherry picked from commit 88b320be8c08b36c074a6a11e12dd5102228ad27)

7 years agoBUG-5685: Register BGP Rib to Cluster Singleton Service Provider 27/43927/1
Claudio D. Gasparini [Wed, 10 Aug 2016 12:48:32 +0000 (14:48 +0200)]
BUG-5685: Register BGP Rib to Cluster Singleton Service Provider

Register BGP Rib to Cluster Singleton Service Provider
When running on clustering, it was need it to have different
configuration per instance to avoid conflicts.
Now all instance can have same configuration, since cluster
service provider take cares of make active the one
is running on Leader Cluster. If Leader goes down,
 the instance from the new Leader will become active.

Change-Id: Id93897fd8b5460dc6d445bd7fa1c5faa8729a8b5
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 633e172d65022130580315dccd2845b46c2d7762)

7 years agoBug 6337: Add ByteBuf->String utility 59/43859/1
Milos Fabian [Tue, 9 Aug 2016 09:44:36 +0000 (11:44 +0200)]
Bug 6337: Add ByteBuf->String utility

New utility function convers input ByteBuf to byte array,
encode it with Base64 and convert to string.
The function can be useful when converting NLRI-based
route key to string representation.

Change-Id: I2adbb98da0d0841a2c4eafed841c457e05367c2e
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit cef0f088696ca9053f0a6b9b41db2818bd138d4a)

7 years agoBug 5061: Integrate BGPPeerModule with blueprint 09/43709/1
Milos Fabian [Thu, 21 Jul 2016 09:02:11 +0000 (11:02 +0200)]
Bug 5061: Integrate BGPPeerModule with blueprint

Instead of creating a new BGPPeer instance via CSS module,
transform peer configuration to OpenConfig Neighbor DTO
and write to config DS. BGP deployer will take care of the instance creation.
Add more mapping utility funtions to OpenConfig mapping service.
Also we want to register peer instance as a runtime MX bean to collect statistics,
hence register Peer as a OSGi service and retreive it when module's createInstance
is invoked to register bean there.

Change-Id: Ic5b1ed556f3af000a96cde94aaa669fed2b64f74
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 912da09d223db30bc7db7e10b92f474ed82b87ea)

7 years agoBug 5061: Bgp Peer deployer 79/43679/1
Milos Fabian [Wed, 20 Jul 2016 14:20:39 +0000 (16:20 +0200)]
Bug 5061: Bgp Peer deployer

Extends BGP deployer to be capable to
instantiate BGPPeer instances based on
current OpenConfig Neighbor configurations.

Change-Id: If27e4551b7fc6db4c3c5dcf07028e5563d61e0dd
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit ed7e0631a243ea218090215280be9b1829c1dfa5)

7 years agoBUG-6317 Do not withdraw route when best path has changed 65/43665/2
Claudio D. Gasparini [Mon, 8 Aug 2016 06:17:52 +0000 (08:17 +0200)]
BUG-6317 Do not withdraw route when best path has changed

Route should be withdrawn only if there is not other
best path which can be announced intead.

Change-Id: Ibc2ae0bf2d05a90e06eae34a12f8e6b98f64fb7c
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 94f7f6bee9c8467cdd240aac4702c3e49f5306e1)

7 years agoConvert yangtools binding APIs to mdsal bindings 89/43589/3
Robert Varga [Wed, 8 Jun 2016 16:44:01 +0000 (18:44 +0200)]
Convert yangtools binding APIs to mdsal bindings

This reflects the package move needed after the split-off.

Change-Id: Ia412d9023ebc3f1563bb074a4ff2c429428373f6
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 1b408f00e13a2af6d41cc413d8c714b0de72620d)

7 years agoBUG-6378: Fix PeerExportGroup 21/43621/1
Claudio D. Gasparini [Wed, 10 Aug 2016 08:53:51 +0000 (10:53 +0200)]
BUG-6378: Fix PeerExportGroup

PeerExportGroup contains all peers.
Fix By contain only peers correspending to same
PeerExportGroup Role

Change-Id: If3f795add270d598b74a62ee8e9597441bcea858
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit cfd681578182da51e732a2c0bf90ffd09507e687)

7 years agoBug-5878: PCErr not generated by configuring 32-pcep.xml file to not advertise statef... 02/43602/1
Ajay [Tue, 2 Aug 2016 01:06:13 +0000 (01:06 +0000)]
Bug-5878: PCErr not generated by configuring 32-pcep.xml file to not advertise stateful capability
- throw exception and abort PCEP Topology Provider instantiation if stateful capability is not configured but stateful plugin is

Change-Id: Ie066cc4661f07877e133ce666819b242aa783c85
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 8d3f35e52ff92ff2848290a5dc271a8cb106c06f)

7 years agoBUG-6237: Topology freezes or slows down due to java.util.concurrent.TimeoutException 90/43590/2
Claudio D. Gasparini [Thu, 4 Aug 2016 10:49:01 +0000 (12:49 +0200)]
BUG-6237: Topology freezes or slows down due to java.util.concurrent.TimeoutException

High consupmtion of memory is observed caused by high LoadingCache
per OffsetMap instance.
Fix by use
-singleton empty constructor for LoadCache.
-use null instead of optional

Change-Id: Ia6edc0fc732ac286af4f3ef83d02add572fb5bf1
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 42e4512e5e9e3d125636332c1b3e0d8cb5f1e3e0)

7 years agoBug-6342: Link-state topology takes long time to get updated 84/43584/2
Ajay [Mon, 8 Aug 2016 18:25:42 +0000 (18:25 +0000)]
Bug-6342: Link-state topology takes long time to get updated
- When large number of prefixes are present for node, repeated re-writing of node causes slowness
- Avoid writing the entire node again when prefix or termination-point information for that node changes
- Just write the modified information in such cases

Change-Id: Id38b6b37f3171677798aaccd6f37376f355dbc66
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 581925f39fcceb4a2927bacef40f25f1f0eae36c)

7 years agoBUG-5619 Enable maven parallel build for bgpcep I 83/43583/1
Kevin Wang [Tue, 2 Aug 2016 23:08:37 +0000 (16:08 -0700)]
BUG-5619 Enable maven parallel build for bgpcep I

- This patch mainly change the unit test to use random
  IP address and port whenever initializing a client or
  server for testing

Change-Id: I101706aded57f435c80285728f4212cfe0b5669b
Signed-off-by: Kevin Wang <kevixw@gmail.com>
(cherry picked from commit 83c5547e5e0b16b587bf1fc5daeedffdf77e6726)

7 years agoUpdate .gitreview for stable/boron 51/43351/1
Thanh Ha [Mon, 8 Aug 2016 21:39:28 +0000 (17:39 -0400)]
Update .gitreview for stable/boron

Change-Id: I832ca21352c19d2bcfa2e0029d3c6feccc39d843
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
7 years agoBUG-6330: Fix race condition when reinstalling App Peer 23/43223/1
Claudio D. Gasparini [Fri, 5 Aug 2016 10:12:21 +0000 (12:12 +0200)]
BUG-6330: Fix race condition when reinstalling App Peer

Race condition produced fater reinstall Application Peer
with some existant routes.
Fix by register EffectiveRibIn listener after creation of
AdjribIn.

Change-Id: I39bf41e938cc6994f4e70bb4a912e6f9ce061e20
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBug 5061: Integrate RIBImplModule with blueprint 95/41895/12
Milos Fabian [Fri, 15 Jul 2016 08:15:37 +0000 (10:15 +0200)]
Bug 5061: Integrate RIBImplModule with blueprint

Instead of instance creation in RIBImplModule, write
BGP OpenConfig configuration into the config DS and
BGP deployer takes care of instance creation.
Add mapping function RIBImplModule -> OpenConfig BGP to
BGPOpenConfigMappingService.

Change-Id: I34533ca6e4593244948cd109c95f105d4c171bdb
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoUpdate Python code and tox 93/42493/6
Vratko Polak [Tue, 26 Jul 2016 07:29:04 +0000 (09:29 +0200)]
Update Python code and tox

+ Fix "E731 do not assign a lambda expression, use a def".
+ Do not prescribe explicit pep8 version anymore.
+ Prevent flake8 from examining contents of .tox directory

Change-Id: I78d061892f125683edfaf21ac330e7785d496ec7
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
7 years agoBug 6278: Switch to use odlparent's karaf-parent 24/42724/2
Ryan Goulding [Thu, 28 Jul 2016 16:02:13 +0000 (12:02 -0400)]
Bug 6278: Switch to use odlparent's karaf-parent

Change-Id: Ib2ce61091a2401b681fc8593e335a3d34cbeec73
Signed-off-by: Ryan Goulding <ryandgoulding@gmail.com>
7 years agoFix Remove AdjRibOut Listener 31/43031/2
Claudio [Wed, 3 Aug 2016 10:17:47 +0000 (12:17 +0200)]
Fix Remove AdjRibOut Listener

When removving AdjRibOur from Map container,
is done by removing the obj and not by key.
Fix by remove obj from map using corresponding key.

Change-Id: I916f4cfb82f6b168559bbe4d7d91a55ed6d2e660
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBug 5061: Introduce BGP deployer 63/42063/10
Milos Fabian [Tue, 19 Jul 2016 12:55:09 +0000 (14:55 +0200)]
Bug 5061: Introduce BGP deployer

The goal is to migrate RIBImpl configuration from
CSS to BP. The RIBs instances creation needs to be dynamic
and simple - application's compoments wiring should be hidden
from user facing configuration.

The BGP OpenConfig API is an entry point for user's BGP
configuration. The deployer listens to the changes
in a configuration subtree and based on it deploys (starts/restarts/stops) RIB instances.
Instances are registred as OSGi services, where each service is identified by service property.
The service can be used for internal (BGPPeer, ApplicationPeer) and external wiring (topology provider).

Change-Id: I68752ead5b7468c0aada603f52b18e574d4e2cb0
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoRemove Parameterized input for PCCDispatcherImplTest 78/42978/1
Claudio [Tue, 2 Aug 2016 14:11:26 +0000 (16:11 +0200)]
Remove Parameterized input for PCCDispatcherImplTest

Remove Parameterized input for PCCDispatcherImplTest,
Whis is making the test to be runned 10o times.

Change-Id: Ifbe4bd85f096e28e343b1c0577e4a603575a5dc2
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBUG-6069: Fix IAE when POSTing an openconfig neighbor 99/42299/7
Claudio [Fri, 22 Jul 2016 10:31:16 +0000 (12:31 +0200)]
BUG-6069: Fix IAE when POSTing an openconfig neighbor

Try to insert a neighbor will cause an IAE, thrown by
ensureParentsByMerge method. Which force us to write the whole
three since its not able to create mandatory leaf.
As a workaround and for keep functionallity, we set "presence"
statement to config container.

Change-Id: I40ab0b5245bc975db0d56178f879f82e5c5af0dd
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoConvert PCEPDispatcher wiring to blueprint 54/41854/4
Tom Pantelis [Wed, 13 Jul 2016 00:41:41 +0000 (20:41 -0400)]
Convert PCEPDispatcher wiring to blueprint

The wiring was added to the pcep-impl.xml file.

Moved the max-unknown-messages and tls config to a new
pcep-dispatcher-config container in the pcep-app-config.yang. This
changed the package for the generated Tls class.

The md5 factpry wiring was ommitted b/c it is being removed in a another patch
anyway. The PCEPTopologyProviderModule did some fancy checking to see if md5 was
enabled. This checking was removed to avoid compilation error.

The PCEPDispatcherImplModule was deprecated but still remains for now
to provide the PCEPDispatcher instance created via blueprint to the
config system so it can be injected into other users. Once the other user(s)
are converted to blueprint then the config yang, Module classes can be removed.

The SimplePCEPExtensionProviderContextModule and yang were removed as
all users are now converted to blueprint. Same with
PCEPSessionProposalFactoryImplModule.

Change-Id: I8c5a12cedbafbe54f492d01f6d0a3c608f49508a
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoRemove trailing spaces in pcep-ietf-stateful.xml 91/42791/2
Tom Pantelis [Fri, 29 Jul 2016 15:11:08 +0000 (11:11 -0400)]
Remove trailing spaces in pcep-ietf-stateful.xml

Change-Id: I1e113bbce1bbec23c1c995cae2742cb141c2ff5c
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-6120: Revert Ignore test change 46/40946/16
Claudio [Wed, 13 Jul 2016 13:03:17 +0000 (15:03 +0200)]
BUG-6120: Revert Ignore test change

Revert ignore test change introded by bug-6120.
Improve some test, removing thread.sleep were possible.

Change-Id: I084a015db8d4b6be2b210f8c5d6298aaddc9c69a
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoRevert "BUG-5742: Race condition when creating Application Peer on clustering" 77/42877/2
Milos Fabian [Mon, 1 Aug 2016 06:38:39 +0000 (06:38 +0000)]
Revert "BUG-5742: Race condition when creating Application Peer on clustering"

This reverts commit 8e8148277cb1006a8ed0e7d25b443de049805238.

Change-Id: Ie1805c3eb1d84ea1f9759c60692348fda0afe19f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoConvert PCEP session capabilities to blueprint 53/41853/5
Tom Pantelis [Fri, 8 Jul 2016 12:05:27 +0000 (08:05 -0400)]
Convert PCEP session capabilities to blueprint

Added blueprint XML file, pcep-impl.xml, to the impl bundle that utilizes
the blueprint extension, "specific-reference-list" , to obtain the
specific list of PCEPCapability OSGi service instances.
The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.pcep.PCEPCapability
resources in the provider bundles which the "specific-reference-list"
extension scans so it knows which services to look for. Once all expected
services are obtained, the PCEPCapability instance List bean is created and
injected into the BasePCEPSessionProposalFactory. Also added a yang app
config module and container to retrieve the dead-timer and
keep-alive-timer settings for the BasePCEPSessionProposalFactory.

The 2 PCEPCapability implementations, one in segment-routing and the
other in ietf-stateful07, are now created via new blueprint XML files and
the corresponding config yang and associated Module class were removed.

The PCEPSessionProposalFactoryImplModule was deprecated but still
remains for now to provide the PCEPSessionProposalFactory instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang, Module classes can be removed.

Change-Id: I6e9aca62d3199abe844b9edc848f6bc3ee5a91fb
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBug-5536: When using clustering with replication, linkstate topology of non-leaders... 16/39816/5
Ajay [Fri, 3 Jun 2016 03:05:35 +0000 (03:05 +0000)]
Bug-5536: When using clustering with replication, linkstate topology of non-leaders is not available via restconf
- replaced instances of DataTreeChangeListener with ClusteredDataTreeChangeListener

Change-Id: Iccec8d32ba97dba2bf51165076c7b2d0747cd8b3
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug-6242: PCRpt received with bandwidth reoptimization object leads to loop causing OOM 34/42434/2
Ajay [Mon, 25 Jul 2016 04:37:50 +0000 (04:37 +0000)]
Bug-6242: PCRpt received with bandwidth reoptimization object leads to loop causing OOM
- added bandwidth reoptimization object to the list of possible objects in PCRpt message
- gracefully handle condition where unexpected object is present in received message
- updated unit-tests

Change-Id: Idfd2cf28b6b6385f67e6e81ea41a1904653c5ab5
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug 5610: PCRpt message with vendor specific object throws exception 84/42584/3
Omair [Tue, 26 Jul 2016 16:10:12 +0000 (09:10 -0700)]
Bug 5610: PCRpt message with vendor specific object throws exception

Make sure Vendor Information Object registry is always
available. Extend Object registry to provide Vendor
Information registry services.

Fix already present in Beryllium. This ports the fix to master branch.

Change-Id: I8a47b54324bdbdefea6193628c947318f6ed65bb
Signed-off-by: Omair <of8826@att.com>
7 years agoUTIL Code Clean Up 63/42263/3
Claudio [Thu, 21 Jul 2016 21:12:23 +0000 (23:12 +0200)]
UTIL Code Clean Up

Fix sonar complains, naming convention, declare final
method/classes, etc..

Change-Id: Ice7cc8b054fa7200842da970d2d1c3eae2eac8e4
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoRSVP Code Clean Up 62/42262/3
Claudio [Thu, 21 Jul 2016 21:10:39 +0000 (23:10 +0200)]
RSVP Code Clean Up

Fix sonar complains, naming convention, declare final
method/classes, etc..

Change-Id: I90dadca882618108340d1b2d661357890871e042
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBug 5061: Introduce BGP OpenConfig mapping service 62/42062/6
Milos Fabian [Tue, 19 Jul 2016 12:50:26 +0000 (14:50 +0200)]
Bug 5061: Introduce BGP OpenConfig mapping service

This mapping service is useful when mapping from
BGP OpenConfig confiuration to internal BGP structures
and vice versa.

Change-Id: Id29eb81f75f4f7f82760d0970214c01e8501afdb
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoKeep internal API contract between RIB and BGPPeer/ApplicationPeer 61/42061/6
Milos Fabian [Tue, 19 Jul 2016 10:47:16 +0000 (12:47 +0200)]
Keep internal API contract between RIB and BGPPeer/ApplicationPeer

Peers need ImportPolicyPeerTracker, where RIB is a sharing point.
Keep API contract between ribs and peers, make the ImportPolicyPeerTracker
getter part of the RIB interface, so there is no need to cast to specific
RIBImpl implementation to get ImportPolicyPeerTracker instance.

Change-Id: I1bfd75d7ad8ec7c59910ef3c488b5d4afd5afe5d
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG-5742: Race condition when creating Application Peer on clustering 86/42386/1
Claudio [Thu, 21 Jul 2016 13:14:13 +0000 (15:14 +0200)]
BUG-5742: Race condition when creating Application Peer on clustering

Race condition when creating Application Peer on
a 3 node clustering enviroment.
Fix by use a uninque transaction chain on App Peer.

Change-Id: If6d3fbcb3c4e1e29b24d4921d8f8a64e35f58bb9
Signed-off-by: Claudio <cgaspari@cisco.com>