bgpcep.git
7 years agoBUG-8213: Add missing mandatory attribute on tests 01/54901/1
Claudio D. Gasparini [Wed, 12 Apr 2017 20:22:54 +0000 (22:22 +0200)]
BUG-8213: Add missing mandatory attribute on tests

Add missing origin attribute on tests

Change-Id: I125437e187286a7a949e26191e66f19ded123274
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-8007: Programming Clean up 05/53405/5
Claudio D. Gasparini [Thu, 2 Mar 2017 07:35:07 +0000 (08:35 +0100)]
BUG-8007: Programming Clean up

Migrate deprecated classes
Code clean up

Change-Id: I06551491a30499d81d4c0dc7f0e1dbe68dc04eab
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-6975: Integrate Programming with Cluster Singleton Service 04/53404/4
Claudio D. Gasparini [Wed, 1 Mar 2017 16:25:53 +0000 (17:25 +0100)]
BUG-6975: Integrate Programming with Cluster Singleton Service

Integrate Programming with Cluster Singleton Service

Change-Id: I95e3c8c1dc1e596c060256d3f59fec9cfe882456
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-6973: Implement Programming config via DS 03/53403/3
Claudio D. Gasparini [Wed, 1 Mar 2017 12:01:20 +0000 (13:01 +0100)]
BUG-6973: Implement Programming config via DS

-Expose programming's configuration in config DS
-Allow multiple programming configuration

Change-Id: Ib6de3355dae6533367890ef87c504edbdca04654
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-6973: Wire Programming with BP 02/53402/4
Claudio D. Gasparini [Wed, 1 Mar 2017 11:24:05 +0000 (12:24 +0100)]
BUG-6973: Wire Programming with BP

-Wire Programming with BP
-Preserve backwards compatibility

Change-Id: I750fdb86a6c22d3b1a90e7466466ab7c5426d729
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-8203: update Netty isRoot method name 51/54751/1
Claudio D. Gasparini [Tue, 11 Apr 2017 08:49:32 +0000 (10:49 +0200)]
BUG-8203: update Netty isRoot method name

Netty has changed the name of the method isRoot
to maybeSuperUser.

Change-Id: Id2a5c19d914cccd5e3581a3ca59846d113ecaeb0
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoRestrict powermock dependency scope to test 53/54253/2
Marek Gradzki [Mon, 3 Apr 2017 08:53:20 +0000 (10:53 +0200)]
Restrict powermock dependency scope to test

Change-Id: I0fd96dd52deacd1169d8a7e497cf5455838ca725
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoBUG-7976: Race between peer removal and routes update 79/53879/5
Claudio D. Gasparini [Fri, 24 Mar 2017 19:26:08 +0000 (20:26 +0100)]
BUG-7976: Race between peer removal and routes update

There is a race condition when we are advertizing routes,
and a session peer goes down which will end in
removing the peer from DS.
Since advertizement and removal are done by 2 different tx,
we need to do it blocking mode, and not route should be
advertized until peer is removed and vice versa, peer
should not be removed until routes are advertized.
Otherwise toure update will try to update a peer/path which
is not longer present.
Fix by rework PeerExportGroup & ExportPolicyPeerTracker,
now instead of generate PeerExportGroup each time a peer
is reg/unreg,  we make PeerExportGroup work as a
blocking registry to solve previous issue.

Change-Id: I46a27871bfa2aa2a632e3bfb76061105c62bb6d2
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBumping versions by x.y.(z+1) for next dev cycle 62/54462/1
Anil Belur [Fri, 7 Apr 2017 07:40:10 +0000 (17:40 +1000)]
Bumping versions by x.y.(z+1) for next dev cycle

Change-Id: Ie8898450fe3fd1bc0c8a2c93b4a5b5d50ed98420
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
7 years agoCorrect XSD pattern 51/53351/1
Robert Varga [Wed, 15 Mar 2017 12:55:21 +0000 (13:55 +0100)]
Correct XSD pattern

YANG patterns are XSD regexes, so they have implicit ^/$
anchors. Fix this up.

Change-Id: I911ca3d3bd286c0f77bccfb4f3e9a3ef8fc8dbdb
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 141707ac43ba8594c1c5f7c76f39198daebdb786)

7 years agoFix NPE under TopologyProviderTest test 13/53213/2
Claudio D. Gasparini [Mon, 13 Mar 2017 10:24:51 +0000 (11:24 +0100)]
Fix NPE under TopologyProviderTest test

Fix by check reportedLsps is not null.

Change-Id: I18878db061ab5816ac5f13e5cdac21107df86aa1
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7964: IllegalStateException under testReconectClient test 12/53212/3
Claudio D. Gasparini [Mon, 13 Mar 2017 12:26:44 +0000 (13:26 +0100)]
BUG-7964: IllegalStateException under testReconectClient test

Fix by wait until channel is closed before retry to connect.

Change-Id: If1c7889b7988ce5cab3e11f73b6134ad2af182c7
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7958: Fix IllegalArgumentException 00/53200/1
Claudio D. Gasparini [Mon, 13 Mar 2017 08:01:00 +0000 (09:01 +0100)]
BUG-7958: Fix IllegalArgumentException

Remove unnecessary service registration for AppPeer

Change-Id: I0d76f372aa553ad16e76ae83f0f78babc49bd423
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7003: Remove sleeping from Tests 77/53077/2
Claudio D. Gasparini [Tue, 28 Feb 2017 12:20:49 +0000 (13:20 +0100)]
BUG-7003: Remove sleeping from Tests

Remove sleeping from test whenever possible.
Perform clean up under tests.

Change-Id: I734ca5721090669c75f09d107ee4c5ea1e3d14ee
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7937: Fix BGPTerminationReason 70/53070/1
Claudio D. Gasparini [Wed, 8 Mar 2017 16:26:25 +0000 (17:26 +0100)]
BUG-7937: Fix BGPTerminationReason

When closing the session because of some error
2 Notify messages are sent. One containing the
reason and other with CEASE.
Fix by dont send CEASE Termination Notification
if already other termination notification has
been sent.

Change-Id: Ibfabd7cfb038bef7a452a7458cd5cc1e6fa4b9a7
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
(cherry picked from commit d9a7ab7217f7d14c96356db48e7d6dcdd00601ba)

7 years agoBUG-7505: Conflict Modification 62/53062/1
Claudio D. Gasparini [Fri, 3 Mar 2017 14:53:35 +0000 (15:53 +0100)]
BUG-7505: Conflict Modification

When closing Peer and Rib, can cause
race condition between the removal
of the peer and the rib when updating DS.
Fix by close peers on blocking mode, and once
they are closed proceed with rib.
Same its applied in case that peer/rib is updated.
First we close it and then once DS is updated
we proceed with creating the new instance.

Change-Id: Ibe70e0324ae12bcbb88b2e7f039671141447ddb1
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7386 Remove blocking gracefulshutdown 29/52129/2
Claudio D. Gasparini [Tue, 17 Jan 2017 10:59:21 +0000 (11:59 +0100)]
BUG-7386 Remove blocking gracefulshutdown

Remove blocking gracefulshutdown for EventLoopGroup

Change-Id: I03fd04cd77d613ce4b8c83f1f48deb3142227bfb
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-7768 Fix missing registration 29/52329/4
Kevin Wang [Mon, 27 Feb 2017 22:00:30 +0000 (14:00 -0800)]
BUG-7768 Fix missing registration

In previous BUG-7768 fix, pcep topology registration was
missing. This patch adds it back. It also adds several debug
logging and unit test.

Change-Id: I4c82a7fcd9cb1ed7371817ffabc52fdf927ab51e
Signed-off-by: Kevin Wang <kevixw@gmail.com>
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBug-7614: LocRibWriter does not recover well from transaction chain failure 63/52563/1
Ajay [Tue, 14 Feb 2017 06:59:09 +0000 (06:59 +0000)]
Bug-7614: LocRibWriter does not recover well from transaction chain failure

If transaction chain associated with LocRibWriter fails, create a
new transaction chain and re-initialize it with the new chain.

Change-Id: Ibbb60c41594ad6b3602cabac18f5e4bccaa093bb
Signed-off-by: Ajay <ajayl.bro@gmail.com>
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-7222: Make BGP DS clean up asynchronous 74/51974/1
Claudio D. Gasparini [Wed, 15 Feb 2017 08:58:38 +0000 (09:58 +0100)]
BUG-7222: Make BGP DS clean up asynchronous

Close of the service must be done async, otherwise
will bock the thread.
Fix by make BGP DS clean up asynchronous

Change-Id: Icb19ef7b7f118fbc6b07407d1df2cb5f6cffc0fb
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBUG-4808: remove reference to IdentityHashMap 87/51887/1
Robert Varga [Wed, 15 Feb 2017 00:59:03 +0000 (01:59 +0100)]
BUG-4808: remove reference to IdentityHashMap

Class documentation is misleading, as the internal cache is implemented
by a weak key/weak value equivalent.

Change-Id: Ie0d08ee990b725c5ed1a52cb074b6f72eff2a26f
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 0aa43abe473e1b7b07879008861ae8e0017dd8ed)

7 years agoBUG-7768 Synchronize ServerSessionManager for PCEP 05/51705/1
Kevin Wang [Thu, 9 Feb 2017 22:40:23 +0000 (14:40 -0800)]
BUG-7768 Synchronize ServerSessionManager for PCEP

Add the check so that session manager can only be closed once
and becomes unusable after closing.

A java.util.ConcurrentModificationException is possible to happen
due to the close() method of ServerSessionManager is not synchronized.
The situation mostly likely will happen during a controller reboot.
It may also happen when a PCEP config is updated. The ServerSessionManager
is being restarted while all the PCEP negotiation is still happening.

Change-Id: I0e0d387add046a4fe9ec5ac74a85f8350e238d60
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-7732: Improve BGPDeployer synchronization 09/51409/3
Claudio D. Gasparini [Tue, 31 Jan 2017 10:27:13 +0000 (11:27 +0100)]
BUG-7732: Improve BGPDeployer synchronization

Improve BGPDeployer synchronization

Change-Id: I0a4c321ac36efefea473d0e2557588c6d687d5d3
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
7 years agoBug-7708: Invalid Route Distinguisher error while processing withdraw update containi... 83/51283/7
Ajay [Wed, 1 Feb 2017 08:24:22 +0000 (08:24 +0000)]
Bug-7708: Invalid Route Distinguisher error while processing withdraw update containing VPN route

 - RFC 3107 says that label value in withdraw message should be 0x800000
   ref. https://tools.ietf.org/html/rfc3107#section-3
 - Changed code to correctly handle this value in withdraw message received from peer.
   Also ODL will now use this value when sending withdraw message to its peer
 - Updated unit-tests accordingly

Change-Id: Ie9d90779c32e9141f953a18b07a86d0624eaee5c
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBUG-7723 Change BGP connection failure log level 18/51318/1
Kevin Wang [Wed, 1 Feb 2017 19:56:31 +0000 (11:56 -0800)]
BUG-7723 Change BGP connection failure log level

Change the BGP connection failure log level from DEBUG to WARN.

Change-Id: I68766d8849a7ce246959534b5fc80aa2eaf8fc3c
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-7351: Update IRO reference 73/51173/1
Claudio D. Gasparini [Fri, 27 Jan 2017 08:47:33 +0000 (09:47 +0100)]
BUG-7351: Update IRO reference

IRO is compliant of rfc7896 therefore we
update the reference.

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

7 years agoBUG-7673: Improve synchonization under BGP/PCEP Session 25/51125/1
Claudio D. Gasparini [Thu, 26 Jan 2017 17:46:31 +0000 (18:46 +0100)]
BUG-7673: Improve synchonization under BGP/PCEP Session

- Improve synchonization under BGP/PCEP Session
- Code clean up

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

7 years agoBUG-7673: Fix PCC Mock test failures 77/51077/1
Claudio D. Gasparini [Thu, 26 Jan 2017 11:00:46 +0000 (12:00 +0100)]
BUG-7673: Fix PCC Mock test failures

Fix PCC Pcep test failures by passing missing executor
Fix annotations
Fix warns for keepAlive size

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

7 years agoBUG-7215: Fix App Peer ModifiedNodeDoesNotExistException 43/49543/2
Claudio D. Gasparini [Wed, 30 Nov 2016 10:14:58 +0000 (11:14 +0100)]
BUG-7215: Fix App Peer ModifiedNodeDoesNotExistException

If Rib is reconfigured with different Family than the
previous supported one, application peer will be
reconfigured. In the case there are some routes or,
family table configured on Config DS, when restarting
App peer with new configuration will end on
ModifiedNodeDoesNotExistException.

Fix by:
   -Make Application peer more defensiveness by ingore changes
 on config DS for non supported Families.
   - Register Change Listener once AdjRibIn has been
 succesfully initialized.

Change-Id: I25b08b057fad02df365070c0a6d5177b9e0392a0
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBumping versions by 0.0.1 for next dev cycle 83/49583/1
Anil Belur [Tue, 20 Dec 2016 04:14:19 +0000 (14:14 +1000)]
Bumping versions by 0.0.1 for next dev cycle

Change-Id: I8d0746d01128b447e73eca8912bfca878f8eba9e
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
7 years agoBUG-7222: Fix clustering BGPPeer NPE 67/48767/3
Claudio D. Gasparini [Mon, 28 Nov 2016 10:46:33 +0000 (11:46 +0100)]
BUG-7222: Fix clustering BGPPeer NPE

Fix NPE: Any call to rib should be done
during singleton service instantiation or after.
Any call before can cause a NPE since RIB might be
on undefined status yet.

Change-Id: Ia1ebbc334f07362f325ac599f39f9d601e717321
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoPcepy: Address pep8 violations 96/48596/1
Vratko Polak [Tue, 22 Nov 2016 15:05:54 +0000 (16:05 +0100)]
Pcepy: Address pep8 violations

Newer libraries used in verification are more sensitive to
"E305 expected 2 blank lines after class or function definition".

Change-Id: I3f94115bb70b069f3eb417429bbc457c73048a7a
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
7 years agoBUG-7003: Remove Thread.sleep() calls in tests 87/48387/1
Claudio D. Gasparini [Thu, 10 Nov 2016 12:59:51 +0000 (13:59 +0100)]
BUG-7003: Remove Thread.sleep() calls in tests

Partial improvement under Additional Paths tests.
The time spent has been reduced.

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

7 years agoBUG-7006: Unit-tests sometimes hangs during execution 07/48107/2
Claudio D. Gasparini [Thu, 3 Nov 2016 10:53:33 +0000 (11:53 +0100)]
BUG-7006: Unit-tests sometimes hangs during execution

Fix sporadically hangs during unit-tests execution

Change-Id: Ia339af6d9181a7be8e4b3e6335bba250aaecd822
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-7003: Introduce CheckUtil 25/48025/2
Claudio D. Gasparini [Fri, 4 Nov 2016 13:02:30 +0000 (14:02 +0100)]
BUG-7003: Introduce CheckUtil

Introduce CheckUtil for replace Thread.sleep on tests

Change-Id: I6a74b7dc9563594424c8b1a0b03ca39890d3e803
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-7098: Fix Sonar complains 43/48043/1
Claudio D. Gasparini [Mon, 7 Nov 2016 08:24:10 +0000 (09:24 +0100)]
BUG-7098: Fix Sonar complains

Fix duplicate code
Naming conventions

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

7 years agoBumping versions by 0.0.1 for next dev cycle 19/47919/1
Anil Belur [Fri, 4 Nov 2016 00:37:12 +0000 (10:37 +1000)]
Bumping versions by 0.0.1 for next dev cycle

Change-Id: I56bac23a20443bbb5197dbe1167b35058d1e896e
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
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)