You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Josef Cacek (JIRA)" <ji...@apache.org> on 2015/12/02 16:27:10 UTC
[jira] [Created] (JCLOUDS-1044) NPE in Docker NetworkSettings.Ports
- null value in the map
Josef Cacek created JCLOUDS-1044:
------------------------------------
Summary: NPE in Docker NetworkSettings.Ports - null value in the map
Key: JCLOUDS-1044
URL: https://issues.apache.org/jira/browse/JCLOUDS-1044
Project: jclouds
Issue Type: Bug
Components: jclouds-labs
Affects Versions: 1.9.1, 2.0.0
Environment: Docker version: 1.9.1
Reporter: Josef Cacek
Priority: Critical
Docker daemon sometime returns {{null}} value in "NetworkSettings.Ports" map when inspecting container. Then the JClouds docker provider throws NPE.
Sample:
{code}
"NetworkSettings": {
"Bridge": "",
"EndpointID": "9cf886420f3fe26d2bd71b3145540d16aa18195a13bb754f1d69cb5a9a2148a7",
"Gateway": "172.17.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"HairpinMode": false,
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:11:00:02",
"Ports": {
"8080/tcp": null
},
"SandboxID": "cfcd273103426e2d349a9d3a20e723002e3e29d66642f4f7f06f3d00f80ef06c",
"SandboxKey": "/var/run/docker/netns/cfcd27310342",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null
},
{code}
And stacktrace:
{code}
21:50:57.824 [main] ERROR org.jclouds.http.functions.ParseJson - Error parsing input: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was NULL at line 1 column 3791 path $.NetworkSettings.Ports.
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was NULL at line 1 column 3791 path $.NetworkSettings.Ports.
at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:190) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:272) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:184) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at com.google.gson.Gson.fromJson(Gson.java:810) ~[gson-2.3.1.jar:na]
at com.google.gson.Gson.fromJson(Gson.java:775) ~[gson-2.3.1.jar:na]
at com.google.gson.Gson.fromJson(Gson.java:724) ~[gson-2.3.1.jar:na]
at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:42) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:83) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:77) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:62) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:42) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87) [guava-18.0.jar:na]
at com.sun.proxy.$Proxy77.inspectContainer(Unknown Source) [na:na]
at org.jclouds.docker.compute.strategy.DockerComputeServiceAdapter.listNodes(DockerComputeServiceAdapter.java:214) [docker-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.listDetailsOnNodesMatching(AdaptingComputeServiceStrategies.java:122) [jclouds-compute-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.listNodes(AdaptingComputeServiceStrategies.java:112) [jclouds-compute-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.getNextNames(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:192) [jclouds-compute-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:121) [jclouds-compute-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:210) [jclouds-compute-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
<cut>
Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was NULL at line 1 column 3791 path $.NetworkSettings.Ports.
at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:350) ~[gson-2.3.1.jar:na]
at org.jclouds.json.internal.NullFilteringTypeAdapterFactories$IterableTypeAdapter.readAndBuild(NullFilteringTypeAdapterFactories.java:88) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.NullFilteringTypeAdapterFactories$IterableTypeAdapter.read(NullFilteringTypeAdapterFactories.java:82) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.NullFilteringTypeAdapterFactories$IterableTypeAdapter.read(NullFilteringTypeAdapterFactories.java:61) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.NullFilteringTypeAdapterFactories$MapTypeAdapter.read(NullFilteringTypeAdapterFactories.java:311) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.NullFilteringTypeAdapterFactories$MapTypeAdapter.read(NullFilteringTypeAdapterFactories.java:281) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:272) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:184) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
... 52 common frames omitted
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)