[ https://issues.apache.org/jira/browse/CLOUDSTACK-8832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14876461#comment-14876461 ]
ASF GitHub Bot commented on CLOUDSTACK-8832: -------------------------------------------- Github user jburwell commented on a diff in the pull request: https://github.com/apache/cloudstack/pull/801#discussion_r39902767 --- Diff: plugins/network-elements/nuage-vsp/src/com/cloud/network/guru/NuageVspGuestNetworkGuru.java --- @@ -322,35 +383,57 @@ public void shutdown(NetworkProfile profile, NetworkOffering offering) { @Override public boolean trash(Network network, NetworkOffering offering) { - - s_logger.debug("Handling trash() call back to delete the network " + network.getName() + " with uuid " + network.getUuid() + " from VSP"); - long domainId = network.getDomainId(); - Domain domain = _domainDao.findById(domainId); - Long vpcId = network.getVpcId(); - String vpcUuid = null; - if (vpcId != null) { - Vpc vpcObj = _vpcDao.findById(vpcId); - vpcUuid = vpcObj.getUuid(); + long networkId = network.getId(); + network = _networkDao.acquireInLockTable(networkId, 1200); + if (network == null) { + throw new ConcurrentOperationException("Unable to acquire lock on network " + networkId); } + try { - HostVO nuageVspHost = getNuageVspHost(network.getPhysicalNetworkId()); - TrashNetworkVspCommand cmd = new TrashNetworkVspCommand(domain.getUuid(), network.getUuid(), isL3Network(offering.getId()), vpcUuid); - TrashNetworkVspAnswer answer = (TrashNetworkVspAnswer)_agentMgr.easySend(nuageVspHost.getId(), cmd); - if (answer == null || !answer.getResult()) { - s_logger.error("TrashNetworkNuageVspCommand for network " + network.getUuid() + " failed"); - if ((null != answer) && (null != answer.getDetails())) { - s_logger.error(answer.getDetails()); + s_logger.debug("Handling trash() call back to delete the network " + network.getName() + " with uuid " + network.getUuid() + " from VSP"); + long domainId = network.getDomainId(); + Domain domain = _domainDao.findById(domainId); + boolean isL3Network = isL3Network(network); + boolean isSharedNetwork = offering.getGuestType() == GuestType.Shared; + Long vpcId = network.getVpcId(); + String vpcUuid = null; + if (vpcId != null) { + Vpc vpcObj = _vpcDao.findById(vpcId); + vpcUuid = vpcObj.getUuid(); + } + + String preConfiguredDomainTemplateName = null; + if (vpcUuid != null) { + preConfiguredDomainTemplateName = _configDao.getValue(NuageVspManager.NuageVspVpcDomainTemplateName.key()); + } else if (isSharedNetwork) { + preConfiguredDomainTemplateName = _configDao.getValue(NuageVspManager.NuageVspSharedNetworkDomainTemplateName.key()); + } else if (isL3Network) { + preConfiguredDomainTemplateName = _configDao.getValue(NuageVspManager.NuageVspIsolatedNetworkDomainTemplateName.key()); + } + + try { + HostVO nuageVspHost = getNuageVspHost(network.getPhysicalNetworkId()); + TrashNetworkVspCommand cmd = new TrashNetworkVspCommand(domain.getUuid(), network.getUuid(), isL3Network, isSharedNetwork, vpcUuid, preConfiguredDomainTemplateName); + TrashNetworkVspAnswer answer = (TrashNetworkVspAnswer)_agentMgr.easySend(nuageVspHost.getId(), cmd); + if (answer == null || !answer.getResult()) { + s_logger.error("TrashNetworkNuageVspCommand for network " + network.getUuid() + " failed"); + if ((null != answer) && (null != answer.getDetails())) { + s_logger.error(answer.getDetails()); + } } + } catch (Exception e) { + s_logger.warn("Failed to clean up network information in Vsp " + e.getMessage()); --- End diff -- Add the exception, ``e``, to the ``warn`` call to provide the stack trace in the log to assist debugging operations. > Update Nuage VSP plugin to work with Nuage VSP release 3.2 > ---------------------------------------------------------- > > Key: CLOUDSTACK-8832 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8832 > Project: CloudStack > Issue Type: Improvement > Security Level: Public(Anyone can view this level - this is the > default.) > Components: Management Server > Affects Versions: 4.6.0 > Reporter: Nick Livens > Assignee: Nick Livens > > Nuage VSP 3.2 is being released, we want to bring the plugin up to date for > this release -- This message was sent by Atlassian JIRA (v6.3.4#6332)