bgpcep.git
6 years agoCode clean up 56/72356/1
Claudio D. Gasparini [Fri, 25 May 2018 07:16:54 +0000 (09:16 +0200)]
Code clean up

- check style
- Qname generation
- functional style
- java language migration
- mvn duplication

Change-Id: I0c7757c8cadead5e988cde6d3fa0e607c4cad72c
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoImprove bmp synchronization 55/72355/1
Claudio D. Gasparini [Sat, 26 May 2018 21:07:57 +0000 (23:07 +0200)]
Improve bmp synchronization

Change-Id: If5d90f32d6f72b0f1c07a7ff63db4afeb4391772
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoSimplify some of the new Mvpn attributes models 06/72306/1
Claudio D. Gasparini [Fri, 25 May 2018 10:17:50 +0000 (12:17 +0200)]
Simplify some of the new Mvpn attributes models

Change-Id: Ie850e304705dff3bb19c7d7bec616d0c09698782
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMigrate deprecated submit() to commit() under PCEP 31/72231/3
Claudio D. Gasparini [Thu, 24 May 2018 12:29:53 +0000 (14:29 +0200)]
Migrate deprecated submit() to commit() under PCEP

Change-Id: Id3136e3bcac708e0c04e35ee2bc673f8dd424d36
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRework MVPN Routes Model as workaround for MDSAL-310 47/72247/2
Claudio D. Gasparini [Thu, 24 May 2018 12:23:37 +0000 (14:23 +0200)]
Rework MVPN Routes Model as workaround for MDSAL-310

JIRA: BGPCEP-396
Change-Id: Ia56252bf08593b35bcda56580baef6293ceb3d84
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix Pmsi tunnel type model name typo 42/72242/2
Claudio D. Gasparini [Thu, 24 May 2018 16:18:53 +0000 (18:18 +0200)]
Fix Pmsi tunnel type model name typo

Change-Id: Ie374f97383095090280fd261d484986f879c85c5
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix Mvpn Model choice container 94/72194/4
Claudio D. Gasparini [Wed, 23 May 2018 10:49:37 +0000 (12:49 +0200)]
Fix Mvpn Model choice container

Choice case are not allowed to
share a common container as case;

JIRA: BGPCEP-396
Change-Id: Icb51b2c23d5cf5bc8dbe9ea316e200eb0ecd3596
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMigrate deprecated submit() to commit() for BGP/BMP 20/72220/2
Claudio D. Gasparini [Thu, 10 May 2018 11:34:15 +0000 (13:34 +0200)]
Migrate deprecated submit() to commit() for BGP/BMP

Change-Id: Id22bb9d50c40e94bb616272d018a376cecc1705a
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoAdjust to RPC method signature update 27/71227/9
Robert Varga [Mon, 23 Apr 2018 16:51:39 +0000 (18:51 +0200)]
Adjust to RPC method signature update

Input/Output structures are always present and we need to return
ListenableFuture.

Change-Id: Idf91f4321be2c339a7752c177bb000ffdd2e5021
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoPartial submit() migration to commit() 58/72158/1
Claudio D. Gasparini [Tue, 22 May 2018 10:15:50 +0000 (12:15 +0200)]
Partial submit() migration to commit()

Change-Id: I4610af88fe7cbce2259b90ca19842ee30d0952a7
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix MVPN 54/72154/1
Claudio D. Gasparini [Tue, 22 May 2018 09:24:12 +0000 (11:24 +0200)]
Fix MVPN

- Remove unnecesary prefix under mvpn route model
- register mvpn routes cases under CacheableNlriObjects
- correct registration of ribsupport with corresponding family

JIRA: BGPCEP-396
Change-Id: Ibf83e013b53dbda6120621990dc84781565ff70d
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN Support 14/72114/1
Claudio D. Gasparini [Tue, 15 May 2018 11:36:45 +0000 (13:36 +0200)]
MVPN Support

- Nlri Handlers
- RIB Supports
- Add supported family to default RIB/Peer config
- BGP/RIB Activator
- Increment test coverage

JIRA: BGPCEP-396
Change-Id: Ib020247ab87aa7baa303703c552cfecf1c7314d9
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoProvide codec Serializer via RibSupport 44/72044/1
Claudio D. Gasparini [Tue, 15 May 2018 11:36:45 +0000 (13:36 +0200)]
Provide codec Serializer via RibSupport

- provide access to BindingToNormalizedNodeCodec
under ribsupport
- clean up

Change-Id: Ibee3e1550211c9d88c24eb9ae2e741ee77f7d948
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN Routes PArser/Serializer 09/72009/4
Claudio D. Gasparini [Tue, 15 May 2018 08:25:30 +0000 (10:25 +0200)]
MVPN Routes PArser/Serializer

JIRA: BGPCEP-396
Change-Id: I02535dd90ae1cd3563a44980df016d10ce33ebed
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove IpAddress handler duplicated code 08/72008/2
Claudio D. Gasparini [Tue, 15 May 2018 08:11:59 +0000 (10:11 +0200)]
Remove IpAddress handler duplicated code

- create util for parse, serialize IpAddress

Change-Id: I4eec0ad9658c28b4ff238eb24266d9a2303fb9f0
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoImprove chain transaction fail handling 86/71986/2
Claudio D. Gasparini [Mon, 14 May 2018 06:29:20 +0000 (08:29 +0200)]
Improve chain transaction fail handling

under Data change counter.
- Migrate submit to commit.

Change-Id: If2149bdf87ca8a94e4d74f379424ff36f934a52f
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRegister MVPN TableType 11/71511/4
Claudio D. Gasparini [Fri, 11 May 2018 11:14:13 +0000 (13:14 +0200)]
Register MVPN TableType

- minor fixups

JIRA: BGPCEP-396
Change-Id: Ibd87a1230817c3e09c352ec2a230944dd2d1f8d4
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove migrated PMSI Tunnel Attributes 46/71246/9
Claudio D. Gasparini [Tue, 24 Apr 2018 09:11:17 +0000 (11:11 +0200)]
Remove migrated PMSI Tunnel Attributes

JIRA: BGPCEP-396
Change-Id: Ie86e68fca156f0e50e76744ecb5e7b4d93f45278
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoAugment Server connection timeout for BMP tests 85/71985/1
Claudio D. Gasparini [Mon, 14 May 2018 05:51:38 +0000 (07:51 +0200)]
Augment Server connection timeout for BMP tests

Change-Id: I3947d797a54b8e152a86022e97a4d1ddb23964c4
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN Attributes Handlers 66/71966/1
Claudio D. Gasparini [Fri, 11 May 2018 10:19:36 +0000 (12:19 +0200)]
MVPN Attributes Handlers

- PMSI Tunnel Attributes
- PE Distinguisher Labels

JIRA: BGPCEP-396
Change-Id: I243f325260a46c16f6f9412282b83b8f415b0ea2
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove duplicated code for Route Entry 03/71903/1
Claudio D. Gasparini [Sat, 21 Apr 2018 21:36:47 +0000 (23:36 +0200)]
Remove duplicated code for Route Entry

Change-Id: Ia962719cbca89d7092e040506d125ead2106d8cb
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoImprove TopologyStatsProvider transaction chain failure 97/71897/1
Claudio D. Gasparini [Sun, 6 May 2018 10:59:08 +0000 (12:59 +0200)]
Improve TopologyStatsProvider transaction chain failure

Create new chain when onTransactionChainFailed
for TopologyStatsProvider.

Change-Id: Ib3ff3b7b1c9381efa8f35cbb5ed88195320f06c9
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix IllegalStateException in StateProviderImpl 70/71670/3
Tom Pantelis [Wed, 2 May 2018 17:25:54 +0000 (13:25 -0400)]
Fix IllegalStateException in StateProviderImpl

If a transaction fails, the StateProviderImpl can get stuck in
a perpetual cycle of subsequent transactions failing due to:

java.lang.IllegalStateException: Previous transaction odl2-1-datastore-operational-fe-3-chn-44-txn-1-0 is not ready yet
        at org.opendaylight.controller.cluster.datastore.TransactionChainProxy$Allocated.checkReady(TransactionChainProxy.java:85)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.datastore.TransactionChainProxy.allocateWriteTransaction(TransactionChainProxy.java:187)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.datastore.TransactionChainProxy.newReadWriteTransaction(TransactionChainProxy.java:166)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.databroker.DOMBrokerReadWriteTransaction.createTransaction(DOMBrokerReadWriteTransaction.java:52)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.databroker.DOMBrokerReadWriteTransaction.createTransaction(DOMBrokerReadWriteTransaction.java:22)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.databroker.AbstractDOMBrokerTransaction.getSubtransaction(AbstractDOMBrokerTransaction.java:57)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.cluster.databroker.AbstractDOMBrokerWriteTransaction.merge(AbstractDOMBrokerWriteTransaction.java:102)[315:org.opendaylight.controller.sal-distributed-datastore:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.md.sal.dom.spi.ForwardingDOMDataReadWriteTransaction.merge(ForwardingDOMDataReadWriteTransaction.java:54)[314:org.opendaylight.controller.sal-core-spi:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.md.sal.binding.impl.BindingDOMWriteTransactionAdapter.ensureParentsByMerge(BindingDOMWriteTransactionAdapter.java:67)[302:org.opendaylight.controller.sal-binding-broker-impl:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.put(AbstractWriteTransaction.java:41)[302:org.opendaylight.controller.sal-binding-broker-impl:1.6.0.ODL_7_0_0_0]
        at org.opendaylight.protocol.bgp.state.StateProviderImpl.storeOperationalState(StateProviderImpl.java:151)[252:org.opendaylight.bgpcep.bgp-openconfig-state:0.8.0.ODL_7_0_0_0]
        at org.opendaylight.protocol.bgp.state.StateProviderImpl.lambda$updateBGPStats$1(StateProviderImpl.java:124)[252:org.opendaylight.bgpcep.bgp-openconfig-state:0.8.0.ODL_7_0_0_0]

The root cause is due to attempitng to continue to use a failed
transaction chain. It should close the failed chain and create a new
on as is required by the API contract.

For the UT, I used the RememberingLogger from infrautils to indirectly
verify the tx chain is rest on failure by checking logged errors. The
RememberingLogger is wired via static binding in infrautils which
supplants logback as the backing impl.

Change-Id: Ie26f047c2320ff812d796a25f2e3721b59b73ba0
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoMVPN Extended communities Handlers 53/71253/5
Claudio D. Gasparini [Tue, 24 Apr 2018 08:52:30 +0000 (10:52 +0200)]
MVPN Extended communities Handlers

- Source AS (2 Oct/4 Oct) Extended community
- Vrf Route Import Extended community

Change-Id: I853b17d0e10362c45aa80b7edfaa8e63a37f2dda
JIRA: BGPCEP-396
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN Models 52/71252/8
Claudio D. Gasparini [Tue, 24 Apr 2018 08:46:23 +0000 (10:46 +0200)]
MVPN Models

JIRA: BGPCEP-396
Change-Id: Iea02ed31c11ab68e162cb7d83ca56fdae8b9299b
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoHandle Path Id under Evpn nlri 59/71359/1
Claudio D. Gasparini [Wed, 25 Apr 2018 19:48:56 +0000 (21:48 +0200)]
Handle Path Id under Evpn nlri

Change-Id: Id28defea49d0d444ce2313a90652e4cd0074c255
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoHandle path Id under L3vpn 11/71311/1
Claudio D. Gasparini [Wed, 25 Apr 2018 12:39:53 +0000 (14:39 +0200)]
Handle path Id under L3vpn

Change-Id: Ibaf99870f2c2d775315471cb62a48a65deb2acf3
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove deprecated method 66/71166/6
Claudio D. Gasparini [Fri, 20 Apr 2018 11:41:14 +0000 (13:41 +0200)]
Remove deprecated method

Change-Id: I076db42eb6737d9712fe400958b4c9f56476fb93
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoAdd path Id under l3vpn destination 91/71291/1
Claudio D. Gasparini [Wed, 25 Apr 2018 08:30:59 +0000 (10:30 +0200)]
Add path Id under l3vpn destination

Change-Id: I6e87bf8c24649382eaf596b497f0385cb4cb539d
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix NPE 62/71262/1
Claudio D. Gasparini [Tue, 24 Apr 2018 16:05:05 +0000 (18:05 +0200)]
Fix NPE

Remove wrong null assignment for effRibInWriter

BGPCEP-792
Change-Id: Ie3df9b0b98e2cd6578554c53b0e6c3a1979677bf
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove unnecesary tests 51/71251/2
Claudio D. Gasparini [Tue, 24 Apr 2018 11:11:58 +0000 (13:11 +0200)]
Remove unnecesary tests

Change-Id: Ic4e22341bc7b65b2eb6d90f22793eec1e9548666
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove duplicated code 18/71218/3
Claudio D. Gasparini [Tue, 17 Apr 2018 12:27:40 +0000 (14:27 +0200)]
Remove duplicated code

- extension ribsupports should use
  provided routeKeyQname and routeQname
  method provided by abstract rib support.
- fix email contact address

Change-Id: I74200558d7bf1d8300c83e7c48e047b674908ba8
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoReturn ListenableFuture from RPCs 28/71228/1
Robert Varga [Mon, 23 Apr 2018 16:49:35 +0000 (18:49 +0200)]
Return ListenableFuture from RPCs

This future-proofs a couple of places, so we do not need to change
them when RPC methods change.

Change-Id: I8eba6f27377c683184d7b2ce539b37393b8d1b3a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoRemove duplicated code 98/71198/2
Claudio D. Gasparini [Sat, 21 Apr 2018 21:09:45 +0000 (23:09 +0200)]
Remove duplicated code

by implementing default behaviour under
interface.

Change-Id: Ida088bc8d78df7d5cc4bb04fe94fb7946b50073b
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix linkstate Route Distinguishers model 60/71160/4
Claudio D. Gasparini [Fri, 20 Apr 2018 09:32:17 +0000 (11:32 +0200)]
Fix linkstate Route Distinguishers model

actual model do no correspond with
https://tools.ietf.org/html/rfc4364#section-4.2.
- Fix by use correct existent model.
- Remove duplicated grouping models

Change-Id: I870d100d3ce441aa2d7c197be3fb4243ab1846d8
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN RFC6514 Extendend communities 52/71152/3
Claudio D. Gasparini [Fri, 20 Apr 2018 05:42:46 +0000 (07:42 +0200)]
MVPN RFC6514 Extendend communities

Implement parser/serializer for new
extended communities

JIRA: BGPCEP-396
Change-Id: I3e5dd62e906d40ef4cd8239256539010acfb83d0
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRevert "Fix compilation issues related to IpAddress" 87/71187/2
Robert Varga [Sat, 21 Apr 2018 13:19:36 +0000 (13:19 +0000)]
Revert "Fix compilation issues related to IpAddress"

This reverts commit b673aa2e43295f2d4359f39982574c323c1f16e4.

Change-Id: Ib3749d1a852de67b5a22efff2623a6c84608bf2f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoFix BmpMockTest random failing 54/71154/2
Claudio D. Gasparini [Fri, 20 Apr 2018 09:23:47 +0000 (11:23 +0200)]
Fix BmpMockTest random failing

Change-Id: I13761faf48e210bbfb7310ce02a044a5c17bfb7a
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN RFC6514 Extendend communities 51/71151/1
Claudio D. Gasparini [Fri, 20 Apr 2018 05:33:31 +0000 (07:33 +0200)]
MVPN RFC6514 Extendend communities

Update imports generate revision date

JIRA: BGPCEP-396
Change-Id: Id99f5ffac750a278b8f966b682c1f8659765afe5
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMVPN RFC6514 Extendend communities 50/71150/1
Claudio D. Gasparini [Thu, 19 Apr 2018 16:36:43 +0000 (18:36 +0200)]
MVPN RFC6514 Extendend communities

- Source AS
- VRF Route Import

JIRA: BGPCEP-396
Change-Id: Ib19270ad50c30d805008497e35b33fbcf7030aac
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove no longer required karaf.shell imports 40/71140/3
Claudio D. Gasparini [Thu, 19 Apr 2018 21:08:56 +0000 (23:08 +0200)]
Remove no longer required karaf.shell imports

Change-Id: I8157504ba60b9fe8ccd9c49a39b7029b11d5a119
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove duplicated Peer code 59/70959/5
Claudio D. Gasparini [Thu, 12 Apr 2018 18:44:08 +0000 (20:44 +0200)]
Remove duplicated Peer code

- improve tx synchronization

Change-Id: I6a87b0e90aa53f8f3a224535b988da08229d873b
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix compilation issues related to IpAddress 71/71071/8
Robert Varga [Wed, 18 Apr 2018 07:40:43 +0000 (09:40 +0200)]
Fix compilation issues related to IpAddress

Use IpAddress containing Ipv4/Ipv6, instead
of the IpAddress containing *nozone generated by
IetfInetUtil.

Change-Id: I4537b31e9561cb645881400358d54bfecd643bc1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoInitialize effective rib in for App Peer 64/70964/2
Claudio D. Gasparini [Mon, 16 Apr 2018 08:26:13 +0000 (10:26 +0200)]
Initialize effective rib in for App Peer

Effective Rib in has splitted constructor and
initializer. Add missing initialization under
AppPeer

BGPCEP-789
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
Change-Id: Iee2bde3ebf5f786b78ff5c4dd387da7decf20b0d

6 years agoSupport Local AS only when configured as eBGP 60/70960/3
Claudio D. Gasparini [Mon, 16 Apr 2018 05:57:04 +0000 (07:57 +0200)]
Support Local AS only when configured as eBGP

Change-Id: Iac5d463fdf3849148e5845aa9265806e25c8ba76
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBump to odlparent 3.1.0 and yangtools 2.0.3 01/69901/9
Stephen Kitt [Thu, 22 Mar 2018 17:24:33 +0000 (18:24 +0100)]
Bump to odlparent 3.1.0 and yangtools 2.0.3

Change-Id: I89ac7aec458dd9b567697bd2449bacb92e192369
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoFix findbug complains 47/70947/1
Claudio D. Gasparini [Sat, 14 Apr 2018 12:10:25 +0000 (14:10 +0200)]
Fix findbug complains

Change-Id: Ifeb808d6890c6150057ade9693b0730e9bf515fd
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMigrate deprecated OsgiCommandSupport 73/70773/1
Claudio D. Gasparini [Wed, 11 Apr 2018 10:57:42 +0000 (12:57 +0200)]
Migrate deprecated OsgiCommandSupport

Change-Id: I3fabc2af08746b2690a8e1ca8cb87e6ec84ad411
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRework Cluster-Id config 60/70760/2
Claudio D. Gasparini [Tue, 10 Apr 2018 18:35:42 +0000 (20:35 +0200)]
Rework Cluster-Id config

BGPCEP-564
Change-Id: I96557eca0c599e0934b7fada91bfc35162eae7bc
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoDelete routes under eff-rib-in 22/70722/2
Claudio D. Gasparini [Tue, 10 Apr 2018 15:47:25 +0000 (17:47 +0200)]
Delete routes under eff-rib-in

only if there are present.

Change-Id: I7c863999b54a16dec2bcaddd256c6ff7121b0cb5
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRework OffsetMap.remove() and share empty arrays 02/70702/4
Claudio D. Gasparini [Tue, 10 Apr 2018 09:46:04 +0000 (11:46 +0200)]
Rework OffsetMap.remove() and share empty arrays

Empty arrays are immutable, hence we can share those instances,
reducing overheads. Also updates OffsetMap.remove() to take an
empty array argument, which will be used when the map would become
empty.

Change-Id: I58116eddce3d8b1a1f7d049c0c1f12fcd9f79966
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoProvide Add Path support for all AFI/SAFI 47/70447/7
Claudio D. Gasparini [Fri, 6 Apr 2018 13:25:50 +0000 (15:25 +0200)]
Provide Add Path support for all AFI/SAFI

Updade code according to models change.
Path Id and Route Key(string) leaf added
to route.
Route Key and Path Id are now the common
route-key for all routes list.

BGPCEP-781
Change-Id: I45bb53c939a2ecca57d2e11ec5e317e8164c7182
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoProvide Add Path support for all AFI/SAFI 46/70446/5
Claudio D. Gasparini [Fri, 6 Apr 2018 08:41:03 +0000 (10:41 +0200)]
Provide Add Path support for all AFI/SAFI

Update route model, adding by default path-id
and route-key to be used as key for routes lists.

BGPCEP-781
Change-Id: Ie62c2f304976cb275ede8f52ad6d07812f46f15a
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix Peer Identifier used per Rib creation. 10/70710/2
Claudio D. Gasparini [Tue, 10 Apr 2018 12:05:26 +0000 (14:05 +0200)]
Fix Peer Identifier used per Rib creation.

Use the provided by peer when session goes up.

BGPCEP-783
Change-Id: I7cd497df649be689a25dd67eed3903b42def8d28
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix findbug NP_NONNULL_PARAM_VIOLATION complains 58/70658/3
Claudio D. Gasparini [Mon, 9 Apr 2018 13:25:00 +0000 (15:25 +0200)]
Fix findbug NP_NONNULL_PARAM_VIOLATION complains

Change-Id: I359f4a8c626753e9d5eeb6eb4b2cbd906b28e984
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoMigrate ShellTable to non-deprecated class 45/70645/3
Robert Varga [Sat, 7 Apr 2018 11:16:04 +0000 (13:16 +0200)]
Migrate ShellTable to non-deprecated class

org.apache.karaf.shell.support.table.ShellTable is the new location,
use that.

Change-Id: I85b6adc2ae01a47236217676f78cce9e0f81237e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoUse byte[].clone() 67/70667/2
Robert Varga [Sat, 7 Apr 2018 12:05:27 +0000 (14:05 +0200)]
Use byte[].clone()

BGPDocumentedException can be made more efficient by using
byte[].clone() instead of Arrays.copyOf(). Also pre-cache empty
data and return it when needed.

Change-Id: Ib4e36522f0d3a734621349c1b62865496d330009
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoUse dedicated executor for BGPCEP Stats 53/70653/3
Claudio D. Gasparini [Mon, 9 Apr 2018 12:59:30 +0000 (14:59 +0200)]
Use dedicated executor for BGPCEP Stats

BGPCEP-786
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
Change-Id: I85d227f237509e3646805258ebeb1c22ebb3a54b

6 years agoMigrate to karaf shell api 46/70646/1
Robert Varga [Sat, 7 Apr 2018 11:22:26 +0000 (13:22 +0200)]
Migrate to karaf shell api

org.apache.felix.gogo.commands is deprecated, migrate to
org.apache.karaf.shell.api.action equivalents.

Change-Id: I22d1714f4bff6acfecb0fdd87c595e32af5d9a8c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoAdd Karaf build profile 97/70497/1
Thanh Ha [Sat, 7 Apr 2018 02:39:57 +0000 (22:39 -0400)]
Add Karaf build profile

Project local Karaf distros are handy for devs to test their work
however is unneeded by autorelease builds and should not be released
as part of the Simultanious Release. Add a profile that is active by
default so that default behaviour is unchanged however allows the
autorelease project to disable building this module.

Issue: RELENG-86
Change-Id: I0b1d31b051223a8a1c22494da08bd72eb585198b
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
6 years agoRemove obsolete Maven Site configuration 96/70496/1
Thanh Ha [Sat, 7 Apr 2018 02:38:31 +0000 (22:38 -0400)]
Remove obsolete Maven Site configuration

Change-Id: I31d7a0f8c709797cd927fd1eae266f2cbf6418f5
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
6 years agoBGPCEP-578: Add additional path config 67/70367/3
Claudio D. Gasparini [Thu, 5 Apr 2018 09:01:02 +0000 (11:01 +0200)]
BGPCEP-578: Add additional path config

to afis/safis peer group

Change-Id: I2a4776d7566d79fd15c799c0c3d7613c01638e9e
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix missing return under AbstractBestPathSelector 61/70361/4
Claudio D. Gasparini [Thu, 5 Apr 2018 06:54:42 +0000 (08:54 +0200)]
Fix missing return under AbstractBestPathSelector

Change-Id: I0156a2be5a7772ecdbd55de5f5308092656b38eb
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-740: Fix logic for MED comparison in BGP best path selection 57/70257/2
Claudio D. Gasparini [Wed, 4 Apr 2018 15:35:19 +0000 (17:35 +0200)]
BGPCEP-740: Fix logic for MED comparison in BGP best path selection

New better path should be selected only if new MED is lower than
actual best path MED.

Change-Id: I8bd07dc8b42e575cebcc4e1ea4b55d9c2c842f42
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-577: Neighbor’s local AS configurable 00/70300/3
Claudio D. Gasparini [Tue, 3 Apr 2018 15:10:44 +0000 (17:10 +0200)]
BGPCEP-577: Neighbor’s local AS configurable

Change-Id: I4dab50d048c2c61900251959d06c909c55722df5
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-576: Neighbor’s local address configurable 90/70290/2
Claudio D. Gasparini [Tue, 3 Apr 2018 07:53:26 +0000 (09:53 +0200)]
BGPCEP-576: Neighbor’s local address configurable

Change-Id: Ic4aaf8dbb408e37a0df40e320793dc1330879b06
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-782: Fix peer-id 82/70282/3
Claudio D. Gasparini [Tue, 3 Apr 2018 10:47:45 +0000 (12:47 +0200)]
BGPCEP-782: Fix peer-id

by using the one send by peer.

Change-Id: Ic18e7fac972b08dcd77a2dbaad7482295bdcd7ae
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRework match role condition. 70/70270/4
Claudio D. Gasparini [Sun, 1 Apr 2018 10:43:24 +0000 (12:43 +0200)]
Rework match role condition.

Make condition support from peer role and
to peer role evaluation at once.
Improving performance.

Change-Id: I2e3c69e82e17d651aca962f478901ec4aed63b88
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-781: Provide Add Path support for all AFI/SAFI 95/70195/5
Claudio D. Gasparini [Thu, 29 Mar 2018 15:53:51 +0000 (17:53 +0200)]
BGPCEP-781: Provide Add Path support for all AFI/SAFI

Change-Id: I0fefe5c28a8b9d4f2f0be5cbe966233b73c7081a
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-779: Fix Effective rib writer 28/70228/1
Claudio D. Gasparini [Sat, 31 Mar 2018 22:33:15 +0000 (00:33 +0200)]
BGPCEP-779: Fix Effective rib writer

empty table creation. Create table route
container only if its already not present.

Change-Id: Ia621e8aa8058eeb14b06bc99956efe1e7c6a9f5b
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix test identity 26/70226/3
Robert Varga [Sat, 31 Mar 2018 17:41:24 +0000 (19:41 +0200)]
Fix test identity

Identities are mapped to interfaces, not classes.

Change-Id: I1fa4ce6dcf2825bb40b8c2b86fd4ed93e6d58a8d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
6 years agoRemove config system remnants 17/70217/2
Tom Pantelis [Sat, 31 Mar 2018 01:13:12 +0000 (21:13 -0400)]
Remove config system remnants

The config system is being removed in Flourine so remove
the unused config system dependencies.

Change-Id: I47175e831eced456d14f95cbcefd44dd404333dc
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoBGPCEP-564: Support multiple cluster IDs 42/70042/4
Claudio D. Gasparini [Thu, 22 Mar 2018 11:41:02 +0000 (12:41 +0100)]
BGPCEP-564: Support multiple cluster IDs

Change-Id: I7e50b3ff7e9a4299b70bcfa6e1fa24ba970a795b
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix Route removal 83/70183/1
Claudio D. Gasparini [Thu, 29 Mar 2018 10:43:01 +0000 (12:43 +0200)]
Fix Route removal

remove wrong check if from peer null.

Change-Id: Ica7a80db21ee7279d9aa6071287b0c499999ed04
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoRemove default Non add path implementation 79/70179/2
Claudio D. Gasparini [Thu, 29 Mar 2018 08:15:15 +0000 (10:15 +0200)]
Remove default Non add path implementation

under Ribsupport interface, and implement it under
new abstract class. Avoiding possible boilerplate.

Change-Id: I1e563659df3678aea5e491806adb42adea3dea9d
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-778: Fix peer-group reconfiguration 66/70166/1
Claudio D. Gasparini [Wed, 28 Mar 2018 20:08:18 +0000 (22:08 +0200)]
BGPCEP-778: Fix peer-group reconfiguration

by use correct peer-group name.

Change-Id: Id68fbc1a9cd1a19aea26f0e810ec6b54560df359
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-712: Enforce checkstyle under binding-parent 96/70096/4
Claudio D. Gasparini [Sun, 25 Mar 2018 19:59:15 +0000 (21:59 +0200)]
BGPCEP-712: Enforce checkstyle under binding-parent

Remove from dindiong modules, given inheritance.

Change-Id: I216d25eae5139f84663a9ae1ed43e94ab3d431ae
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-712: Set Checkstyle with warn violationSeverity level 95/70095/3
Claudio D. Gasparini [Mon, 26 Mar 2018 07:10:46 +0000 (09:10 +0200)]
BGPCEP-712: Set Checkstyle with warn violationSeverity level

under specific modules. Until checkstyle issues
are fixed. Therefore we can enforce on top parent
the checkstyle for the rest.

Change-Id: I70cb6e540e4d6e9fa07aabe0f52527896ba228d1
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix checkstyle 94/70094/3
Claudio D. Gasparini [Mon, 26 Mar 2018 10:38:13 +0000 (12:38 +0200)]
Fix checkstyle

for

- data change counter module
- parser mock module

Change-Id: If4bda129f1602effd7deb67a96eaeda4f3924962
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoCreate Empty Route Container 41/70141/3
Claudio D. Gasparini [Tue, 27 Mar 2018 12:33:31 +0000 (14:33 +0200)]
Create Empty Route Container

under eff rib in tables, when
initializing the table.

Change-Id: Ia6138acb76b594a2bfac26b5a2099bd069d7a4be
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-777: Ignore ParserToSalTest until fix 39/70139/2
Claudio D. Gasparini [Tue, 27 Mar 2018 12:16:18 +0000 (14:16 +0200)]
BGPCEP-777: Ignore ParserToSalTest until fix

therefore autorelease-build will not be
blocked

Change-Id: I07df8e124c748a431735716926caf7c065a9d0ce
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-775: Install missing feature 17/70117/1
Claudio D. Gasparini [Mon, 26 Mar 2018 18:23:10 +0000 (20:23 +0200)]
BGPCEP-775: Install missing feature

Openconfig rp Statement implementing(default
 of policies)

Change-Id: Ic3d70dd960ce61c012a06f49d659582f9ca44444
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix checkstyle under Concepts module 84/70084/1
Claudio D. Gasparini [Mon, 26 Mar 2018 06:40:14 +0000 (08:40 +0200)]
Fix checkstyle under Concepts module

Change-Id: If5ed38841ea0013f3e5b721f59c48d7cb778fedf
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-770: Lock file before processing 04/69804/8
Claudio D. Gasparini [Thu, 22 Mar 2018 11:24:10 +0000 (12:24 +0100)]
BGPCEP-770: Lock file before processing

In this way we ensure is not still been modified
when event is raised.

Change-Id: I69047f244e78bdf4536d6f2a83d3b80c45191e90
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-774: Improver error message when missing AFI/SAFI 76/69976/1
Claudio D. Gasparini [Fri, 23 Mar 2018 11:16:38 +0000 (12:16 +0100)]
BGPCEP-774: Improver error message when missing AFI/SAFI

on peer configuration

Change-Id: I79568d87a0e8401fa71376e9a9c0b3b5389a8baf
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-768: Fix switch case 96/69796/1
Claudio D. Gasparini [Thu, 22 Mar 2018 09:27:56 +0000 (10:27 +0100)]
BGPCEP-768: Fix switch case

use break instead of wrong use of return.

Change-Id: I54b1e39c2b0017a628eff9a5a6eb09bb7a68f92c
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agorevert method name change 92/69792/1
Claudio D. Gasparini [Tue, 20 Mar 2018 08:54:25 +0000 (09:54 +0100)]
revert method name change

Change-Id: Id3f00b6d224e61b9de2dc5ab9d85a6273883aaef
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-578: Extended peer-group support 79/69779/2
Claudio D. Gasparini [Wed, 21 Mar 2018 12:07:36 +0000 (13:07 +0100)]
BGPCEP-578: Extended peer-group support

- Add Peer Group to Operational state
- Augment peer group model for support peer remote port.
- Name augmentations missing naming.
- Clean up OpenConfigMappingUtil and
  remove no longer required utility methods.

Change-Id: I840dad2d6f3c49fa1c12462e21f241f36cda03dc
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-764: Use full Ipv6 form under StrictBGPPeerRegistry 26/69626/3
Claudio D. Gasparini [Mon, 19 Mar 2018 16:18:18 +0000 (17:18 +0100)]
BGPCEP-764: Use full Ipv6 form under StrictBGPPeerRegistry

Ipv6 equal is not capable of handle short or full form
of Ipv6, returning false when comparing different versions.
Therefore use full form under registry.

Change-Id: I2127f20e847860792d0f1c18b0ae243825a9d86a
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoEnforce findbug on binding-parent 14/69614/3
Claudio D. Gasparini [Sun, 18 Mar 2018 20:54:04 +0000 (21:54 +0100)]
Enforce findbug on binding-parent

fix findbug complains

Change-Id: Ib05cded6d40994269e06d70ac78a7e534b0d29b6
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoClean up 13/69613/3
Claudio D. Gasparini [Sun, 18 Mar 2018 20:36:28 +0000 (21:36 +0100)]
Clean up

- remove unnecesary imports
- duplicated import
- Use string instead of StringBuilder

Change-Id: Ia4e7d83a582ae54a602fc213a55fff80d337beb5
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-578: Introduce PeerGroup configuration 12/69612/4
Claudio D. Gasparini [Thu, 15 Mar 2018 11:31:28 +0000 (12:31 +0100)]
BGPCEP-578: Introduce PeerGroup configuration

allowing to configure neighbors using a common
peer group config.

Change-Id: I2385f5927146324b540c9cd416942c5166e2d6e8
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-769: Dont use path id 71/69671/1
Claudio D. Gasparini [Tue, 20 Mar 2018 11:05:59 +0000 (12:05 +0100)]
BGPCEP-769: Dont use path id

under family(L3vpn) no supporting additional path.

Change-Id: I738cea4694411f7a63f077b243600f09aee61878
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix config rib policy xml 62/69562/1
Claudio D. Gasparini [Thu, 15 Mar 2018 11:31:03 +0000 (12:31 +0100)]
Fix config rib policy xml

Change-Id: Ie4af66dad1cfb797a010b4e2357c2b8b4d5989b3
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-766: Reduce synchornization 47/69547/2
Claudio D. Gasparini [Fri, 16 Mar 2018 08:56:29 +0000 (09:56 +0100)]
BGPCEP-766: Reduce synchornization

under AbstractTopologySessionListener

Change-Id: I99efef02cef6f9af761c73d57bb4b37e50177830
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoAdd logs to catch result of transaction submision 56/69556/1
Claudio D. Gasparini [Fri, 16 Mar 2018 11:27:01 +0000 (12:27 +0100)]
Add logs to catch result of transaction submision

Change-Id: I4143786bc88c32c8ace8050e27c48c5a96aafb1f
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoImprove sync under EffectiveRibInWriter 19/69519/3
Claudio D. Gasparini [Thu, 15 Mar 2018 07:01:28 +0000 (08:01 +0100)]
Improve sync under EffectiveRibInWriter

Change-Id: I63e46860de46ea0a008400dfb64b1e8e97ea7e73
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoBGPCEP-589: BGP Neighbor match 24/69524/2
Claudio D. Gasparini [Thu, 15 Mar 2018 08:06:48 +0000 (09:06 +0100)]
BGPCEP-589: BGP Neighbor match

match Peer-Id generated from neighbor address,
it can be used as replacement for generate similar
policy than removed simple-routing-policy.

Change-Id: I347a77cb40c72ff110b5088682f8edd375cecca1
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix BestPathState NPE 23/69523/2
Claudio D. Gasparini [Thu, 15 Mar 2018 10:47:28 +0000 (11:47 +0100)]
Fix BestPathState NPE

Check As Path segments are not null when
selecting best path.

Change-Id: Id4d76b9f83d957b505300aabde248978151f5b73
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
6 years agoFix RIB SPI checkstyle complains 23/69423/4
Claudio D. Gasparini [Tue, 13 Mar 2018 06:25:45 +0000 (07:25 +0100)]
Fix RIB SPI checkstyle complains

Change-Id: Ia1862f8db58413ca284f4d76f1d24c0a2d818ac9
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>