Bug 6529: Remove registration date when deleting mapping
[lispflowmapping.git] / mappingservice / mapcache / src / main / java / org / opendaylight / lispflowmapping / mapcache / MultiTableMapCache.java
index f94a9f4776cbcccdfb22403da0b18c0c6d01e03e..0a2df133cd50cec5beb5d54e75e5e78be5198444 100644 (file)
@@ -136,7 +136,11 @@ public class MultiTableMapCache implements IMapCache {
 
     @Override
     public Eid getWidestNegativeMapping(Eid key) {
-        return dao.getWidestNegativePrefix(key);
+        ILispDAO table = getVniTable(key);
+        if (table == null) {
+            return null;
+        }
+        return table.getWidestNegativePrefix(key);
     }
 
     public void removeMapping(Eid eid, boolean overwrite) {
@@ -151,9 +155,12 @@ public class MultiTableMapCache implements IMapCache {
             if (db != null) {
                 db.removeSpecific(SourceDestKeyHelper.getSrcBinary(key),
                         SubKeys.RECORD);
+                db.removeSpecific(SourceDestKeyHelper.getSrcBinary(key),
+                        SubKeys.REGDATE);
             }
         } else {
             table.removeSpecific(key, SubKeys.RECORD);
+            table.removeSpecific(key, SubKeys.REGDATE);
         }
     }