I am not sure if it just my configuration or if this is actually a bug in core. Can anyone else validate if this is a bug? I am currently working off '9e13533e2123ef13d96b35bf989fa069b30428f4' on the Master branch (I dont really want to change that right now as I am in the middle of dev).
If I create a guest network in the Domain scope with 'Subdomain Access' checked and with the 'Offering for Shared network' service offering. After the network comes up, I can click on 'View IP Ranges'. If I delete the IP range that it gives me, it deletes fine. Now I can no longer add an IP range back in (not even the one I deleted). I always get the error "Gateway, netmask and zoneId have to be passed in for virtual and direct untagged networks" in an overlay window and it will not add it. So now I can't add back an IP range. If I then try to just delete this network because it is now broken, I get a NullPointerError (shown below). Now I have a network that I can no longer use or delete. Can anyone else verify this is a bug and is not just associated with my setup? Cheers, Will Exception ---------------------------- 2013-03-14 15:40:47,601 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-4:job-10) Executing org.apache.cloudstack.api.command.user.network.DeleteNetworkCmd for job-10 2013-03-14 15:40:47,640 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Network is not implemented: Ntwk[211|Guest|7] 2013-03-14 15:40:47,647 DEBUG [network.rules.RulesManagerImpl] (Job-Executor-4:job-10) Releasing 0 port forwarding rules for network id=211 2013-03-14 15:40:47,649 DEBUG [network.rules.RulesManagerImpl] (Job-Executor-4:job-10) Releasing 0 static nat rules for network id=211 2013-03-14 15:40:47,650 DEBUG [network.rules.RulesManagerImpl] (Job-Executor-4:job-10) There are no port forwarding rules to apply for network id=211 2013-03-14 15:40:47,651 DEBUG [network.rules.RulesManagerImpl] (Job-Executor-4:job-10) There are no static nat rules to apply for network id=211 2013-03-14 15:40:47,653 DEBUG [network.rules.RulesManagerImpl] (Job-Executor-4:job-10) Successfully released rules for network id=211 and # of rules now = 0 2013-03-14 15:40:47,653 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Successfully cleaned up portForwarding/staticNat rules for network id=211 2013-03-14 15:40:47,656 DEBUG [network.lb.LoadBalancingRulesManagerImpl] (Job-Executor-4:job-10) Found 0 lb rules to cleanup 2013-03-14 15:40:47,656 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Successfully cleaned up load balancing rules for network id=211 2013-03-14 15:40:47,658 DEBUG [network.firewall.FirewallManagerImpl] (Job-Executor-4:job-10) Releasing 0 firewall rules for network id=211 2013-03-14 15:40:47,659 DEBUG [network.firewall.FirewallManagerImpl] (Job-Executor-4:job-10) There are no firewall rules to apply 2013-03-14 15:40:47,659 DEBUG [network.firewall.FirewallManagerImpl] (Job-Executor-4:job-10) Successfully released firewall rules for network id=211 and # of rules now = 0 2013-03-14 15:40:47,659 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Successfully cleaned up firewallRules rules for network id=211 2013-03-14 15:40:47,661 DEBUG [network.vpc.NetworkACLManagerImpl] (Job-Executor-4:job-10) Found no network ACLs for network id=211 2013-03-14 15:40:47,661 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Successfully cleaned up NetworkACLs for network id=211 2013-03-14 15:40:47,668 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Sending destroy to com.cloud.network.element.VirtualRouterElement@4ae9e2f0 2013-03-14 15:40:47,672 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Network id=211 is destroyed successfully, cleaning up corresponding resources now. 2013-03-14 15:40:47,677 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-4:job-10) Deleted ip range for private network id=211 2013-03-14 15:40:47,679 DEBUG [db.Transaction.Transaction] (Job-Executor-4:job-10) Rolling back the transaction: Time = 5 Name = -AsyncJobManagerImpl$1.run:401-Executors$RunnableAdapter.call:439-FutureTask$Sync.innerRun:303-FutureTask.run:138-ThreadPoolExecutor$Worker.runTask:886-ThreadPoolExecutor$Worker.run:908-Thread.run:662; called by -Transaction.rollback:890-Transaction.removeUpTo:833-Transaction.close:657-TransactionContextBuilder.AroundAnyMethod:39-GeneratedMethodAccessor36.invoke:-1-DelegatingMethodAccessorImpl.invoke:25-Method.invoke:597-AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs:621-AbstractAspectJAdvice.invokeAdviceMethod:610-AspectJAroundAdvice.invoke:65-ReflectiveMethodInvocation.proceed:172-ExposeInvocationInterceptor.invoke:90 2013-03-14 15:40:47,683 ERROR [cloud.async.AsyncJobManagerImpl] (Job-Executor-4:job-10) Unexpected exception while executing org.apache.cloudstack.api.command.user.network.DeleteNetworkCmd java.lang.NullPointerException at com.cloud.utils.fsm.StateMachine2.getNextState(StateMachine2.java:81) at com.cloud.utils.fsm.StateMachine2.transitTo(StateMachine2.java:100) at com.cloud.network.NetworkManagerImpl.stateTransitTo(NetworkManagerImpl.java:3526) at com.cloud.network.NetworkManagerImpl.destroyNetwork(NetworkManagerImpl.java:2246) 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:37) at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) 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.network.NetworkServiceImpl.deleteNetwork(NetworkServiceImpl.java:1331) 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.event.ActionEventInterceptor.AroundAnyMethod(ActionEventInterceptor.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) 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:161) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80) at com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(TransactionContextBuilder.java:43) at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) 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.network.DeleteNetworkCmd.execute(DeleteNetworkCmd.java:70) 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:60) 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:159) 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:43) at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) 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:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662)