[YANGTOOLS-448] Yangtools serialization error Created: 15/Apr/15  Updated: 10/Apr/22  Resolved: 16/Apr/15

Status: Resolved
Project: yangtools
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Ed Warnicke Assignee: Jan Hajnar
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issue Links:
Duplicate
is duplicated by YANGTOOLS-449 Dangling name exception when getting ... Resolved
External issue ID: 2999

 Description   

GET http://localhost:8080/restconf/operational/network-topology:network-topology/

is returning this exception

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Error 500 Server Error</title>
</head>
<body>
<h2>HTTP ERROR 500</h2>
<p>Problem accessing /restconf/operational/network-topology:network-topology/. Reason:

<pre> Server Error</pre>
</p>
<h3>Caused by:</h3>
<pre>java.lang.IllegalStateException
at com.google.gson.stream.JsonWriter.name(JsonWriter.java:390)
at org.opendaylight.yangtools.yang.data.codec.gson.JSONStreamWriterContext.writeChildJsonIdentifier(JSONStreamWriterContext.java:72)
at org.opendaylight.yangtools.yang.data.codec.gson.JSONNormalizedNodeStreamWriter.leafNode(JSONNormalizedNodeStreamWriter.java:192)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessAsSimpleNode(NormalizedNodeWriter.java:152)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:108)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:219)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter$OrderedNormalizedNodeWriter.writeMapEntryNode(NormalizedNodeWriter.java:274)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:204)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:234)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter$OrderedNormalizedNodeWriter.writeMapEntryNode(NormalizedNodeWriter.java:274)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:204)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:234)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.writeChildren(NormalizedNodeWriter.java:173)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessedAsCompositeNode(NormalizedNodeWriter.java:201)
at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:104)
at org.opendaylight.controller.sal.rest.impl.NormalizedNodeJsonBodyWriter.writeNormalizedNode(NormalizedNodeJsonBodyWriter.java:108)
at org.opendaylight.controller.sal.rest.impl.NormalizedNodeJsonBodyWriter.writeTo(NormalizedNodeJsonBodyWriter.java:75)
at org.opendaylight.controller.sal.rest.impl.NormalizedNodeJsonBodyWriter.writeTo(NormalizedNodeJsonBodyWriter.java:45)
at com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:306)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1479)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1391)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1381)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:716)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1496)
at org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:247)
at org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:210)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1467)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:69)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:240)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:77)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:370)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:745)
</pre>
<hr />
<i>
<small>Powered by Jetty://</small>
</i>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
</body>
</html>



 Comments   
Comment by Ed Warnicke [ 15/Apr/15 ]

This is the part of the schema that its barfing on:

https://github.com/opendaylight/ovsdb/blob/master/southbound/southbound-api/src/main/yang/ovsdb.yang#L252

Comment by Ed Warnicke [ 15/Apr/15 ]

This is what is supposed to be returned (in xml, as it works and JSON is broken):

<network-topology
xmlns="urn:TBD:params:xml:ns:yang:network-topology">
<topology>
<topology-id>ovsdb:1</topology-id>
<node>
<node-id>ovsdb://127.0.0.1:16640</node-id>
<managed-node-entry
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<bridge-ref
xmlns:a="urn:TBD:params:xml:ns:yang:network-topology">/a:network-topology/a:topology[a:topology-id='ovsdb:1']/a:node[a:node-id='ovsdb://127.0.0.1:16640/bridge/br-int']
</bridge-ref>
</managed-node-entry>
<managed-node-entry
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<bridge-ref
xmlns:a="urn:TBD:params:xml:ns:yang:network-topology">/a:network-topology/a:topology[a:topology-id='ovsdb:1']/a:node[a:node-id='ovsdb://127.0.0.1:16640/bridge/br01']
</bridge-ref>
</managed-node-entry>
<ovs-version
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">2.0.2
</ovs-version>
<openvswitch-external-ids
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<external-id-key>system-id</external-id-key>
<external-id-value>2f012c28-8a26-4a29-9f25-249a737a352a</external-id-value>
</openvswitch-external-ids>
<connection-info
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<local-ip>127.0.0.1</local-ip>
<remote-port>16640</remote-port>
<remote-ip>127.0.0.1</remote-ip>
<local-port>50034</local-port>
</connection-info>
</node>
<node>
<node-id>ovsdb://127.0.0.1:16640/bridge/br-int</node-id>
<termination-point>
<tp-id>br-int</tp-id>
<port-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">d55aaad1-bda6-4b91-9d07-feb171bc0acd
</port-uuid>
<interface-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:interface-type-internal
</interface-type>
<ofport
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">65534
</ofport>
<interface-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">4ab57ccd-fde8-44e8-aac9-4b2f4373a080
</interface-uuid>
<name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">br-int
</name>
</termination-point>
<termination-point>
<tp-id>ofoverlay-tunnel-br-int</tp-id>
<port-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">7f738615-3257-4d22-a97a-6e61b1b86b6b
</port-uuid>
<options
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<option>remote-ip</option>
<value>flow</value>
</options>
<interface-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:interface-type-vxlan
</interface-type>
<interface-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">98ff14cf-67d9-4627-9cd2-a3c7d3037588
</interface-uuid>
<name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">ofoverlay-tunnel-br-int
</name>
</termination-point>
<controller-entry
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<target>tcp:127.0.0.1:6653</target>
<controller-uuid>376363d7-94da-4edc-831b-79d3cc187e5b</controller-uuid>
</controller-entry>
<bridge-name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">br-int
</bridge-name>
<datapath-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:datapath-type-system
</datapath-type>
<datapath-id
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">00:00:06:ae:88:b4:9b:4d
</datapath-id>
<managed-by
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:a="urn:TBD:params:xml:ns:yang:network-topology">/a:network-topology/a:topology[a:topology-id='ovsdb:1']/a:node[a:node-id='ovsdb://127.0.0.1:16640']
</managed-by>
<bridge-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">b488ae07-a35e-4d9b-8838-3190cc56815f
</bridge-uuid>
</node>
<node>
<node-id>ovsdb://127.0.0.1:16640/bridge/br01</node-id>
<termination-point>
<tp-id>ofoverlay-tunnel-br01</tp-id>
<port-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">403c0b72-91b3-4b70-8ea7-a58fc8deba78
</port-uuid>
<options
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<option>remote-ip</option>
<value>flow</value>
</options>
<interface-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:interface-type-vxlan
</interface-type>
<interface-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">78cc31a3-f33c-4efd-9d2d-44876c5bc494
</interface-uuid>
<name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">ofoverlay-tunnel-br01
</name>
</termination-point>
<termination-point>
<tp-id>br01</tp-id>
<port-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">917c9b8d-1b1f-4f64-bde4-b302ea20bf09
</port-uuid>
<interface-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:interface-type-internal
</interface-type>
<ofport
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">65534
</ofport>
<interface-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">9583cb54-ff8b-40de-b23b-114110d88c46
</interface-uuid>
<name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">br01
</name>
</termination-point>
<controller-entry
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">
<target>tcp:127.0.0.1:6653</target>
<controller-uuid>164f875c-6369-4304-911a-20863dba580a</controller-uuid>
</controller-entry>
<bridge-name
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">br01
</bridge-name>
<datapath-type
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:x="urn:opendaylight:params:xml:ns:yang:ovsdb">x:datapath-type-system
</datapath-type>
<datapath-id
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">00:00:96:13:26:c1:40:4b
</datapath-id>
<managed-by
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb"
xmlns:a="urn:TBD:params:xml:ns:yang:network-topology">/a:network-topology/a:topology[a:topology-id='ovsdb:1']/a:node[a:node-id='ovsdb://127.0.0.1:16640']
</managed-by>
<bridge-uuid
xmlns="urn:opendaylight:params:xml:ns:yang:ovsdb">c1261396-5333-4b40-af03-b937baf72d7c
</bridge-uuid>
</node>
</topology>
</network-topology>

Comment by Tony Tkacik [ 16/Apr/15 ]

remote: https://git.opendaylight.org/gerrit/18409

Generated at Wed Feb 07 20:53:16 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.