You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Christopher Dancy (JIRA)" <ji...@apache.org> on 2014/06/20 00:05:24 UTC

[jira] [Created] (JCLOUDS-607) ComputeService.createNodesInGroup throws NPE on FloatingAPI.create()

Christopher Dancy created JCLOUDS-607:
-----------------------------------------

             Summary: ComputeService.createNodesInGroup throws NPE on FloatingAPI.create()
                 Key: JCLOUDS-607
                 URL: https://issues.apache.org/jira/browse/JCLOUDS-607
             Project: jclouds
          Issue Type: Bug
          Components: jclouds-compute
    Affects Versions: 1.7.3
         Environment: OpenStack/Rackspace
            Reporter: Christopher Dancy


When calling 'ComputeService.createNodesInGroup' an NPE is thrown on the 'FloatingAPI.create()' call here:
https://github.com/jclouds/jclouds/blob/4c74b497547e42b8bdc94dbae3d4cd94ff3945d6/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/functions/AllocateAndAddFloatingIpToNode.java
Code snippet here:
NovaTemplateOptions options = NovaTemplateOptions.Builder.
autoAssignFloatingIp(true).
blockUntilRunning(true).
securityGroupNames(securityGroups);
Template template = computeServiceContext.getComputeService().templateBuilder().
imageId(imageID).
hardwareId(hardwareID).
options(options).
build();
Set<NodeMetadata> groupNodes = (Set<NodeMetadata>)computeServiceContext.getComputeService().createNodesInGroup(groupName, count, template);
There does not seem to be a way, at least that I'm aware of, to pass in the floating-ip-pool-name for the 'createNodesInGroup' call. I would assume that an option inside TemplateOptions, something like 'TemplateOptions.autoAssignFloatingIpPoolName(String)', would be available but I can't find anything. I've posted the stacktrace below of me attempting to create 2 nodes.
Exception in thread "main" org.jclouds.compute.RunNodesException: error running 2 nodes group(dancc-testing) location(RegionOne) image(f436ed68-722d-4918-bb34-5c0e5e7523b8) size(3) options(
{securityGroupNames=[test_allow_all], configDrive=false}
)
Execution failures:
1) ExecutionException on dancc-testing-305:
java.util.concurrent.ExecutionException: java.lang.NullPointerException
at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
at org.jclouds.concurrent.FutureIterables$1.run(FutureIterables.java:125)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
at org.jclouds.openstack.nova.v2_0.compute.functions.AllocateAndAddFloatingIpToNode.apply(AllocateAndAddFloatingIpToNode.java:98)
at org.jclouds.openstack.nova.v2_0.compute.functions.AllocateAndAddFloatingIpToNode.apply(AllocateAndAddFloatingIpToNode.java:1)
at com.google.common.util.concurrent.Futures$1.apply(Futures.java:711)
at com.google.common.util.concurrent.Futures$ChainingListenableFuture.run(Futures.java:849)
... 3 more
2) ExecutionException on dancc-testing-94b:
java.util.concurrent.ExecutionException: java.lang.NullPointerException
at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
at org.jclouds.concurrent.FutureIterables$1.run(FutureIterables.java:125)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
at org.jclouds.openstack.nova.v2_0.compute.functions.AllocateAndAddFloatingIpToNode.apply(AllocateAndAddFloatingIpToNode.java:98)
at org.jclouds.openstack.nova.v2_0.compute.functions.AllocateAndAddFloatingIpToNode.apply(AllocateAndAddFloatingIpToNode.java:1)
at com.google.common.util.concurrent.Futures$1.apply(Futures.java:711)
at com.google.common.util.concurrent.Futures$ChainingListenableFuture.run(Futures.java:849)
... 3 more
2 error[s]
Node failures:
0 error[s]
at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:227)
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 com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37)
at com.sun.proxy.$Proxy58.createNodesInGroup(Unknown Source)
at com.pega.vm.client.VMAdministratorImpl.provisionVirtualMachines(VMAdministratorImpl.java:196)
at com.pega.vm.client.Testing.main(Testing.java:29)



--
This message was sent by Atlassian JIRA
(v6.2#6252)