Fixed stack overflow bug when using BMv2 table entry service
Similarly to ONOS-4206, due to a bug in kryo, a non-registered class
(Date in this case) was causing such a problem.
Change-Id: I993f4b41d4deaa617065b29086a49d834832eca8
diff --git a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleProgrammable.java b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleProgrammable.java
index d8fed8a..5fc9908 100644
--- a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleProgrammable.java
+++ b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleProgrammable.java
@@ -47,7 +47,6 @@
import java.util.Collection;
import java.util.Collections;
-import java.util.Date;
import java.util.List;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.locks.Lock;
@@ -152,7 +151,7 @@
log.debug("getFlowEntries(): inconsistent entry id! BUG? Updating it... remote={}, local={}",
remoteEntryId, localEntryId);
frWrapper = new Bmv2FlowRuleWrapper(frWrapper.rule(), remoteEntryId,
- frWrapper.creationDate());
+ frWrapper.installedOnMillis());
tableEntryService.bind(entryRef, frWrapper);
}
@@ -255,7 +254,7 @@
}
// Add entry.
entryId = doAddEntry(deviceAgent, bmv2Entry);
- frWrapper = new Bmv2FlowRuleWrapper(rule, entryId, new Date());
+ frWrapper = new Bmv2FlowRuleWrapper(rule, entryId, System.currentTimeMillis());
} else {
// Remove entry
if (frWrapper == null) {