Switch CompositeModification to bypass thread-local streams 66/82466/2
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 3 Jun 2019 17:43:22 +0000 (19:43 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 10 Jun 2019 09:49:51 +0000 (11:49 +0200)
commit515dbcdd4fba49e9b02fa92eaec8b32bfe141429
tree22b162f1270af7663347bd6be240ce60034c3ba1
parent6e1d28a0dbad02b8bcefc24c3b365fe6ba39f369
Switch CompositeModification to bypass thread-local streams

Thread-local streams have little control over the version being
used, as the stream is allocated all over the place.

This model cannot function without explicit setup, which is used
by CompositeModification. This patch migrates CompositeModification
to use a new NormalizedNodeDataInput-based interface, so
thread-locals become obsolete.

JIRA: CONTROLLER-1888
Change-Id: I1111be5d6fc8c0129fb72232c3e713004068f152
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit b12758e87e3da8b71b574614f8829e5fcbce11e8)
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/AbstractModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/DeleteModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/MergeModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/Modification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/WriteModification.java