diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java index 2dbba0a30de9a7d558e26e79d6c216b388a4c455..4f530fe75cd02657077ff53d3e4cdc0a2d6cdec0 100644 --- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java +++ b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java @@ -970,20 +970,28 @@ public class LinkDiscoveryManager implements IOFMessageListener, while (count < BDDP_TASK_SIZE && quarantineQueue.peek() != null) { NodePortTuple npt; - npt = quarantineQueue.remove(); - sendDiscoveryMessage(npt.getNodeId(), npt.getPortId(), false, + try { + npt = quarantineQueue.remove(); + sendDiscoveryMessage(npt.getNodeId(), npt.getPortId(), false, false); - nptList.add(npt); - count++; + nptList.add(npt); + count++; + } catch (Exception e){ + log.error("Multiple removals in quarantineQueue."); + } } count = 0; while (count < BDDP_TASK_SIZE && maintenanceQueue.peek() != null) { NodePortTuple npt; - npt = maintenanceQueue.remove(); - sendDiscoveryMessage(npt.getNodeId(), npt.getPortId(), false, + try { + npt = maintenanceQueue.remove(); + sendDiscoveryMessage(npt.getNodeId(), npt.getPortId(), false, false); - count++; + count++; + } catch (Exception e){ + log.error("Multiple removals in maintenanceQueue."); + } } for (NodePortTuple npt : nptList) {