Thanks Sigert. ~ Rajani
http://cloudplatform.accelerite.com/ On February 17, 2017 at 5:53 PM, Sigert GOEMINNE (sigert.goemi...@nuagenetworks.net) wrote: Hi all, We have a new PR that fixes this issue: https://github.com/apache/cloudstack/pull/1952 Kind regards, *Sigert Goeminne* Software Development Engineer *nuage*networks.net Copernicuslaan 50 2018 Antwerp Belgium On Fri, Feb 17, 2017 at 8:55 AM, Kris Sterckx < kris.ster...@nuagenetworks.net> wrote: Thanks Mike Investigating. Kris On 17 February 2017 at 08:18, Tutkowski, Mike <mike.tutkow...@netapp.com> wrote: I added a comment on the code of the relevant PR, but the PR is in the Merged state, so I don't know if people receive e-mail notifications then. On Feb 17, 2017, at 12:16 AM, Wei ZHOU <ustcweiz...@gmail.com> wrote: Maybe we need ask Nuage why the lines are added. 2017-02-17 7:54 GMT+01:00 Tutkowski, Mike <mike.tutkow...@netapp.com>: Hopefully we can now find someone with experience in CloudStack's networking code to tell us if that fix is OK or if that was just a Band-Aid and we should do something more thorough to correct the issue. On Feb 16, 2017, at 11:48 PM, Rajani Karuturi <raj...@apache.org> wrote: Thanks for digging it Mike. ~ Rajani http://cloudplatform.accelerite.com/ On February 17, 2017 at 12:18 AM, Tutkowski, Mike (mike.tutkow...@netapp.com) wrote: Hi, I opened a blocker for 4.10 regarding this issue: https://issues.apache.org/jira/browse/CLOUDSTACK-9790 Thanks, Mike On 2/16/17, 8:35 AM, "Tutkowski, Mike" <mike.tutkow...@netapp.com> wrote: I believe the issue is here: https://github.com/apache/cloudstack/pull/1579 In ConfigurationManagerImpl.java, it appears the lines that led to NPEs being thrown were added on lines 2924 – 2926: https://github.com/apache/cloudstack/pull/1579/files On 2/16/17, 2:42 AM, "Wido den Hollander" <w...@widodh.nl> wrote: Op 16 februari 2017 om 6:21 schreef Rajani Karuturi <raj...@apache.org>: unfortunately, running one set of tests itself is very time consuming(multiplied by hypervisors, network modes etc. its impossible to run all) If I remember correctly, wido tested it with PR 1700 (IPV6 in basic networking) I highly doubt it's PR 1700 which is causing this. The PR I have open to fix a issue ONLY applies if IPv6 has been set. PR 1700 only does something when you have set a IPv6 subnet in the 'vlan' table: https://github.com/apache/cloudstack/commit/ c0e7766713b2631a167c2ceea7d42b574a5cd1b9#diff-f90fdac6810fd89f89e827309a41d180R231 So I don't think it's caused by this since you NIC table will not be filled with IPv6 addresses afterwards. Wido Can you try a commit before and a commit after that PR? Thanks, ~ Rajani http://cloudplatform.accelerite.com/ On February 16, 2017 at 1:02 AM, Tutkowski, Mike (mike.tutkow...@netapp.com) wrote: Thanks for noting that PR, Rene. I tried building a Basic Zone making use of code from that PR, but – unfortunately – I still get an exception (below). On a related note, does this mean we don’t run any integration tests that build a Basic Zone before we OK a PR to be checked in? ERROR [c.c.a.ApiServer] (qtp555984412-267:ctx-a904cbd0 ctx-062a000a) (logid:30f5a3ec) unhandled exception executing api command: [Ljava.lang.String;@4732a98c java.lang.NullPointerException at com.cloud.utils.net.NetUtils.getCidrNetmask(NetUtils.java:956) at com.cloud.configuration.ConfigurationManagerImpl.validateIpRange( ConfigurationManagerImpl.java:2924) at com.cloud.configuration.ConfigurationManagerImpl. createVlanAndPublicIpRange(ConfigurationManagerImpl.java:2822) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.aop.support.AopUtils. invokeJoinpointUsingReflection (AopUtils.java:333) at org.springframework.aop.framework.ReflectiveMethodInvocation. invokeJoinpoint(ReflectiveMethodInvocation.java:190) at org.springframework.aop.framework.ReflectiveMethodInvocation. proceed( ReflectiveMethodInvocation.java:157) at org.apache.cloudstack.network.contrail.management. EventUtils$EventInterceptor.invoke(EventUtils.java:107) at org.springframework.aop.framework.ReflectiveMethodInvocation. proceed( ReflectiveMethodInvocation.java:168) at com.cloud.event.ActionEventInterceptor.invoke( ActionEventInterceptor.java:51) at org.springframework.aop.framework.ReflectiveMethodInvocation. proceed( ReflectiveMethodInvocation.java:168) at org.springframework.aop.interceptor.ExposeInvocationInterceptor. invoke( ExposeInvocationInterceptor.java:92) at org.springframework.aop.framework.ReflectiveMethodInvocation. proceed( ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy. invoke(JdkDynamicAopProxy.java:213) at com.sun.proxy.$Proxy126.createVlanAndPublicIpRange(Unknown Source) at org.apache.cloudstack.api.command.admin.vlan. CreateVlanIpRangeCmd.execute(CreateVlanIpRangeCmd.java:219) at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:150) at com.cloud.api.ApiServer.queueCommand(ApiServer.java:709) at com.cloud.api.ApiServer.handleRequest(ApiServer.java:533) at com.cloud.api.ApiServlet.processRequestInContext( ApiServlet.java:299) at com.cloud.api.ApiServlet$1.run(ApiServlet.java:129) 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.ApiServlet.processRequest(ApiServlet.java:126) at com.cloud.api.ApiServlet.doGet(ApiServlet.java:88) at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle( ServletHolder.java:812) at org.eclipse.jetty.servlet.ServletHandler$CachedChain. doFilter(ServletHandler.java:1669) at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter( WebSocketUpgradeFilter.java:189) at org.eclipse.jetty.servlet.ServletHandler$CachedChain. doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle( ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle( ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle( SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler. doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler. doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope( ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler. doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler. doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle( ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle( ContextHandlerCollection.java:215) at org.eclipse.jetty.server.handler.HandlerCollection. handle(HandlerCollection.java:110) at org.eclipse.jetty.server.handler.HandlerWrapper.handle( HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:499) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) at org.eclipse.jetty.server.HttpConnection.onFillable( HttpConnection.java:258) at org.eclipse.jetty.io.AbstractConnection$2.run( AbstractConnection.java:544) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob( QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run( QueuedThreadPool.java:555) at java.lang.Thread.run(Thread.java:745) On 2/15/17, 12:52 AM, "Tutkowski, Mike" <mike.tutkow...@netapp.com> wrote: Thanks for pointing this out. I can incorporate those changes in the morning and see if it does the trick. On Feb 15, 2017, at 12:50 AM, Rene Moser <m...@renemoser.net> wrote: Probably related to https://github.com/apache/cloudstack/pull/1927 On 02/14/2017 10:44 PM, Tutkowski, Mike wrote: Hi, I’m getting a NullPointerException when trying to create a zone using master. Below is the relevant code in ConfigurationManagerImpl. In the else block, network.getCidr() returns null and NetUtil.getCidrNetmask then throws a NullPointerException. I noticed that network.getGateway() also returns null (which seems odd). Thoughts on this? Thanks! Mike public Pair<Boolean, Pair<String, String>> validateIpRange(final String startIP, final String endIP, final String newVlanGateway, final String newVlanNetmask, final List<VlanVO> vlans, final boolean ipv4, final boolean ipv6, String ip6Gateway, String ip6Cidr, final String startIPv6, final String endIPv6, final Network network) { String vlanGateway = null; String vlanNetmask = null; boolean sameSubnet = false; if (CollectionUtils.isNotEmpty(vlans)) { for (final VlanVO vlan : vlans) { vlanGateway = vlan.getVlanGateway(); vlanNetmask = vlan.getVlanNetmask(); sameSubnet = hasSameSubnet(ipv4, vlanGateway, vlanNetmask, newVlanGateway, newVlanNetmask, startIP, endIP, ipv6, ip6Gateway, ip6Cidr, startIPv6, endIPv6, network); if (sameSubnet) break; } } else { vlanGateway = network.getGateway(); vlanNetmask = NetUtils.getCidrNetmask(network.getCidr());