manasaveloori created CLOUDSTACK-5552: -----------------------------------------
Summary: createPrivateGateway cmd should fail on non-upgarded VR as applying Network ACL fails. Key: CLOUDSTACK-5552 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5552 Project: CloudStack Issue Type: Bug Security Level: Public (Anyone can view this level - this is the default.) Components: Upgrade Affects Versions: 4.3.0 Environment: upgraded from ACS4.1 to Felton Reporter: manasaveloori Priority: Critical Fix For: 4.3.0 Steps: 1. Upgraded the CS from ACS4.1 to Felton. 2. On the non upgraded VPC VR,performed createPrivateGateway. Observation: The createPrivateGateway is created in UI/DB,but failing while applying Network ACLs. When appying Network ACL fails on non upgarded VR,the DBentries for the private gateway should be removed and createPrivate Gateway cmd should fail: 2013-12-19 00:19:44,215 DEBUG [c.c.a.t.Request] (DirectAgent-61:ctx-629d0bd6) Seq 1-2058690631: Processing: { Ans: , MgmtId: 233845177509765, via: 1, Ver: v1, Flags: 0, [{"com.cloud.agent.api.routing.SetNetworkACLAnswer":{"results":["Failed","Failed"],"result":false,"wait":0}}] } 2013-12-19 00:19:44,215 DEBUG [c.c.a.t.Request] (Job-Executor-15:ctx-0e0cb77d ctx-55536089) Seq 1-2058690631: Received: { Ans: , MgmtId: 233845177509765, via: 1, Ver: v1, Flags: 0, { SetNetworkACLAnswer } } 2013-12-19 00:19:44,216 ERROR [c.c.a.ApiAsyncJobDispatcher] (Job-Executor-15:ctx-0e0cb77d) Unexpected exception while executing org.apache.cloudstack.api.command.admin.vpc.CreatePrivateGatewayCmd com.cloud.exception.ResourceUnavailableException: Resource [DataCenter:2] is unreachable: Unable to apply network acls on router at com.cloud.network.router.VirtualNetworkApplianceManagerImpl.applyRules(VirtualNetworkApplianceManagerImpl.java:3735) at com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.applyNetworkACLs(VpcVirtualNetworkApplianceManagerImpl.java:662) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy240.applyNetworkACLs(Unknown Source) at com.cloud.network.element.VpcVirtualRouterElement.applyACLItemsToPrivateGw(VpcVirtualRouterElement.java:473) at com.cloud.network.vpc.NetworkACLManagerImpl.applyACLToPrivateGw(NetworkACLManagerImpl.java:385) at com.cloud.network.vpc.NetworkACLManagerImpl.revokeACLItemsForPrivateGw(NetworkACLManagerImpl.java:344) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy224.revokeACLItemsForPrivateGw(Unknown Source) at com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.destroyPrivateGateway(VpcVirtualNetworkApplianceManagerImpl.java:1005) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy240.destroyPrivateGateway(Unknown Source) at com.cloud.network.element.VpcVirtualRouterElement.deletePrivateGateway(VpcVirtualRouterElement.java:390) at com.cloud.network.vpc.VpcManagerImpl.deleteVpcPrivateGateway(VpcManagerImpl.java:1557) at com.cloud.network.vpc.VpcManagerImpl.applyVpcPrivateGateway(VpcManagerImpl.java:1516) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy128.applyVpcPrivateGateway(Unknown Source) at org.apache.cloudstack.api.command.admin.vpc.CreatePrivateGatewayCmd.execute(CreatePrivateGatewayCmd.java:168) at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:161) at com.cloud.api.ApiAsyncJobDispatcher.runJobInContext(ApiAsyncJobDispatcher.java:109) at com.cloud.api.ApiAsyncJobDispatcher$1.run(ApiAsyncJobDispatcher.java:66) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53) at com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:63) at org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:521) at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103) at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53) at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46) 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:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) 2013-12-19 00:19:44,219 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (Job-Executor-15:ctx-0e0cb77d) Complete async job-78, jobStatus: FAILED, resultCode: 530, result: org.apache.cloudstack.api.response.ExceptionResponse/null/{"uuidList":[],"errorcode":530,"errortext":"Resource [DataCenter:2] is unreachable: Unable to apply network acls on router "} 2013-12-19 00:19:44,288 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (Job-Executor-15:ctx-0e0cb77d) Done executing org.apache.cloudstack.api.command.admin.vpc.CreatePrivateGatewayCmd for job-78 2013-12-19 00:19:44,313 INFO [o.a.c.f.j.i.AsyncJobMonitor] (Job-Executor-15:ctx-0e0cb77d) Remove job-78 from job monitoring Attaching the MS logs -- This message was sent by Atlassian JIRA (v6.1.4#6159)