BUG:7824 ModifiedNodeDoesNotExistException 80/52280/3
authorepgoraj <p.govinda.rajulu@ericsson.com>
Mon, 27 Feb 2017 07:35:15 +0000 (13:05 +0530)
committerSam Hague <shague@redhat.com>
Mon, 27 Feb 2017 16:25:52 +0000 (16:25 +0000)
Change-Id: I32b64af56b5b7c5ed8d2af9ed3ca5b47b68a153f
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanInterfaceManager.java
vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanSmacFlowEventListener.java

index 93b794be3362fb623a08263b50404db141d43f15..b5cd48ede52ebfd0e5d801746a81f0a7be7c7a57 100644 (file)
@@ -712,8 +712,6 @@ public class ElanInterfaceManager extends AsyncDataTreeChangeListenerBase<ElanIn
         WriteTransaction tx = broker.newWriteOnlyTransaction();
         elanForwardingEntriesHandler.deleteElanInterfaceForwardingEntries(
                 ElanUtils.getElanInstanceByName(broker, elanInstanceName), interfaceInfo, macEntry, tx);
-        elanForwardingEntriesHandler.deleteElanInterfaceMacForwardingEntries(interfaceName,
-                physAddress, tx);
         ElanUtils.waitForTransactionToComplete(tx);
     }
 
index ce15848b4202029823820b6aaf490b8c64beb6a3..6de9ad54187f3d2015ccc64799d33e03cf9f332d 100644 (file)
@@ -98,7 +98,11 @@ public class ElanSmacFlowEventListener implements SalFlowListener {
             InstanceIdentifier<MacEntry> macEntryIdForElanInstance = ElanUtils
                     .getMacEntryOperationalDataPath(elanTagInfo.getName(), physAddress);
             WriteTransaction tx = broker.newWriteOnlyTransaction();
-            tx.delete(LogicalDatastoreType.OPERATIONAL, macEntryIdForElanInterface);
+            Optional<MacEntry> existingInterfaceMacEntry = elanUtils.read(broker,
+                LogicalDatastoreType.OPERATIONAL, macEntryIdForElanInterface);
+            if (existingInterfaceMacEntry.isPresent()) {
+                tx.delete(LogicalDatastoreType.OPERATIONAL, macEntryIdForElanInterface);
+            }
             tx.delete(LogicalDatastoreType.OPERATIONAL, macEntryIdForElanInstance);
             ListenableFuture<Void> writeResult = tx.submit();
             addCallBack(writeResult, srcMacAddress);