From: Maros Marsalek Date: Fri, 5 Dec 2014 13:31:37 +0000 (+0100) Subject: Fix improper cleanup of operational data in sal-netconf-connector's disconnect X-Git-Tag: release/lithium~791^2 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F20%2F13420%2F1;hp=f0b50462712d28bc62736c90ea3c78c26d8edb1f;p=controller.git Fix improper cleanup of operational data in sal-netconf-connector's disconnect Use put instead of merge to fully replace operational data on ever yupdate Change-Id: I8ebf19a9bcfaba9cc56be6967999754265e44236 Signed-off-by: Maros Marsalek --- diff --git a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDatastoreAdapter.java b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDatastoreAdapter.java index 04d5e5e449..fc69a7e253 100644 --- a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDatastoreAdapter.java +++ b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDatastoreAdapter.java @@ -58,7 +58,7 @@ final class NetconfDeviceDatastoreAdapter implements AutoCloseable { final ReadWriteTransaction transaction = dataService.newReadWriteTransaction(); logger.trace("{}: Update device state transaction {} merging operational data started.", id, transaction.getIdentifier()); - transaction.merge(LogicalDatastoreType.OPERATIONAL, id.getBindingPath(), data); + transaction.put(LogicalDatastoreType.OPERATIONAL, id.getBindingPath(), data); logger.trace("{}: Update device state transaction {} merging operational data ended.", id, transaction.getIdentifier()); commitTransaction(transaction, "update"); @@ -83,11 +83,11 @@ final class NetconfDeviceDatastoreAdapter implements AutoCloseable { final Node nodeWithId = getNodeWithId(id); logger.trace("{}: Init device state transaction {} putting if absent operational data started.", id, transaction.getIdentifier()); - transaction.merge(LogicalDatastoreType.OPERATIONAL, path, nodeWithId); + transaction.put(LogicalDatastoreType.OPERATIONAL, path, nodeWithId); logger.trace("{}: Init device state transaction {} putting operational data ended.", id, transaction.getIdentifier()); logger.trace("{}: Init device state transaction {} putting if absent config data started.", id, transaction.getIdentifier()); - transaction.merge(LogicalDatastoreType.CONFIGURATION, path, nodeWithId); + transaction.put(LogicalDatastoreType.CONFIGURATION, path, nodeWithId); logger.trace("{}: Init device state transaction {} putting config data ended.", id, transaction.getIdentifier()); commitTransaction(transaction, "init");