Controller

Overview

The Controller project is an infrastructure service that supports other OpenDaylight projects. It does not have user-facing features.

Behavior/Feature Changes

The implementation of Entity Ownership Service has been rewritten from scratch. It is now completely independent of sal-distributed-datastore. See this issue for details.

As per upstream advice from Akka, we have now switched our communications to use Akka Artery. See this issue for details.

New Features

There are no new features.

Deprecated and Removed Features

There are no deprecated features in this release, but there is a large number of feature removals: * opendaylight-inventory and opendaylight-topology models have been moved to OpenFlow Plugin * support for upgrading from versions before Sodium SR was removed * prefix-based shards have been completely removed * the proof-of-concept messagebus component was removed

Resolved Issues

The following table lists the issues resolved in this release.

Issues resolved in versions 4.0.0 through 4.0.3 (JIRA)

Type

Key

Summary

Resolution

Fix Version(s)

Bug

CONTROLLER-1995

Introduce cli commands for clustering-test-app

Done

4.0.3

Bug

CONTROLLER-1994

Dead leters: eos.akka.owner.supervisor.command.OwnerChanged

Done

4.0.2

Bug

CONTROLLER-1993

Dead letters: datastore.messages.PeerUp

Done

4.0.2

Bug

CONTROLLER-1989

eos-akka triggers NPE when stopping

Done

4.0.3

Bug

CONTROLLER-1986

Dead letters: datastore.messages.DataTreeChangedReply

Done

2.0.9, 3.0.10, 4.0.1

Bug

CONTROLLER-1930

Owner does not reset on the leader when the follower starts up

Duplicate

4.0.0

Bug

CONTROLLER-1773

Long entity-owners read leads to akka quarantine

Duplicate

4.0.0

Bug

CONTROLLER-1737

Current transaction in state READY leads to RequestTimeoutException (120s) after make-leader-local

Cannot Reproduce

4.0.0

Bug

CONTROLLER-1715

6 GB heap is not entirely enough for BGP ingest test with 1 million prefixes when tell-based protocol is used

Cannot Reproduce

4.0.0

Bug

CONTROLLER-1672

Restconf slow to respond when the member is under load

Cannot Reproduce

4.0.0

Bug

CONTROLLER-1584

Fix broken controller features failing the new extended SingleFeatureTest incl. TestBundleDiag due to IllegalStateException: ./configuration/initial/akka.conf is missing

Done

4.0.0

Bug

CONTROLLER-1904

DistributedEntityOwnershipService may silently lose registrations

Duplicate

4.0.0

Epic

CONTROLLER-1972

Deprecate and remove messagebus

Done

4.0.0

Improvement

CONTROLLER-1992

Expose entity ownership information via MD-SAL

Done

4.0.2

Improvement

CONTROLLER-1982

Reimplement Distributed Entity Ownership Service on top of Akka Distributed Data

Done

4.0.0

Improvement

CONTROLLER-1968

Switch to Akka Artery

Done

3.0.8, 4.0.0

Improvement

CONTROLLER-1960

Publish Distributed EOS only after the shard has settled

Won’t Do

4.0.0

Improvement

CONTROLLER-1954

Lower akka-segmented-journal memory footprint

Done

3.0.8, 4.0.0

New Feature

CONTROLLER-1955

Snapshot and journal export on recovery

Done

4.0.0

Sub-task

CONTROLLER-1977

Remove Producer/Consumer/ShardedDataTree implementation

Done

4.0.0

Task

CONTROLLER-1985

Remove support for datastore versions before Sodium SR1

Done

4.0.0

Task

CONTROLLER-1984

Remove obsolete datastore.cfg properties

Done

4.0.0

Task

CONTROLLER-1979

Remove opendaylight-inventory model

Done

4.0.0

Task

CONTROLLER-1978

Remove opendaylight-topology model

Done

4.0.0

Task

CONTROLLER-1975

Deprecate and remove Producer/Consumer/ShardedDataTree implementation

Done

4.0.0

Task

CONTROLLER-1974

Remove messagebus

Done

4.0.0

Task

CONTROLLER-1939

Add new MutableCompositeModification version

Done

4.0.0

Known Issues

The following table lists the known issues that exist in this release.

Issues affecting versions 4.0.0 through 4.0.3 (JIRA)

Type

Key

Summary

Status

Affected Version(s)

Fix Version(s)

Bug

CONTROLLER-2004

EOS gossip propagation takes too long

Resolved

4.0.0

4.0.4

Bug

CONTROLLER-1983

Akka artery fails with java.lang.OutOfMemoryError: Direct buffer memory

In Progress

4.0.0

5.0.0

Bug

CONTROLLER-2009

Get Entity RPC does not support OVSDB entity type

Resolved

4.0.0, 4.0.5

4.0.6

Bug

CONTROLLER-1991

Tell-based protocol can leak transaction IDs on the backend

Resolved

2.0.0, 3.0.0, 4.0.0, Oxygen SR4

2.0.10, 3.0.13, 4.0.7

Bug

CONTROLLER-2022

Remote-to-local ready() replay fails with IllegalStateException

Resolved

2.0.0, 3.0.0, 4.0.0

2.0.10, 3.0.13, 4.0.7