- Map<String, String> localIps = getDpnLocalIps(dpnId);
- if (localIps != null && !localIps.isEmpty()) {
- LOG.debug("Will use local_ips for transport zone update for dpn {} and zone name prefix {}", dpnId,
- zoneNamePrefix);
- for (Entry<String, String> entry : localIps.entrySet()) {
- String localIp = entry.getKey();
- String underlayNetworkName = entry.getValue();
- String zoneName = getTzNameForUnderlayNetwork(zoneNamePrefix, underlayNetworkName);
- updateTransportZone(zoneName, dpnId, localIp);
+ ListenableFutures.addErrorLogging(txRunner.callWithNewReadWriteTransactionAndSubmit(CONFIGURATION, tx -> {
+ Map<String, String> localIps = getDpnLocalIps(dpnId);
+ if (!localIps.isEmpty()) {
+ LOG.debug("Will use local_ips for transport zone update for dpn {} and zone name prefix {}", dpnId,
+ zoneNamePrefix);
+ for (Entry<String, String> entry : localIps.entrySet()) {
+ String localIp = entry.getKey();
+ String underlayNetworkName = entry.getValue();
+ String zoneName = getTzNameForUnderlayNetwork(zoneNamePrefix, underlayNetworkName);
+ updateTransportZone(zoneName, dpnId, localIp, tx);
+ }
+ } else {
+ updateTransportZone(zoneNamePrefix, dpnId, getDpnLocalIp(dpnId), tx);