Somashekar B [Fri, 5 Oct 2018 10:33:28 +0000 (10:33 +0000)]
Revert "Revert "Rename ether-types to monitor-protocol-type""
This reverts commit
018ddc36ef8744fb2210f9f404aa42c1a91ed7f5.
Reverting the reverted patch to pass the build.
The dependent patch [1] is already merged in Netvirt, hence this patch
which is revert of [0] is required to pass the build.
[0]. Genius: https://git.opendaylight.org/gerrit/#/c/76271/
[1]. Netvirt: https://git.opendaylight.org/gerrit/#/c/76272/
Change-Id: I54589eb7f9babe76c8b82060e10746a84f26696b
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Sam Hague [Thu, 4 Oct 2018 14:41:37 +0000 (14:41 +0000)]
Revert "Rename ether-types to monitor-protocol-type"
This reverts commit
3c5f6750cf080ce1d9311b03caef3c0a8302010e.
Change-Id: I0c401e21f0b54d82a39e24700892955122ba7ff5
Signed-off-by: Sam Hague <shague@redhat.com>
Stephen Kitt [Thu, 4 Oct 2018 15:23:52 +0000 (17:23 +0200)]
Drop Xtend Equinox Common overrides
These are no longer necessary and make it harder than it should be to
upgrade Xtend in odlparent.
Change-Id: I98d745633a2a4f146d65d02b6b6fb8cc64ef7abb
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Somashekar Byrappa [Tue, 18 Sep 2018 14:00:57 +0000 (19:30 +0530)]
Replace yang notifications in ipv6-nd-util.yang
+ In ipv6-nd-util.yang, instead of "notification na-received",
neighbor-advertise-packet has been augmented with packet-metadata.
+ Netvirt patch [0] handles replacing yang notifications with direct API call
for reliability.
This patch will break Netvirt build, hence the corresponding patch in
Netvirt [0] needs to be merged along with this one.
JIRA: NETVIRT-1434
[0] https://git.opendaylight.org/gerrit/#/c/76222/
Change-Id: I9f879f924fa34b5de1b181c9fef8f015ad1bab18
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Somashekar Byrappa [Wed, 19 Sep 2018 14:17:47 +0000 (19:47 +0530)]
Rename ether-types to monitor-protocol-type
+ Renamed ether-types to monitor-protocol-type in
aliveness-monitor.yang.
+ Addressed review comments mentioned in [0].
This patch will break Netvirt build, hence the corresponding patch in
Netvirt [1] needs to be merged along with this one.
[0] https://git.opendaylight.org/gerrit/#/c/73027/
[1] https://git.opendaylight.org/gerrit/#/c/76272/
Change-Id: I15c6eb50b5e82ff8b9fa66086697fad408bf2ec1
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Michael Vorburger [Mon, 1 Oct 2018 11:09:45 +0000 (13:09 +0200)]
very minor change to TestIMdsalApiManager
Change-Id: Ie59161cede9d67ca9be344327a84715e4c94a77d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Tarun Thakur [Fri, 31 Aug 2018 09:07:00 +0000 (14:37 +0530)]
GENIUS-201: TepCommandHelper should avoid heavy DS reads in bean initialization
Changes done:
Separate worker queued to DJC on EOS owner to create the default transport zone.
Register listener in the bundle bring up.
- If vteps are discovered for default TZ, check if default-TZ is already created.
- If present, add it
- If not present ,check if the flag is enabled, then add it to the “tep Not Hosted”.
- Handle default TZ creation as any other TZ creation and move the teps from “Not hosted” to appropriate TZ
Since default-TZ will be created during start of ItmProvider class
through JobCoordinator which runs in separate thread, this change
impacts on current test cases, so Updated ItmTepAutoConfigTest component
test cases and one change in ItmManagerRpcServiceTest.java
Change-Id: I4334a8bb37de86649e7cbf5718d5b262e603ffd4
Signed-off-by: Tarun Thakur <tarun.t@altencalsoftlabs.com>
Somashekar Byrappa [Mon, 24 Sep 2018 07:39:35 +0000 (13:09 +0530)]
Mismatch b/w table 21 and table 220 reg values
Mismatch b/w table 21 and table 220 reg values after tep-delete/tep-add
Issue:
------
During external tep-delete/tep-add, ITM was treating it as
internal tunnel due to incorrect if check. Due to this during
tep-delete, table 21 flows are not deleted and hence it remains as
stale. Even tep-add doesn't program table 21 flows correctly as it is
treated as internal tunnel. Hence traffic fails between DC-GW and VM's.
Solution:
---------
In case of external tunnel, destination-device object will be of IP
address format where-as for internal tunnel, it would contain DPN-ID.
Corrected the if check accordingly.
JIRA: NETVIRT-1429
Change-Id: I267ecd239ddfc9f39a9a5497f9cb27b78ac7e454
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Stephen Kitt [Wed, 19 Sep 2018 14:57:58 +0000 (16:57 +0200)]
Add more MdsalApiManager test methods, key them
This adds implementations of some of the new MdsalApiManager methods
to TestIMdsalApiManager, allowing them to be used in downstream
tests.
It also reworks the storage to be keyed, using the same distinguishers
as the real datastore, avoiding errors related to duplicate handling.
Change-Id: Id87cac5d78d271d6650a513cc8b03c3bd6c88c79
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Sat, 22 Sep 2018 21:03:32 +0000 (23:03 +0200)]
Add NxMatch toString() implementations
These help greatly when debugging.
Change-Id: Ic0c68a12e52d5b918c40cbd776fc10f4b8d307d9
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Chintan Apte [Tue, 7 Aug 2018 09:51:29 +0000 (15:21 +0530)]
Cherry-picking the preventive fix from the ITM side for the
duplicate ITM tunnels issue.
Change-Id: Iee4c2bbdebca0f3f8ae843b367d9471aa43bd140
Signed-off-by: Chintan Apte <chintan.apte@ericsson.com>
David Suarez [Sat, 15 Sep 2018 14:30:38 +0000 (16:30 +0200)]
Minor changes
Change-Id: I36a412d191eace67db24f70c4f350dbbc765c4a3
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
Stephen Kitt [Mon, 10 Sep 2018 16:24:52 +0000 (18:24 +0200)]
Support write-only typed cancellable transactions
When support for cancelling non-written write-only transactions was
added, typed write-only transactions got left out; this patch adds
support for them.
Change-Id: I097efeaf62a88a0cfbfa8e8eb1d6608269bf3736
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Michael Vorburger [Mon, 10 Sep 2018 15:25:16 +0000 (17:25 +0200)]
add @CheckReturnValue to Managed/New/TransactionFactory/Runner/Impl
to 3 internal private & protected methods, and more consistently to
public; where we had it on some but not all @Override methods.. the
ManagedTransactionFactory and ManagedNewTransactionRunner interface
methods also have it.
Perhaps impl don't need to repeat it (inheritance of annotations is a a
bit of a mess AFAIK), but it can't hurt. Otherwise let's remove it from
all impl, for consistency (but keep it on those 3 internal methods).
Change-Id: I0b0c7365685f45e9cfde18a7a0ee9681e8a08d77
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Thanh Ha [Sun, 9 Sep 2018 01:39:48 +0000 (21:39 -0400)]
Migrate genius user-guide to project repo
Issue: DOCS-69
Change-Id: Ie81e3ca990a6a14bcfc65ea354fd11713773efcf
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
Michael Vorburger [Mon, 10 Sep 2018 11:29:57 +0000 (13:29 +0200)]
remove apparently un-used public method in IdManager impl
Change-Id: I352417bbfd5b271abe500526afad3721f4ffcd01
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Mon, 10 Sep 2018 15:21:36 +0000 (17:21 +0200)]
make ManagedTransactionFactoryImpl's internal methods protected
instead of package local, just on the off chance that this currently
entirely package local class will be made public when moving to mdsal.
Change-Id: Ic35f5060dd5339b99fd3ad40e3cce15fe644a191
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Mon, 10 Sep 2018 16:06:39 +0000 (18:06 +0200)]
Refer to java.util Future instead of Netty’s
Change-Id: I918759a5807f0a6100a45f9e77d45a222d62f9db
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Michael Vorburger [Fri, 7 Sep 2018 13:57:21 +0000 (15:57 +0200)]
minor: move JavaDoc to public RetryingManagedNewTransactionRunner
from package-local RetryingManagedNewTransactionRunnerImpl
Change-Id: I1663ab6a0a6ee27edc4c6c07d312bfe8f9c49451
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Fri, 7 Sep 2018 14:58:51 +0000 (16:58 +0200)]
Refactor ManagedTransactionFactory to reduce dupes
This reworks the factory and runner to have a single method in charge
of each type of behaviour.
Change-Id: Ibbeb1f5d78eadfeb6cc35cbef4e308c43e8acdd1
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Wed, 5 Sep 2018 09:19:22 +0000 (11:19 +0200)]
Document that the commit result is nullable
The result passed to ManagedNewTransactionRunnerImpl::commit or
ManagedTransactionFactoryImpl::commit can be null, document that by
adding @Nullable.
Change-Id: Ib963a795f9d56ac2c36fe29eb1e2bf0c801a0871
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 16:43:53 +0000 (18:43 +0200)]
make never written to WriteTransaction cancel themselves
follow up to Ic7175574097702a45290c7500fcad2c37475a228, which did this
for ReadWriteTransaction operations in ManagedNewTransactionRunnerImpl;
this applies the same idea also to WriteTransaction, for consistency.
Change-Id: I8e3518f8d15bef3f8033336307b33bb03ab450cb
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 17:05:25 +0000 (19:05 +0200)]
reduce duplication in ManagedTransactionFactory impls (2/2)
in ManagedNewTransactionRunnerImpl and ManagedTransactionFactoryImpl
incl. minor required NPE fix in TepCommandHelperTest
Change-Id: I756e0b9a3ecb6cf9fab547b7db083da24e50dc7a
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Wed, 29 Aug 2018 07:52:40 +0000 (09:52 +0200)]
Add support for retrying when reads fail
In some circumstances (e.g. cluster bring-up, or just after a node
fails), reads should be retried. This patch implements read-failure
handling in retrying transactions, for read-only and read-write
transactions.
Change-Id: Ie3f5e3b52aeeaf7b8f0ef4e87968d31bf0f9c89e
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Michael Vorburger [Mon, 3 Sep 2018 14:19:46 +0000 (16:19 +0200)]
remove UpgradeState and UpgradeStateImpl (not UpgradeStateListener)
now that all of its users in netvirt have been switched to serviceutils.
Change-Id: I9894bd65f7128d660f5294e14d86578b2c1b79ca
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Mon, 3 Sep 2018 14:11:30 +0000 (16:11 +0200)]
deprecate UpgradeState and UpgradeStateImpl (not UpgradeStateListener)
Change-Id: I646b4a10abc6ef7aac531e76832e8a7d0f1356f7
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 19:05:12 +0000 (21:05 +0200)]
base UpgradeStateImpl on (cached) UpgradeConfig instead of Config
This gives a consistent view of the genius and serviceutils upgrade
state to overall code possibly using a mix of both. Before this change,
they could potentially see an inconsistent view of the
isUpgradeInProgress flag since they're obtaining it from different
sources.
In reality we only set this during installation, and it should normally
get in sync quickly, so IRL it's very unlikely to be a problem, but it's
still good to do this right.
based on review feedback in I08601afb77ca9faaa29e2839aefcdfbcbbb66f5e
Change-Id: I771529de81b689ad89bed6e3698e247d45dcb151
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 18:55:57 +0000 (20:55 +0200)]
factor out UpgradeStateImpl from UpgradeStateListener
This is a pure technical refactoring and it should still behave in
exactly the same way as before; during GENIUS-207 it just occurred to me
that there really are 2 separate concerns here, and this makes that much
clearer.
Also added some JavaDoc explaining what both of these actually do.
Change-Id: I42bd3981bdc9e6fe006e347596f967e495a80b5d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 16:18:40 +0000 (18:18 +0200)]
minor edit to ManagedTransactionFactory's JavaDoc (1/2)
Change-Id: I98bd0912b86874950d3716f7a13050cfa1ea6f67
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Tue, 28 Aug 2018 18:33:42 +0000 (20:33 +0200)]
use un-clustered UpgradeStateListener with cache
doing this with a clustered DTCL only leads to
OptimisticLockFailedException (OLFE) on nodes, but there's really no
need for this to be clustered; it's sufficient for 1 node (leader) to
ract to changes and update the flag.
We also replace the isUpgradeInProgress with a DataObjectCache, because
that (only) does need to use a clustered DTCL to work correctly.
JIRA: GENIUS-207
Change-Id: I08601afb77ca9faaa29e2839aefcdfbcbbb66f5e
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 16:12:56 +0000 (18:12 +0200)]
reduce duplication in ManagedTransactionFactory impls (1/2)
in ManagedNewTransactionRunnerImpl and ManagedTransactionFactoryImpl
Change-Id: I88a528691511f70c41d1169858747cc88e0a9fcc
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 16:11:48 +0000 (18:11 +0200)]
introduce WriteTrackingTransaction
this is used in the next commit to reduce code duplication
Change-Id: I336e7d53ee54b05b58d775ca801af597edb7dec3
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 16:24:56 +0000 (18:24 +0200)]
minor: add missing @Override in ManagedNewTransactionRunnerImpl
Change-Id: Ibe5fb03b0fa61927a2b7be9a09083b2ac70fd68b
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Tue, 21 Aug 2018 08:29:26 +0000 (10:29 +0200)]
Add support for transaction chains in managed txes
The nice thing about transaction chains is that they allow multiple
transactions to be processed in sequence and see the results of
previous transactions, without needing to explicitly wait (which is a
common pattern in NetVirt).
This is a first stab at support for transaction chains, in particular
it doesn’t allow overriding the listener. It does however introduce
support for read-only transactions, which become particularly useful
with transaction chains. Asynchronous support is coming in another
patch.
Change-Id: I16c4aace533acd868d439d0c5082f711f71b3f2b
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Mon, 27 Aug 2018 15:16:44 +0000 (17:16 +0200)]
Split out a managed transaction factory
Change-Id: Ib8b86432698ec117567020ea9f01de897c468051
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Josh [Thu, 16 Aug 2018 23:40:29 +0000 (16:40 -0700)]
Add dp-id to ARP notifications
In order to fix the below referenced JIRA natmanager
must configure flows for a FIP assigned to a neutron
port that is not added to br-int. Normally FIP flows
are configured on the switch which hosts the assignee
port, once it is bound to the switch. However, since
this is a *virtual* ip it is not attached to any switch,
just advertised by GARP by the VM that handles the VIP.
The fix in netvirt will rely on intercepting the GARP to
determine which switch to configure the flows on. This
patch adds the dp-id (extracted from the node's node-id)
to the ARP notification for this purpose.
JIRA: NETVIRT-1402
Change-Id: Ica98567de8d5623b677008db8532e3077232676d
Signed-off-by: Josh <jhershbe@redhat.com>
Michael Vorburger [Fri, 31 Aug 2018 15:02:02 +0000 (17:02 +0200)]
fix minor typo in DataObjectCache constructor argument name
Change-Id: Icbd8060f9abfee985fa32af7dbd3ffcfd83ef74f
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Nobin Mathew [Fri, 24 Aug 2018 06:22:03 +0000 (11:52 +0530)]
Stale entries in AlivenessMonitor Datastore
JIRA: GENIUS-206
Change-Id: I593bb432bde76db3db8cd0fe8fd8bfc27ad87b9b
Signed-off-by: Nobin Mathew <nobin.mathew@ericsson.com>
Michael Vorburger [Thu, 9 Aug 2018 15:04:46 +0000 (17:04 +0200)]
forbid use of java.util.concurrent.Executors via Checkstyle
Because we want to enforce use of
org.opendaylight.infrautils.utils.concurrent.Executors
instead of java.util's, because that enforces using a specific prefix
for new thread names and always logs uncaught exceptions.
Includes fixing up 5 remaining usages.
Change-Id: I033d0f106d8c348e4567257d5802f7b22315a24a
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Thu, 9 Aug 2018 14:46:29 +0000 (16:46 +0200)]
git use infrautils' instead of JUL Executors
because I'd like to start enforcing non-use of direct JUL Executors.
Change-Id: Icf4a7117659722aac29e8d0428ca1c794e7b0b28
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Tue, 26 Jun 2018 09:56:40 +0000 (11:56 +0200)]
Convert interfacemanager to datastore-constrained
Change-Id: Ia5fd297e7b81a4508887278972cd7a36055774f0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Stephen Kitt [Fri, 17 Aug 2018 16:52:45 +0000 (18:52 +0200)]
Make read-only transactions cancel themselves
When a read-write transaction is only used to read from the datastore,
there's no point in committing it; this patch changes managed
read-write transactions so they are cancelled rather than submitted
when appropriate.
Change-Id: Ic7175574097702a45290c7500fcad2c37475a228
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Robert Varga [Tue, 21 Aug 2018 15:05:20 +0000 (17:05 +0200)]
Return Set instead of Iterable in test
Method signature will be changed to Set to define equality, prepare
for that.
Change-Id: I073a3939dce0c6e0fb9d21026c9da19ecb1976b4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Stephen Kitt [Fri, 17 Aug 2018 11:06:00 +0000 (13:06 +0200)]
Drop odlparent FindBugs override
Now that we're using odlparent 3.1.3, we no longer need to pull in a
newer version of its FindBugs configuration.
Change-Id: I6a9e37d36e0a82edbb8e4030fdf531ce825d332d
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Michael Vorburger [Thu, 9 Aug 2018 13:29:18 +0000 (15:29 +0200)]
use managed transaction in AlivenessMonitor processReceivedMonitorKey()
JIRA: GENIUS-180
Change-Id: I7b1a5d14c78b650e46ab2af6e1dffc570409fa13
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Robert Varga [Sat, 11 Aug 2018 07:36:33 +0000 (09:36 +0200)]
Remove references to mdsal-model-artifacts
This artifact is going away, migrate to mdsal-artifacts.
Change-Id: I393eeec82914f73b689307d9e0dd06852f7fc8ea
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Michael Vorburger [Tue, 7 Aug 2018 21:15:47 +0000 (23:15 +0200)]
make MDSALManager's 3 inner classes private instead of package local
and make some private helper methods static because they can be
Change-Id: I74e3f367a991bc275f0f0f6308490d3c2bef1331
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Thu, 9 Aug 2018 14:48:31 +0000 (16:48 +0200)]
remove not needed version number in alivenessmonitor POM
Change-Id: I7221d759e206c00dcbe378a5f0e353fbd85b4d39
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Anil Belur [Thu, 9 Aug 2018 12:40:15 +0000 (18:10 +0530)]
Bump versions by x.(y+1).z for next dev cycle
Change-Id: I037dfc09ba940fd2d3ffab2bcb9eae20d8606621
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
Nidhi [Tue, 7 Aug 2018 07:26:30 +0000 (12:56 +0530)]
API to expose tunnelstate cache
Providing an API to get tunnel state from cache
to avoid DS read.
Change-Id: I961ce3bcac9d89d998814846633220414cdc605d
Signed-off-by: Nidhi <nidhi.adhvaryu@ericsson.com>
Edw7n [Tue, 7 Aug 2018 10:04:24 +0000 (15:34 +0530)]
GENIUS-189: Enforce use of managed transactions
- uses the wrapper provided in c/74759/
Change-Id: Ia2df255cdc585b8fdd212ea1491f2c483882a38d
Signed-off-by: Edw7n <n.edwin.anthony@ericsson.com>
Robert Varga [Mon, 6 Aug 2018 15:46:46 +0000 (17:46 +0200)]
Bump yangtools to 2.0.10
This fixes an issue with actions, hence we need it in Fluorine.
Change-Id: I5f47930673ed7f57ee84d832216308a957db6a01
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Hema Gopalakrishnan [Fri, 16 Feb 2018 10:51:02 +0000 (16:21 +0530)]
Fix for ITM reporting wrong tunnel status
When the tunnel is down and the controller undergoes a reboot, the tunnel
BFD states come as UP and DOWN back to back and this results in the DOWN
state not getting reflected correctly in ITM.
Fix is to cache the tunnel status that comes as DOWN in "update" and
process the add DTCN and then process the update tunnel state DTCN
Fixed checkstyle issues
Fixed issues due to rebase
Moved the unprocessed cache to a separate class
Addressed review comments
Change-Id: Iee89e482b8d55f806264f23904e74c5122c0c399
Signed-off-by: Hema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
Hema Gopalakrishnan [Wed, 7 Mar 2018 06:56:50 +0000 (12:26 +0530)]
Upgrade support for ItmDirectTunnels
When the controller gets upgraded from non-itmdirecttunnels version to
itmdirecttunnels version, then some datastores need to be cleaned up.
This patch cleans up two such datastores.
Using TunnelLstenerCreator for conditional instantiation of config and
Internal listener for ITM Direct Tunnels
Change-Id: I4c9da895783d4689aab7ff6a4013f862c23dd16f
Signed-off-by: Hema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
Faseela K [Sat, 28 Jul 2018 05:37:10 +0000 (11:07 +0530)]
netvirt 3node CSIT - Unable to initialize bean tepCommandHelper
In a 3 node setup, TepCommandHelper bean initialization fails, as all
3 nodes are writing to the same DS, resulting in ConflicitngModificationException.
The bigger question here, whether we really want to do such a heavy method
configureTunnelType() in the bundle bringup thread. It is having several datastore
reads and writes.
JIRA: GENIUS-192
Change-Id: I6607997478cebc4c7d1fc7ebf18ae89ae2eaa857
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Chintan Apte [Thu, 2 Aug 2018 10:51:51 +0000 (16:21 +0530)]
Bug: Genius-167
Change-Id: Id078d379d0fe4824e13d156abe55e09dd92097af
Signed-off-by: Chintan Apte <chintan.apte@ericsson.com>
Tarun Thakur [Thu, 2 Aug 2018 09:39:09 +0000 (15:09 +0530)]
GENIUS-195: Transport Zone default-transport-zone has no subnets
This patch is for fix of JIRA bug GENIUS-195
Non-relevant error log message will be removed occuring in karaf logs
which are not error in nature.
Change-Id: I0d407d9859bfe437ab8dfad402f7cb10e66dae17
Signed-off-by: Tarun Thakur <tarun.t@altencalsoftlabs.com>
Faseela K [Thu, 2 Aug 2018 11:46:10 +0000 (17:16 +0530)]
Enforce use of (only) managed transactions in fcapsmanager
JIRA: GENIUS-182
Change-Id: If886a40a172c414a5b9a8089820254ce027e8d14
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Faseela K [Thu, 2 Aug 2018 10:12:42 +0000 (15:42 +0530)]
Enforce use of (only) managed transactions in fcapsapplication
JIRA: GENIUS-182
Change-Id: I7a8ec02e1ca63cafaaa6c445c8818df9a1023cf2
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Michael Vorburger [Tue, 31 Jul 2018 09:47:02 +0000 (11:47 +0200)]
Enforce use of (only) managed transactions in idmanager
The real work of changing the code was previously done
by Stephen, so this change just enforces future non-regression.
JIRA: GENIUS-179
Change-Id: I34ddd61dcf7bad4ba4c44c559ca3ebc65addab80
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Faseela K [Wed, 1 Aug 2018 02:23:10 +0000 (07:53 +0530)]
Enforce use of (only) managed transactions in arputil
JIRA: GENIUS-181
Change-Id: I3643e4c05d50858ed344b6ff39609fa22cafdeee
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Edw7n [Thu, 2 Aug 2018 04:40:02 +0000 (10:10 +0530)]
Tweaks to avoid unncessary .toString
- includes removing redundant if check
Change-Id: I16b71a0d839b683bdfd279e6d466c3bc02cf0e06
Signed-off-by: Edw7n <n.edwin.anthony@ericsson.com>
Edw7n [Wed, 1 Aug 2018 09:23:26 +0000 (14:53 +0530)]
Renaming workers in itm listeners
Change-Id: Ib4ad9499cd47a588741a7f8481093471fa9f733f
Signed-off-by: Edw7n <n.edwin.anthony@ericsson.com>
Faseela K [Tue, 31 Jul 2018 18:54:11 +0000 (00:24 +0530)]
Remove openflowplugin app-config-pusher dependency
This feature is not used by GENIUS.
Change-Id: Ica63b5f18a7052f17effd2e477adbf0e8bd06083
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Faseela K [Tue, 31 Jul 2018 18:15:36 +0000 (23:45 +0530)]
TepCommandHelper clean-up
Change-Id: I8da4d9b95f7fc793458def6a30d2b97c6f00ddc6
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Michael Vorburger [Thu, 26 Jul 2018 12:04:21 +0000 (14:04 +0200)]
finish lockmanager's managed transaction conversions
by also switching LockManagerServiceImpl's readWriteLock() to
RetryingManagedNewTransactionRunner, which is easy now that
ManagedNewTransactionRunner has not only the initial call* methods but
also the new apply* methods which can return a value.
Strictly speaking this isn't 100% equivalent to before, because now
readWriteLock() itself will already do 3 retries, whereas before that
happened (and still does) only in the caller. I can't see how that
would be a problem though - on the contrary. (E.g. if I am ever
motivated to finish up the infrautils.metrics based monitoring I've long
been meaning to add to the RetryingManagedNewTransactionRunner, then it
would monitor retries in lockmanager also.)
We now also enforce use of (only) managed transactions in lockmanager.
JIRA: GENIUS-183
Change-Id: I766f507b3ad047ca8480b0669ca740ab000eacc2
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Robert Varga [Fri, 27 Jul 2018 12:07:22 +0000 (14:07 +0200)]
Bump yangtools to 2.0.9
This patch bumps yangtools to latest release.
Change-Id: Ic25f0c507f1544523a77363b494273ad515606db
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Faseela K [Fri, 27 Jul 2018 11:08:51 +0000 (16:38 +0530)]
IFM Instance Recovery failing randomly.
Recovery logic was triggering a back to back delete and create.
More deterministic way is to wait for delete to complete and then
proceed with create.
JIRA: GENIUS-191
Change-Id: I065e5c4c94443cda8a953a2dc58c78aa2ef31caa
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Dimple Jain [Fri, 27 Jul 2018 10:07:02 +0000 (15:37 +0530)]
Default monitor interval changed to 1000.
Change-Id: I6542fa715a2d1aab7ad4d4b64645547f9be7ec4d
Signed-off-by: Dimple Jain <dimple.jain@ericsson.com>
Michael Vorburger [Thu, 26 Jul 2018 11:40:05 +0000 (13:40 +0200)]
use Tx commit() instead of deprecated submit() in LockManagerServiceImpl
Change-Id: Ieefb4d5e7db81e05308eaaef6c52ab408ab5d960
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Wed, 18 Jul 2018 16:06:38 +0000 (18:06 +0200)]
Bump to odlparent 3.1.3
Change-Id: Ib36163e35fed7d1808aaad5f434717fc7b49c855
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Faseela K [Thu, 26 Jul 2018 09:22:11 +0000 (14:52 +0530)]
Enforce use of (only) managed transactions in resourcemanager
JIRA: GENIUS-176
Change-Id: Ia9e29267676548f8eac256b2673bb22b247a51ff
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Faseela K [Thu, 26 Jul 2018 09:17:58 +0000 (14:47 +0530)]
Enforce use of (only) managed transactions in ipv6util
JIRA: GENIUS-184
Change-Id: I1048aeb5021ab364a3a4dfdd0292bcaa23a61614
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Michael Vorburger [Thu, 26 Jul 2018 09:32:40 +0000 (11:32 +0200)]
reduce version number duplication in interfacemanager-impl POM
Change-Id: I717283ec1b9737dd5a5dc71ad9777c711e485e06
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Robert Varga [Mon, 23 Jul 2018 23:31:31 +0000 (01:31 +0200)]
Use IetfYangUtils to canonize addresses
IetfYangUtils provides optized utility methods for converting
Mac/PhysAddress to its canonical lower-case format. Use it wherever
possible.
Change-Id: I58860912befbaad74b13287a5c2a53fa91fd80d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 25 Jul 2018 01:23:35 +0000 (03:23 +0200)]
Simplify ActionConverterUtil
Rather than using uncached reflections, use ready-made logic present
in generated builders.
Change-Id: I5a83dd002ebf7e6121fe915f81a96313d323aede
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Michael Vorburger [Tue, 24 Jul 2018 15:10:57 +0000 (17:10 +0200)]
add @Named to UpgradeStateListener @Singleton
this helped me to finally locally reproduce the confusing problem we
were chasing in genius change I91466c31c0526ff227700f23b48b9db0dfb15f5a
<https://git.opendaylight.org/gerrit/#/c/73678/> ...
this does *NOT* fix the problem, and is technically not required now
that we've fixed it via Icacba88d577a4fc5da61fd490a3c9fee13f7034f
<https://git.opendaylight.org/gerrit/#/c/74400/> - but it seems useful
to keep this anyway, just in case we ever hit a similar problem in the
future again.
Fixing https://issues.apache.org/jira/browse/ARIES-1820 could later be a
better real long term solution to immediately see this kind of problem.
Change-Id: I10a750cc4c5eda4ba60c994b76071209565015bf
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Stephen Kitt [Wed, 25 Jul 2018 15:10:12 +0000 (17:10 +0200)]
Add DataBroker exclusion checks
This ports the DataBroker exclusion checks (using Checkstyle) from
NetVirt, and enforces them for interfacemanager.
Change-Id: I4ff045b9063f529b793e29814bf51086e5749ce8
JIRA: GENIUS-177
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Faseela K [Wed, 25 Jul 2018 02:19:19 +0000 (07:49 +0530)]
Fix binding reflections package change
Change-Id: If23949e698d1ebe4fe63cc4c6a9ec25078dc9fbc
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Jaime Caamaño Ruiz [Thu, 7 Jun 2018 14:27:07 +0000 (16:27 +0200)]
Add support for official OVS NSH implementation
push_nsh and pop_nsh actions are not available in the official
OVS NSH implementation.
Added support for new action encap, decap and dec_nsh_ttl.
Change-Id: I0c3bd980081bcfcb04477b5dfae44c2c8a7162e9
JIRA: TSC-114
Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com>
Vishal Thapar [Tue, 3 Jul 2018 04:30:07 +0000 (10:00 +0530)]
Use new UpgradeConfig
SRVUTILS-2 added a new upgrade config. For backward
compatibility set the new flag each time old one is
changed.
JIRA: GENIUS-173
DependsOn: Idd3690f23ba6c048689f0d93f767eb62aad40b9e
Change-Id: I91466c31c0526ff227700f23b48b9db0dfb15f5a
Signed-off-by: Vishal Thapar <vthapar@redhat.com>
Michael Vorburger [Tue, 24 Jul 2018 15:15:00 +0000 (17:15 +0200)]
fix minor JavaDoc typos in UpgradeState
Change-Id: I75471387a0be7281f6e984321f35171778950735
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Michael Vorburger [Tue, 24 Jul 2018 10:08:26 +0000 (12:08 +0200)]
simplify NWUtilTest, test IllegalArgumentException and address
but not the exact message content, because it is useful for debugging to
see the address that was invalid, but it's not important to assert on
the exact message.
Change-Id: I438c66a959d08baedcdcc5a1b3a1c55608eaed64
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Robert Varga [Tue, 24 Jul 2018 09:27:33 +0000 (11:27 +0200)]
Fixup exception message tests
The message reported has changed, adjust for that.
Change-Id: Ia092143fe1dd18e073d48a828769d3e22197bd53
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Mon, 23 Jul 2018 04:56:08 +0000 (06:56 +0200)]
Add alternative createHwvtepPhysicalLocatorAugmentation()
Callers usually have an IpAddress handy, no need to muck with
string conversion.
Change-Id: I87826a745400393ce980ef110d6286816ff8ee4f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 22 Jul 2018 08:42:55 +0000 (10:42 +0200)]
Use union's stringValue()
getValue() is a bad interface and is going away. use stringValue()
instead.
Change-Id: Ic74394e1c6c8641495fe6c073b2088dd8412bc2a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Vishal Thapar [Fri, 8 Jun 2018 06:54:56 +0000 (12:24 +0530)]
Improve IFM/ITM DiagStatus
JIRA: GENIUS-108
Change-Id: Ibcc506fc628cbdbbdd545e97fa2893a747cbf11b
Signed-off-by: Vishal Thapar <vthapar@redhat.com>
Faseela K [Sat, 21 Jul 2018 05:57:59 +0000 (11:27 +0530)]
Remove DJC documentation
This is already moved to infrautils.
Change-Id: I2a0b0b39a7a14007700888dc8b9841dbb8d7097e
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Robert Varga [Thu, 19 Jul 2018 16:13:51 +0000 (18:13 +0200)]
Minimize feature dependencies
Nothing in genius seems to require odl-mdsal-broker, remove
this dependency to speed things up.
Change-Id: I9e9edb36bc0ad65038c660483b802500ee1fb721
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 18 Jul 2018 21:08:11 +0000 (23:08 +0200)]
Use ipAdressBuilder.getDefaultInstance()
Instead of converting to char[], use utility class provided.
Change-Id: Idd43fa9577c4cc5a3f92e1d26801b3e69aab592f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Faseela K [Tue, 17 Jul 2018 19:34:40 +0000 (01:04 +0530)]
Avoid ofp topology discovery
openflowplugin is packaging lldp based topology discovery
along with "odl-openflowplugin-flow-services. This feature sends
periodic lldp messages on all the links available, to discover
the topology. Genius does not use this feature, but is coming
by default with the feature we were including.
This patch removes the feature which was previously used, and
use only the appropriate features needed for Genius functionality.
JIRA: OPNFLWPLUG-1024
Change-Id: Idbe860e66ade16f52a5a1860fe231ada26086af4
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Robert Varga [Tue, 17 Jul 2018 18:37:01 +0000 (20:37 +0200)]
Pull in specific models
Rather than pulling in odl-mdsal-models, which contains a lot of
models, pull in just what's needed: RFC7223/7224 ietf-interfaces
and the iana-if-type.
JIRA: MDSAL-363
Change-Id: Ia8ea49cbeb91e7af7cf793ddc7fadd6e93061449
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Hema Gopalakrishnan [Sat, 9 Jun 2018 14:10:48 +0000 (19:40 +0530)]
GENIUS-164 Fix-Table 0 not programmed occasionally
Occasionally Table 0 flows for ITM is not programmed due to timing issues.
Fix is to synchronize the north and south bound events. If south bound
event doesnt find the config then the event is parked temporarily. WHen
the north bound config event is fired, the parked event will be processed.
These two processing needs to be synchronized else the event may be missed
occasionally resulting in Table 0 not being programmed at all.
Fix using InfraUtils KeyedLocks
Added another cache for parking events if DPNTepsInfo is not available.
Change-Id: I21afc30dea4df2f68410353c1fe8a0a73d55ff20
Signed-off-by: Hema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
Stephen Kitt [Mon, 16 Jul 2018 12:22:40 +0000 (14:22 +0200)]
Remove some BigInteger/String conversions
These are quite expensive, so let’s remove them where possible.
Having a String instead of a BigInteger for the DPN id doesn’t seem
much worse type-wise (it would be better to have a specific type...).
Change-Id: Ib890316aacb3c485867ee9c3b8d825b5e0b7f421
Signed-off-by: Stephen Kitt <skitt@redhat.com>
nithi thomas [Fri, 15 Jun 2018 07:38:50 +0000 (13:08 +0530)]
Support of IPv6ND based aliveness monitor.
+ Supported IPv6ND based aliveness monitor.
+ This functionality will be used by VPN manager to monitor
learnt/hidden IPv6 addresses.
JIRA: NETVIRT-1213
Change-Id: I53c06b4a00feaa2df257435952cfaab8862ae003
Signed-off-by: nithi thomas <nithi.t@altencalsoftlabs.com>
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Stephen Kitt [Tue, 10 Jul 2018 15:28:31 +0000 (17:28 +0200)]
Add MDSALManager exceptions and missing methods
This patch propagates errors from reading methods in MDSALManager; it
needs I66ad8c2643a03d64ccb4abed94628498636f9152 in NetVirt to avoid
breaking the latter.
It also adds a couple of bucket-related methods which are needed for
fibmanager in NetVirt.
Change-Id: Ic63fd992b33e9e1cd4049bc129545a9830b7a8c0
JIRA: NETVIRT-1318
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Faseela K [Thu, 12 Jul 2018 12:15:45 +0000 (17:45 +0530)]
vlan member interface creation fails in netvirt 3 node CSIT
When a trunk port, and a trunk-member is created back to back,
there is a race condition in interface-manager that the trunk member
tries to fetch the interface-state information for the trunk,
and it fails, as trunk-interface-state is parallelly getting updated.
With Job Coordinator, this works properly in single node, but when
3 node comes, the synchronization is not at all valid.
The fix uses DataTreeEventCallBackRegistrar to delay the vlan-member
interface configuration till interface-state for vlan-trunk shows up.
JIRA: GENIUS-175
Change-Id: Iccb5d5e08a8a33c7b04d36e4ed348bcef6b17756
Signed-off-by: Faseela K <faseela.k@ericsson.com>
Edw7n [Fri, 13 Jul 2018 08:45:12 +0000 (14:15 +0530)]
To drop update interface in case of tep add
- prevent retry of update for a tep
Change-Id: I1ed9646f9a864a07f2e61e7dab9e57fc961598f2
Signed-off-by: Edw7n <n.edwin.anthony@ericsson.com>
Edw7n [Wed, 11 Jul 2018 06:21:47 +0000 (11:51 +0530)]
Cleaning up InterfacestateRemoveWorker
- flowCapableNodeConnector event was always getting passed as NULL
- Removing that parameter altogether
Change-Id: I75782d7e43e081e7b18f65deba8f3100ef1da4b7
Signed-off-by: Edw7n <n.edwin.anthony@ericsson.com>
Faseela K [Fri, 13 Jul 2018 09:28:56 +0000 (14:58 +0530)]
Fix typo in interfacemanager design document
Change-Id: Iee9038532bca5450c8043212edd5d69042a3f8c8
Signed-off-by: Faseela K <faseela.k@ericsson.com>