venkata swamybabu budumuru created CLOUDSTACK-2718: ------------------------------------------------------
Summary: disassciateIpAddress on an IP when the router is not reachable leaves the IPAddress state in 'Releasing' forever. Key: CLOUDSTACK-2718 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2718 Project: CloudStack Issue Type: Bug Security Level: Public (Anyone can view this level - this is the default.) Components: Network Controller Affects Versions: 4.2.0 Reporter: venkata swamybabu budumuru Fix For: 4.2.0 Steps to reproduce : 1. Have a latest CloudStack setup with advanced zone and having at least one XenCluster 2. Have at least one isolated network 3. As a non-ROOT domain user, acquire a public ip on the above network 4. Bring down the link-local interface on the router VM for the above network NOTE : In case of VMware, bring down the mgmt interface 5. Try to disassociate the IP address acquired in (3) Observations:- (i) It failed with an exception but, IPAddress state is stuck at 'Releasing'. There is no way for end-user/admin to take any further action on this. Here is the snippet from mgmt-server log : 2013-05-28 14:02:27,084 DEBUG [network.router.VirtualNetworkApplianceManagerImpl] (RouterStatusMonitor-1:null) Found 1 routers to update status. 2013-05-28 14:02:27,087 DEBUG [network.router.VirtualNetworkApplianceManagerImpl] (RouterStatusMonitor-1:null) Found 0 networks to update RvR status. 2013-05-28 14:02:27,197 DEBUG [network.router.VirtualNetworkApplianceManagerImpl] (RouterStatusMonitor-1:null) Found 1 routers to update status. 2013-05-28 14:02:27,199 DEBUG [network.router.VirtualNetworkApplianceManagerImpl] (RouterStatusMonitor-1:null) Found 0 networks to update RvR status. 2013-05-28 14:02:27,565 ERROR [xen.resource.CitrixResourceBase] (DirectAgent-406:null) Ip Assoc failure on applying one ip due to exception: com.cloud.exception.InternalErrorException: Xen plugin "ipassoc" failed. at com.cloud.hypervisor.xen.resource.CitrixResourceBase.assignPublicIpAddress(CitrixResourceBase.java:2393) at com.cloud.hypervisor.xen.resource.CitrixResourceBase.execute(CitrixResourceBase.java:2503) at com.cloud.hypervisor.xen.resource.CitrixResourceBase.executeRequest(CitrixResourceBase.java:514) at com.cloud.hypervisor.xen.resource.XenServer56Resource.executeRequest(XenServer56Resource.java:73) at com.cloud.hypervisor.xen.resource.XenServer610Resource.executeRequest(XenServer610Resource.java:104) at com.cloud.agent.manager.DirectAgentAttache$Task.run(DirectAgentAttache.java:186) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) 2013-05-28 14:02:27,566 DEBUG [agent.manager.DirectAgentAttache] (DirectAgent-406:null) Seq 1-550246224: Response Received: 2013-05-28 14:02:27,567 DEBUG [agent.transport.Request] (DirectAgent-406:null) Seq 1-550246224: Processing: { Ans: , MgmtId: 7332683579487, via: 1, Ver: v1, Flags: 0, [{"com.cloud.agent.api.routing.IpAssocAnswer":{"results":["Failed"],"result":false,"wait":0}}] } 2013-05-28 14:02:27,567 DEBUG [agent.transport.Request] (Job-Executor-39:job-37) Seq 1-550246224: Received: { Ans: , MgmtId: 7332683579487, via: 1, Ver: v1, Flags: 0, { IpAssocAnswer } } 2013-05-28 14:02:27,568 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-39:job-37) Resource is not available: VirtualRouter com.cloud.exception.ResourceUnavailableException: Resource [DataCenter:1] is unreachable: Unable to apply ip association on router at com.cloud.network.router.VirtualNetworkApplianceManagerImpl.applyRules(VirtualNetworkApplianceManagerImpl.java:3740) at com.cloud.network.router.VirtualNetworkApplianceManagerImpl.associatePublicIP(VirtualNetworkApplianceManagerImpl.java:3552) at com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.associatePublicIP(VpcVirtualNetworkApplianceManagerImpl.java:561) at com.cloud.network.element.VirtualRouterElement.applyIps(VirtualRouterElement.java:471) at com.cloud.network.NetworkManagerImpl.applyIpAssociations(NetworkManagerImpl.java:610) at com.cloud.network.NetworkManagerImpl.applyIpAssociations(NetworkManagerImpl.java:555) at com.cloud.network.NetworkManagerImpl.disassociatePublicIpAddress(NetworkManagerImpl.java:1092) at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125) at com.cloud.network.NetworkServiceImpl.releaseIpAddressInternal(NetworkServiceImpl.java:880) at com.cloud.network.NetworkServiceImpl.releaseIpAddress(NetworkServiceImpl.java:840) at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125) at org.apache.cloudstack.api.command.user.address.DisassociateIPAddrCmd.execute(DisassociateIPAddrCmd.java:79) at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:155) at com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:437) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) 2013-05-28 14:02:27,569 WARN [cloud.network.NetworkManagerImpl] (Job-Executor-39:job-37) Unable to apply ip address associations for Ntwk[204|Guest|8] 2013-05-28 14:02:27,569 WARN [cloud.network.NetworkServiceImpl] (Job-Executor-39:job-37) Failed to release public ip address id=4 2013-05-28 14:02:27,578 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-39:job-37) Complete async job-37, jobStatus: 2, resultCode: 530, result: Error Code: 530 Error text: Failed to disassociate ip address Attaching all the required logs along with db dump to the bug. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira