[
https://issues.apache.org/jira/browse/CLOUDSTACK-1514?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sateesh Chodapuneedi resolved CLOUDSTACK-1514.
----------------------------------------------
Resolution: Fixed
Patch by Swamy was applied to master.
CLOUDSTACK-1514 : Unable to remove secondary ips though there are no PF rules
associated with it
Fixed the search filter in PortForwardingRulesDaoImpl.java. Earlier we were
passing a wrong filter parameter "address" in listByDestIpAddr which doesn't
exist. Changed this to the right search criteria that uses dstIp as filter
parameter.
Signed-off-by: Venkata Swamybabu Budumuru <[email protected]>
Signed-off-by: Sateesh Chodapuneedi <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit:
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/cdae53a2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/cdae53a2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/cdae53a2
Branch: refs/heads/master
Commit: cdae53a28914507b32545b37b836ea5aca8bbd83
Parents: 0b84958
Author: Venkata Swamybabu Budumuru <[email protected]>
Authored: Tue Mar 5 13:42:07 2013 -0500
Committer: Sateesh Chodapuneedi <[email protected]>
Committed: Wed Mar 6 10:28:37 2013 +0530
> 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