X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=elanmanager%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fnetvirt%2Felan%2Fl2gw%2Fjobs%2FDeleteL2GwDeviceMacsFromElanJob.java;h=a7f72a2fa8a61165b57c1b0a926b35a1921a8a4c;hb=refs%2Fchanges%2F35%2F91835%2F21;hp=c6a5f3e7da0b4ceb1cbaca0b018d42f740bb85e3;hpb=e19a17366cd51fe59dbb8d450e75250d2837efa1;p=netvirt.git diff --git a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/jobs/DeleteL2GwDeviceMacsFromElanJob.java b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/jobs/DeleteL2GwDeviceMacsFromElanJob.java index c6a5f3e7da..a7f72a2fa8 100644 --- a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/jobs/DeleteL2GwDeviceMacsFromElanJob.java +++ b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/jobs/DeleteL2GwDeviceMacsFromElanJob.java @@ -15,6 +15,7 @@ import java.util.Collections; import java.util.List; import java.util.Locale; import java.util.concurrent.Callable; +import java.util.concurrent.ConcurrentMap; import java.util.stream.Collectors; import org.opendaylight.genius.utils.batching.ResourceBatchingManager; import org.opendaylight.genius.utils.batching.ResourceBatchingManager.ShardResource; @@ -89,10 +90,13 @@ public class DeleteL2GwDeviceMacsFromElanJob implements Callable macs = new ArrayList<>(); - macAddresses.forEach((mac) -> macs.add(new MacAddress(mac.getValue().toLowerCase(Locale.ENGLISH)))); + macAddresses.forEach((mac) -> macs.add(new MacAddress(mac.getValue().toLowerCase(Locale.getDefault())))); + List> futures = new ArrayList<>(); - for (L2GatewayDevice otherDevice : ElanL2GwCacheUtils.getInvolvedL2GwDevices(this.elanName)) { + ConcurrentMap elanL2GwDevices = ElanL2GwCacheUtils + .getInvolvedL2GwDevices(this.elanName); + for (L2GatewayDevice otherDevice : elanL2GwDevices.values()) { if (!otherDevice.getHwvtepNodeId().equals(this.l2GwDevice.getHwvtepNodeId()) && !ElanL2GatewayUtils.areMLAGDevices(this.l2GwDevice, otherDevice)) { final String hwvtepId = otherDevice.getHwvtepNodeId(); @@ -112,7 +116,7 @@ public class DeleteL2GwDeviceMacsFromElanJob implements Callable> deleteRemoteUcastMacs(final NodeId nodeId, String logicalSwitchName, final List lstMac) { - if (lstMac != null) { + if (lstMac != null && !lstMac.isEmpty()) { return lstMac.stream() .map(mac -> HwvtepSouthboundUtils.createRemoteUcastMacsInstanceIdentifier( nodeId, logicalSwitchName, mac))