venkata swamybabu budumuru created CLOUDSTACK-1514:
------------------------------------------------------
Summary: Unable to remove secondary ips though there are no PF
rules associated with it
Key: CLOUDSTACK-1514
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-1514
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
Environment: - Advanced Zone with latest master code
- single cluster with 1 XenServer
Reporter: venkata swamybabu budumuru
Assignee: venkata swamybabu budumuru
Priority: Critical
Fix For: 4.2.0
Steps to reproduce :
1. Have at least 1 VM deployed using ISOLATED network
2. add multiple ips to guest nic using "addIpToNic"
3. createPF rule on the first secondary ip
4. try to removeIpFromNic on second, third etc.., secondary ips
Observations:
i. It fails saying there are PF rules associated with it though it doesnt have
any.
here is the snippet from log
====================
10.147.59.194:8096/api?command=createPortForwardingRule&ipaddressid=b947d555-d7e5-4548-8a53-ff9c1a4fd669&privateport=22&privateendport=22&publicport=22&publicendport=22&protocol=tcp&virtualmachineid=7024e36c-049e-402d-906e-ee80a0364d63&openfirewall=true&networkid=3f7d8660-a2f7-4fde-b364-7b931f56ce86&vmguestip=10.1.1.10
2013-03-05 11:47:04,844 DEBUG [cloud.async.AsyncJobManagerImpl]
(ApiServer-8:null) submit async job-62, details: AsyncJobVO {id:62, userId: 1,
accountId: 1, sessionKey: null, instanceType: null, instanceId: null, cmd:
org.apache.cloudstack.api.command.user.vm.RemoveIpFromVmNicCmd, cmdOriginator:
null, cmdInfo:
{"id":"6","ctxUserId":"1","ctxAccountId":"1","ctxStartEventId":"171"},
cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0,
processStatus: 0, resultCode: 0, result: null, initMsid: 7280707764394,
completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
2013-03-05 11:47:04,859 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-16:job-62) Executing
org.apache.cloudstack.api.command.user.vm.RemoveIpFromVmNicCmd for job-62
2013-03-05 11:47:05,123 DEBUG [cloud.network.NetworkServiceImpl]
(Job-Executor-16:job-62) ip id and nic id6...8
2013-03-05 11:47:05,158 DEBUG [cloud.network.NetworkServiceImpl]
(Job-Executor-16:job-62) VM nic IP 10.1.1.151 is associated with the port
forwarding rule
2013-03-05 11:47:05,160 ERROR [cloud.async.AsyncJobManagerImpl]
(Job-Executor-16:job-62) Unexpected exception while executing
org.apache.cloudstack.api.command.user.vm.RemoveIpFromVmNicCmd
com.cloud.exception.InvalidParameterValueException: Can't remove the secondary
ip 10.1.1.151 is associate with the port forwarding rule
at
com.cloud.network.NetworkServiceImpl.releaseSecondaryIpFromNic(NetworkServiceImpl.java:575)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
at
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
at
com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(TransactionContextBuilder.java:48)
at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
at
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)
at
org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)
at
org.apache.cloudstack.api.command.user.vm.RemoveIpFromVmNicCmd.execute(RemoveIpFromVmNicCmd.java:104)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
at
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at
com.cloud.utils.db.TransactionContextBuilder.invoke(TransactionContextBuilder.java:71)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)
at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:161)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
at
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
at
com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(TransactionContextBuilder.java:54)
at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
at
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)
at
org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)
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-03-05 11:47:05,196 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-16:job-62) Complete async job-62, jobStatus: 2, resultCode: 530,
result: Error Code: 530 Error text: Can't remove the secondary ip 10.1.1.151 is
associate with the port forwarding rule
--
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