[
https://issues.apache.org/jira/browse/JCLOUDS-1097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ignasi Barrera updated JCLOUDS-1097:
------------------------------------
Labels: azurecompute (was: )
> NullPointerException in azurecompute provisioning, when logging request
> failure
> -------------------------------------------------------------------------------
>
> Key: JCLOUDS-1097
> URL: https://issues.apache.org/jira/browse/JCLOUDS-1097
> Project: jclouds
> Issue Type: Bug
> Components: jclouds-labs
> Affects Versions: 1.9.2
> Reporter: Aled Sage
> Labels: azurecompute
>
> When provisioning a VM in azure, using the jclouds-labs azurecompute 1.9.2
> release, I hit the NullPointerException shown below. The jclouds
> HttpResponseException marks {{getResponse}} as {{@Nullable}}, so we should
> guard against null when doing the logging in azurecompute.
> {noformat}
> 1) ExecutionException on brookly-o4gv3w-amp-auto-mgid-riak-xaoo-e7e:
> 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:123)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.NullPointerException
> at
> org.jclouds.azurecompute.util.ConflictManagementPredicate.apply(ConflictManagementPredicate.java:157)
> at
> org.jclouds.azurecompute.compute.AzureComputeServiceAdapter.createNodeWithGroupEncodedIntoName(AzureComputeServiceAdapter.java:147)
> at
> org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.createNodeWithGroupEncodedIntoName(AdaptingComputeServiceStrategies.java:195)
> at
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:79)
> at
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:63)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> at java.lang.Thread.getStackTrace(Thread.java:1589)
> at
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.createNodeInGroupWithNameAndTemplate(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:167)
> at
> org.jclouds.azurecompute.compute.strategy.GetOrCreateStorageServiceAndVirtualNetworkThenCreateNodes.createNodeInGroupWithNameAndTemplate(GetOrCreateStorageServiceAndVirtualNetworkThenCreateNodes.java:89)
> at
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:122)
> at
> org.jclouds.azurecompute.compute.strategy.GetOrCreateStorageServiceAndVirtualNetworkThenCreateNodes.execute(GetOrCreateStorageServiceAndVirtualNetworkThenCreateNodes.java:122)
> at
> org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:210)
> at
> org.apache.brooklyn.location.jclouds.JcloudsLocation.obtainOnce(JcloudsLocation.java:723)
> at
> org.apache.brooklyn.location.jclouds.JcloudsLocation.obtain(JcloudsLocation.java:613)
> at
> org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$ObtainLocationTask.call(MachineLifecycleEffectorTasks.java:406)
> at
> org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$ObtainLocationTask.call(MachineLifecycleEffectorTasks.java:396)
> at
> org.apache.brooklyn.util.core.task.Tasks.withBlockingDetails(Tasks.java:98)
> at
> org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$ProvisionMachineTask.call(MachineLifecycleEffectorTasks.java:380)
> at
> org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$ProvisionMachineTask.call(MachineLifecycleEffectorTasks.java:364)
> at
> org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:359)
> at
> org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:518)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> ... 3 more
> {noformat}
> FYI the request that seemed to fail was {{POST
> https://management.core.windows.net/00000000-0000-0000-0000-000000000000/services/hostedservices/brookly-o4gv3w-amp-auto-mgid-riak-xaoo-e7e/deployments
> HTTP/1.1}}. It then logged {{Command not considered safe to retry because
> request method is POST}}. This request had a very large number (maybe 2000?)
> of ports defined in {{externalEndpoints}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)