From 5659f588f80522a5be5c80d0e5ff34068b5f4786 Mon Sep 17 00:00:00 2001 From: Tony Tkacik Date: Mon, 3 Feb 2014 19:33:52 +0100 Subject: [PATCH] Make sure transaction applies whole removal list Change-Id: I53d1cf10bce6e444f80b13d9ce57e5f1ef2eb5c9 Signed-off-by: Tony Tkacik --- .../md/sal/common/impl/AbstractDataModification.java | 2 -- .../controller/sal/dom/broker/impl/HashMapDataStore.xtend | 6 +++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/opendaylight/md-sal/sal-common-impl/src/main/java/org/opendaylight/controller/md/sal/common/impl/AbstractDataModification.java b/opendaylight/md-sal/sal-common-impl/src/main/java/org/opendaylight/controller/md/sal/common/impl/AbstractDataModification.java index 9a61e98c22..4b6a0185ab 100644 --- a/opendaylight/md-sal/sal-common-impl/src/main/java/org/opendaylight/controller/md/sal/common/impl/AbstractDataModification.java +++ b/opendaylight/md-sal/sal-common-impl/src/main/java/org/opendaylight/controller/md/sal/common/impl/AbstractDataModification.java @@ -75,7 +75,6 @@ public abstract class AbstractDataModification

, D> implements } configurationUpdate.put(path, mergeConfigurationData(path,original, data)); - configurationRemove.remove(path); } @Override @@ -86,7 +85,6 @@ public abstract class AbstractDataModification

, D> implements operationalCreated.put(path, data); } operationalUpdate.put(path, mergeOperationalData(path,original,data)); - operationalRemove.remove(path); } @Override diff --git a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/sal/dom/broker/impl/HashMapDataStore.xtend b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/sal/dom/broker/impl/HashMapDataStore.xtend index 5fc2c1d7d1..9600881e50 100644 --- a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/sal/dom/broker/impl/HashMapDataStore.xtend +++ b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/sal/dom/broker/impl/HashMapDataStore.xtend @@ -64,15 +64,15 @@ class HashMapDataStore implements DataStore, AutoCloseable { def RpcResult finish(HashMapDataStoreTransaction transaction) { val modification = transaction.modification; - configuration.putAll(modification.updatedConfigurationData); - operational.putAll(modification.updatedOperationalData); - for (removal : modification.removedConfigurationData) { remove(configuration,removal); } for (removal : modification.removedOperationalData) { remove(operational,removal); } + configuration.putAll(modification.updatedConfigurationData); + operational.putAll(modification.updatedOperationalData); + return Rpcs.getRpcResult(true, null, Collections.emptySet); } -- 2.36.6