Marcus Sorensen created CLOUDSTACK-6072:
-------------------------------------------

             Summary: vxlan networks not deallocating vnet ids
                 Key: CLOUDSTACK-6072
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-6072
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: Management Server
    Affects Versions: 4.3.0, 4.4.0
            Reporter: Marcus Sorensen
            Assignee: Yoshikazu Nojima


I noticed that we ran out of vxlan ids in our dev environment. It seems perhaps 
due to calling 'super' in our shutdown method, but the 'super' method filters 
out vxlan domain types.

./plugins/network-elements/vxlan/src/com/cloud/network/guru/VxlanGuestNetworkGuru.java

    @Override
    public void shutdown(NetworkProfile profile, NetworkOffering offering) {
        NetworkVO networkObject = _networkDao.findById(profile.getId());
        if (networkObject.getBroadcastDomainType() != BroadcastDomainType.Vxlan 
|| networkObject.getBroadcastUri() == null) {
            s_logger.warn("BroadcastUri is empty or incorrect for guestnetwork 
" + networkObject.getDisplayText());
            return;
        }

        super.shutdown(profile, offering);
    }


server/src/com/cloud/network/guru/GuestNetworkGuru.java

    @Override
    public void shutdown(NetworkProfile profile, NetworkOffering offering) {

        if (profile.getBroadcastDomainType() == BroadcastDomainType.Vlan &&
                        profile.getBroadcastUri() != null && 
!offering.getSpecifyVlan()) {
        s_logger.debug("Releasing vnet for the network id=" + profile.getId());
            _dcDao.releaseVnet(profile.getBroadcastUri().getHost(), 
profile.getDataCenterId(),
                    profile.getPhysicalNetworkId(), profile.getAccountId(), 
profile.getReservationId());
            
ActionEventUtils.onCompletedActionEvent(UserContext.current().getCallerUserId(),
 profile.getAccountId(),
                    EventVO.LEVEL_INFO, EventTypes.EVENT_ZONE_VLAN_RELEASE, 
"Released Zone Vlan: "
                    + profile.getBroadcastUri().getHost() + " for Network: " + 
profile.getId(), 0);
        }
        profile.setBroadcastUri(null);
    }



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to