* Fix a bug when creating a copy of the measurement flow paths to install.
* Reset the measurement start/end times when clearing the state.
diff --git a/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java b/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java
index 7efa49c..cce873a 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java
+++ b/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java
@@ -1851,7 +1851,9 @@
public boolean measurementInstallPaths(Integer numThreads) {
List<Thread> threads = new LinkedList<Thread>();
- measurementProcessingPaths = measurementStoredPaths;
+ // Create a copy of the paths to install
+ measurementProcessingPaths = new LinkedList<FlowPath>(measurementStoredPaths);
+
//
// Create the threads to install the Flow Paths
//
@@ -1935,6 +1937,8 @@
public boolean measurementClearAllPaths() {
measurementStoredPaths.clear();
topoRouteService.dropShortestPathTopo();
+ measurementStartTimeProcessingPaths = 0;
+ measurementEndTimeProcessingPaths = 0;
return true;
}