Stop failing discard-changes operation when tx wasn't initialized 49/28049/2
authorTomas Cere <tcere@cisco.com>
Thu, 8 Oct 2015 09:58:38 +0000 (11:58 +0200)
committerGerrit Code Review <gerrit@opendaylight.org>
Mon, 7 Dec 2015 13:28:53 +0000 (13:28 +0000)
Change-Id: Iece3fb47922d441ec863455f9d1981c58190f76e
Signed-off-by: Tomas Cere <tcere@cisco.com>
opendaylight/netconf/mdsal-netconf-connector/src/main/java/org/opendaylight/controller/netconf/mdsal/connector/TransactionProvider.java

index f1b214b83e712f5997e443f4f9759f0bbb31a310..86e65abbbe6f232396ba786de230473c57977b63 100644 (file)
@@ -94,7 +94,10 @@ public class TransactionProvider implements AutoCloseable{
     public synchronized void abortTransaction() {
         LOG.debug("Aborting current candidateTransaction");
         Optional<DOMDataReadWriteTransaction> otx = getCandidateTransaction();
-        Preconditions.checkState(otx.isPresent(), NO_TRANSACTION_FOUND_FOR_SESSION + netconfSessionIdForReporting);
+        if (!otx.isPresent()) {
+            LOG.warn("discard-changes triggerd on an empty transaction for session: {}", netconfSessionIdForReporting );
+            return;
+        }
         candidateTransaction.cancel();
         allOpenReadWriteTransactions.remove(candidateTransaction);
         candidateTransaction = null;